Re: How to Faking a PCI or USB device.
Pranay Kumar Srivastava pranay.shrivast...@hcl.com writes: maybe if you're lucky, QEMU can emulate that for you...e.g: network adapter... Well let's just say it emulates network adapter (PCI right?) so wouldn't a default driver exist for that? So I should just remove that driver and use my driver instead? well, you can always create your own completely new device in QEMU. It's not that hard. Just take one of the existing ones and modify it as you want. You'll find the device emulating drivers in qemu/hw/ I actually did this a few weeks ago. And I started out thinking like you. I had a new USB driver I wanted to test with a special device configuration variant, and I could not get hold of an actual device with such a configuration. But I did have some old and abandoned microcontroller project laying around. So I dug that out, including semi-working firmware source and old toolchain. Still took me several hours to just get the damn thing to run and enumerate as any USB device at all. And modifying the firmware, building and flashing it took forever. For each round. And I realized there would be many of them So I quickly gave up (there was a reason this project was abandoned :-), and gave QEMU (well, kvm-qemu really) a shot instead. Copying an existing usb device there and modifying the descriptors to suit my need took no time at all. Additional benefit of the QEMU route: If you are writing a driver and crash the host (not me, I never do anything wrong of course) , then you only crash a virtual machine. There is one drawback: QEMU device drivers are not modular, so you will have to restart your virtual test machine every time you modify the device. Still is a lot faster than flashing a microcontroller. Bjørn ___ Kernelnewbies mailing list Kernelnewbies@kernelnewbies.org http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies
Re: How to Faking a PCI or USB device.
Hi.. On Mon, Nov 26, 2012 at 5:27 PM, Pranay Kumar Srivastava pranay.shrivast...@hcl.com wrote: Is it possible to fake such a device that probably does nothing but I can say modify some parameters of the fake device? In short is it possible to devise a fake configuration address space of the fake device and try to use it (completely in memory device)?. If it can be done please give me some pointers. what kind of device? maybe if you're lucky, QEMU can emulate that for you...e.g: network adapter... -- regards, Mulyadi Santosa Freelance Linux trainer and consultant blog: the-hydra.blogspot.com training: mulyaditraining.blogspot.com ___ Kernelnewbies mailing list Kernelnewbies@kernelnewbies.org http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies
RE: How to Faking a PCI or USB device.
-Original Message- From: Mulyadi Santosa [mailto:mulyadi.sant...@gmail.com] Sent: Monday, November 26, 2012 4:07 PM To: Pranay Kumar Srivastava Cc: kernelnewbies@kernelnewbies.org Subject: Re: How to Faking a PCI or USB device. Hi.. On Mon, Nov 26, 2012 at 5:27 PM, Pranay Kumar Srivastava pranay.shrivast...@hcl.com wrote: Is it possible to fake such a device that probably does nothing but I can say modify some parameters of the fake device? In short is it possible to devise a fake configuration address space of the fake device and try to use it (completely in memory device)?. If it can be done please give me some pointers. what kind of device? Any kind. I was looking around to find simplest of USB and PCI devices. I Found one article by Greg http://www.linuxjournal.com/article/7353 written a long time back, so maybe something like this. If I can find some cheap hardware like it I would like to use it to decorate my desk for new year :P. But while I find a simple hardware what would I need to know to fake such a simple device? maybe if you're lucky, QEMU can emulate that for you...e.g: network adapter... Well let's just say it emulates network adapter (PCI right?) so wouldn't a default driver exist for that? So I should just remove that driver and use my driver instead? -- regards, Mulyadi Santosa Freelance Linux trainer and consultant blog: the-hydra.blogspot.com training: mulyaditraining.blogspot.com Thanks for the help I really appreciate it. ::DISCLAIMER:: The contents of this e-mail and any attachment(s) are confidential and intended for the named recipient(s) only. E-mail transmission is not guaranteed to be secure or error-free as information could be intercepted, corrupted, lost, destroyed, arrive late or incomplete, or may contain viruses in transmission. The e mail and its contents (with or without referred errors) shall therefore not attach any liability on the originator or HCL or its affiliates. Views or opinions, if any, presented in this email are solely those of the author and may not necessarily reflect the views or opinions of HCL or its affiliates. Any form of reproduction, dissemination, copying, disclosure, modification, distribution and / or publication of this message without the prior written consent of authorized representative of HCL is strictly prohibited. If you have received this email in error please delete it and notify the sender immediately. Before opening any email and/or attachments, please check them for viruses and other defects. ___ Kernelnewbies mailing list Kernelnewbies@kernelnewbies.org http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies