Hi, I''m trying to add USB support to xenolinux for DOM0. I''ve hacked arch/xeno/config.in to source Config.in files for usb and input, added pci_alloc_consistent and pci_free_consistent to arch/xeno/kernel/i386_ksyms.c, and enabled building PCI and USB in my config. I can build the kernel and modules fine, and it even boots. I''ve had to move the host controller (usb-uhci) from a module into the kernel since it missed the above PCI symbols. I can''t figure this out, since I can list the symbols in xenolinux.gz, System.map, and /proc/ksyms. However depmod only works with "-F System.map" even when running the xenolinux kernel. Seems there''s some discrepancy between the live and built system maps? Anyway dmesg looks good: usb.c: registered new driver usbdevfs usb.c: registered new driver hub host/usb-uhci.c: $Revision: 1.275 $ time 11:12:36 Mar 18 2004 host/usb-uhci.c: High bandwidth mode enabled host/usb-uhci.c: USB UHCI at I/O 0xd400, IRQ 11 host/usb-uhci.c: Detected 2 ports usb.c: new USB bus registered, assigned bus number 1 startup_physirq_event 11 startup_physirq_event 11: setup event handler hub.c: USB hub found hub.c: 2 ports detected host/usb-uhci.c: USB UHCI at I/O 0xd800, IRQ 11 host/usb-uhci.c: Detected 2 ports usb.c: new USB bus registered, assigned bus number 2 hub.c: USB hub found hub.c: 2 ports detected host/usb-uhci.c: v1.275:USB Universal Host Controller Interface driver Which is similar to regular Linux output, except it''s missing lines like this: PCI: Found IRQ 11 for device 00:07.2 PCI: Sharing IRQ 11 with 00:07.3 Unfortunately although modules input, hid, keybdev and mousedev are loaded on boot as usual, no external devices are visible in Xen. Insertion and removal are ignored, the key locks don''t light on my keyboard, and only the internal hubs are listed by lsusb and /proc/bus/usb/devices. Any thought please? Cheers, Sean. -- Sean Atkinson <sean@netproject.com> Netproject ------------------------------------------------------- This SF.Net email is sponsored by: IBM Linux Tutorials Free Linux tutorial presented by Daniel Robbins, President and CEO of GenToo technologies. Learn everything from fundamentals to system administration.http://ads.osdn.com/?ad_id=1470&alloc_id=3638&op=click _______________________________________________ Xen-devel mailing list Xen-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/xen-devel
> I''m trying to add USB support to xenolinux for DOM0.Wooaah! hold up there! This isn''t going to work right now because Xen 1.2 currently assumes it contains all the hardware drivers, and there''s currently no mechanism to (safely) export hardware to domains or plumb interrupts through. In your configuration, you''ve told dom0 to go behind Xen''s back and help itself to the hardware. Since dom0 is fully privileged, Xen isn''t stopping it, but it''s going to end in tears... In the new IO world (which is still under development) you''ll be able to plumb interrupts through to domains and selectively grant domains access to individual bits of hardware. This is still a few weeks away, though progress is fast. I''m afraid USB won''t work until such time. Cheers, Ian ------------------------------------------------------- This SF.Net email is sponsored by: IBM Linux Tutorials Free Linux tutorial presented by Daniel Robbins, President and CEO of GenToo technologies. Learn everything from fundamentals to system administration.http://ads.osdn.com/?ad_id=1470&alloc_id=3638&op=click _______________________________________________ Xen-devel mailing list Xen-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/xen-devel
what you are trying to do is not yet supported. at the moment you cannot run arbitrary device drivers in guest operating systems. we are in the middle of implementing this and the code in unstable does not work, in particular the interrupt ''virtualisation'' (hence the lack messages in your output). there is at least another big bug in the code in -unstable but even with a fix this does not yet work in my development tree. rolf On Thu, 2004-03-18 at 11:10, Sean Atkinson wrote:> Hi, > > I''m trying to add USB support to xenolinux for DOM0. > > I''ve hacked arch/xeno/config.in to source Config.in files for usb and > input, added pci_alloc_consistent and pci_free_consistent to > arch/xeno/kernel/i386_ksyms.c, and enabled building PCI and USB in my > config. I can build the kernel and modules fine, and it even boots. > > I''ve had to move the host controller (usb-uhci) from a module into the > kernel since it missed the above PCI symbols. I can''t figure this out, > since I can list the symbols in xenolinux.gz, System.map, and > /proc/ksyms. However depmod only works with "-F System.map" even when > running the xenolinux kernel. Seems there''s some discrepancy between > the live and built system maps? > > Anyway dmesg looks good: > > usb.c: registered new driver usbdevfs > usb.c: registered new driver hub > host/usb-uhci.c: $Revision: 1.275 $ time 11:12:36 Mar 18 2004 > host/usb-uhci.c: High bandwidth mode enabled > host/usb-uhci.c: USB UHCI at I/O 0xd400, IRQ 11 > host/usb-uhci.c: Detected 2 ports > usb.c: new USB bus registered, assigned bus number 1 > startup_physirq_event 11 > startup_physirq_event 11: setup event handler > hub.c: USB hub found > hub.c: 2 ports detected > host/usb-uhci.c: USB UHCI at I/O 0xd800, IRQ 11 > host/usb-uhci.c: Detected 2 ports > usb.c: new USB bus registered, assigned bus number 2 > hub.c: USB hub found > hub.c: 2 ports detected > host/usb-uhci.c: v1.275:USB Universal Host Controller Interface driver > > Which is similar to regular Linux output, except it''s missing lines like > this: > > PCI: Found IRQ 11 for device 00:07.2 > PCI: Sharing IRQ 11 with 00:07.3 > > Unfortunately although modules input, hid, keybdev and mousedev are > loaded on boot as usual, no external devices are visible in Xen. > Insertion and removal are ignored, the key locks don''t light on my > keyboard, and only the internal hubs are listed by lsusb and > /proc/bus/usb/devices. > > Any thought please? > > Cheers, > > Sean.------------------------------------------------------- This SF.Net email is sponsored by: IBM Linux Tutorials Free Linux tutorial presented by Daniel Robbins, President and CEO of GenToo technologies. Learn everything from fundamentals to system administration.http://ads.osdn.com/?ad_id=1470&alloc_id=3638&op=click _______________________________________________ Xen-devel mailing list Xen-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/xen-devel
Hi,> Wooaah! hold up there! > > This isn''t going to work right now because Xen 1.2 currently > assumes it contains all the hardware drivers, and there''s > currently no mechanism to (safely) export hardware to domains or > plumb interrupts through. > > In your configuration, you''ve told dom0 to go behind Xen''s back > and help itself to the hardware. Since dom0 is fully privileged, > Xen isn''t stopping it, but it''s going to end in tears... > > In the new IO world (which is still under development) you''ll be > able to plumb interrupts through to domains and selectively grant > domains access to individual bits of hardware. > > This is still a few weeks away, though progress is fast. > > I''m afraid USB won''t work until such time.OK, I thought I vaguely recalled some discussion of such problems and the brave new IO world as a solution. Just wanted to explore the potential, but I''ll wait for the new IO code until I hack any more. Thanks, Sean. -- Sean Atkinson <sean@netproject.com> Netproject ------------------------------------------------------- This SF.Net email is sponsored by: IBM Linux Tutorials Free Linux tutorial presented by Daniel Robbins, President and CEO of GenToo technologies. Learn everything from fundamentals to system administration.http://ads.osdn.com/?ad_id=1470&alloc_id=3638&op=click _______________________________________________ Xen-devel mailing list Xen-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/xen-devel