add: fill_pci_structure(fpd->info);
context: static long get_nth_pci_info(long index, pci_info *copyto){	/* We copy the index and then decrement it.	 * We also set the start found_pci_device pointer to	 * the first device found and inserted.	 * XXX - see discussion below.	 */	long iter = index;	struct found_pci_device *fpd = pci_dev_list.prev;	/* iterate through the list until we have iter == 0	 * NB we go in "reverse" as the devices are inserted into the	 * list at the start, so going "forward" would give us the last	 * device first.	 * XXX - do we want to reverse this decision and go "forwards"?	 *       this should reduce the number of tries we make to find	 *       a "device" as the system devices are the first ones found	 *       and therefore the last ones to be returned.	 * XXX - if we do decide to reverse the order we need to be very	 *       careful about which function # gets found first and returned.	 */	while (iter-- > 0 && fpd && fpd != &pci_dev_list)		fpd = fpd->prev;	/* 2 cases we bail here.	 * 1) we don't have enough devices to fulfill the request 	 *    e.g. user asked for dev #31 but we only have 30	 * 2) The found_device_structure has a NULL pointer for	 *    info, which would cause a segfault when we try to memcpy!	 */	if (iter > 0 || !fpd->info)		return B_DEV_ID_ERROR;		memcpy(copyto, fpd->info, sizeof(pci_info));	return 0;}