Date: Wed, 31 Jul 2013 07:50:44 GMT From: bguan@FreeBSD.org To: svn-soc-all@FreeBSD.org Subject: socsvn commit: r255382 - soc2013/bguan/head/sys/dev/xen/usbfront Message-ID: <201307310750.r6V7oiua030592@socsvn.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: bguan Date: Wed Jul 31 07:50:44 2013 New Revision: 255382 URL: http://svnweb.FreeBSD.org/socsvn/?view=rev&rev=255382 Log: initialization for xen usb root hub Modified: soc2013/bguan/head/sys/dev/xen/usbfront/xenhci.h Modified: soc2013/bguan/head/sys/dev/xen/usbfront/xenhci.h ============================================================================== --- soc2013/bguan/head/sys/dev/xen/usbfront/xenhci.h Wed Jul 31 07:50:32 2013 (r255381) +++ soc2013/bguan/head/sys/dev/xen/usbfront/xenhci.h Wed Jul 31 07:50:44 2013 (r255382) @@ -82,6 +82,31 @@ enum usb_dev_speed speed; }; +/* + * xenhci root HUB support +*/ +struct xenhci_config_desc { + struct usb_config_descriptor confd; + struct usb_interface_descriptor ifcd; + struct usb_endpoint_descriptor endpd; + //struct usb_endpoint_ss_comp_descriptor endpcd; +} __packed; + +/* +struct xhci_bos_desc { + struct usb_bos_descriptor bosd; + struct usb_devcap_usb2ext_descriptor usb2extd; + struct usb_devcap_ss_descriptor usbdcd; + struct usb_devcap_container_id_descriptor cidd; +} __packed;*/ + +union xenhci_hub_desc { + struct usb_status stat; + struct usb_port_status ps; + //struct usb_hub_ss_descriptor hubd; + uint8_t temp[128]; +}; + /* The "hardware" in Xen host controller is the shared ring to the backend driver and the data you can send and receive across it @@ -99,16 +124,30 @@ //}; struct xenhci_softc { - //struct xenhci_hw_softc sc_hw; + //struct xenhci_hw_softc sc_hw; //need it in xen? /* base device */ struct usb_bus sc_bus; /* configure message */ struct usb_bus_msg sc_config_msg[2]; - struct usb_callout sc_callout; + union xenhci_hub_desc sc_hub_desc; struct usb_device *sc_devices[XENHCI_MAX_DEVICES]; + /* number of XHCI device slots */ + uint8_t sc_noslot; + /* number of ports on root HUB */ + uint8_t sc_noport; //<32 in xen + /* number of scratch pages */ + uint8_t sc_noscratch; + /* root HUB device configuration */ + uint8_t sc_conf; + uint8_t sc_hub_idata[2]; + + /* vendor string for root HUB */ + char sc_vendor[16]; + + /* Virtual Host Controller has 4 urb queues */ LIST_ENTRY(list_head) pending_submit_list; //?? LIST_ENTRY(list_head) pending_unlink_list; //??
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201307310750.r6V7oiua030592>