From mboxrd@z Thu Jan 1 00:00:00 1970 From: manohar.vanga@gmail.com (Manohar Vanga) Date: Wed, 4 May 2011 11:39:20 +0200 Subject: Faking PCI devices? Message-ID: To: kernelnewbies@lists.kernelnewbies.org List-Id: kernelnewbies.lists.kernelnewbies.org Hi, I have written a simulated driver for a PCI board and am looking for a clean way to use the driver. Currently, I am setting the PCI ids to PCI_ANY_ID and only allowing a single probe call to go through using a global variable (concurrency issues but I don't care for the simulation). static int n ... static int fake_board_probe(struct pci_dev *pdev, const struct pci_device_id *ent) { if (n == 1) return -1; n = 1; ... } static int fake_board_init(void) { n = 0; .... } I want to do a cleaner job of this and wanted to write a PCI bridge driver that actually registers the devices with the correct IDs that I need. This also gives me the advantage of being able to register multiple devices which is a useful for the simulation I am working on. Can anyone point me in the right direction for this? Most of the code (eg. struct pci_controller) seem to be architecture specific. The code is available for anyone interested at: https://github.com/mvanga/wbonesim Thanks and best regards. -- /manohar -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.kernelnewbies.org/pipermail/kernelnewbies/attachments/20110504/5597d168/attachment.html