PERFORCE change 181637 for review

Hans Petter Selasky hselasky at FreeBSD.org
Sat Jul 31 12:17:06 UTC 2010


http://p4web.freebsd.org/@@181637?ac=10

Change 181637 by hselasky at hselasky_laptop001 on 2010/07/31 12:16:45

	
	USB controller (XHCI):
		- add more register definitions

Affected files ...

.. //depot/projects/usb/src/sys/dev/usb/controller/xhcireg.h#5 edit

Differences ...

==== //depot/projects/usb/src/sys/dev/usb/controller/xhcireg.h#5 (text+ko) ====

@@ -107,7 +107,7 @@
 #define	XHCI_DCBAAP_LO		0x30	/* XHCI dev context BA pointer */
 #define	XHCI_DCBAAP_HI		0x34	/* XHCI dev context BA pointer */
 #define	XHCI_CONFIG		0x38
-#define	XHCI_CONFIG_SLOTS_MASK	0x000000FF	/* RW - number of device slot enabled */
+#define	XHCI_CONFIG_SLOTS_MASK	0x000000FF	/* RW - number of device slots enabled */
 
 /* XHCI port status registers */
 #define	XHCI_PORTSC(n)		(0x3F0 + (0x10 * (n)))	/* XHCI port status */
@@ -175,13 +175,25 @@
 #define	XHCI_ERSTDP_LO_BUSY	0x00000008	/* RW - event handler busy */
 #define	XHCI_ERSTDP_HI(n)	(0x003C + (0x20 * (n))	/* XHCI event ring dequeue pointer */
 
-/* XHCI doorbell registers.  Offset given by XHCI_CAPLENGTH + XHCI_DBOFF registers */
+/* XHCI doorbell registers. Offset given by XHCI_CAPLENGTH + XHCI_DBOFF registers */
 #define	XHCI_DOORBELL		0x0000
 #define	XHCI_DB_TARGET_GET(x)	((x) & 0xFF)		/* RW - doorbell target */
 #define	XHCI_DB_TARGET_SET(x)	((x) & 0xFF)		/* RW - doorbell target */
 #define	XHCI_DB_SID_GET(x)	(((x) >> 16) & 0xFFFF)	/* RW - doorbell stream ID */
 #define	XHCI_DB_SID_SET(x)	(((x) & 0xFFFF) << 16)	/* RW - doorbell stream ID */
 
+/* XHCI interrupter registers. Offset given by XHCI_CAPLENGTH + XHCI_RTSOFF registers */
+#define	XHCI_IMAN(i)		(0x0020 + (0x20 * (i)))		/* RW - interrupt management */
+#define	XHCI_IMAN_IP_BIT	(1U << 0)	/* interrupt pending */
+#define	XHCI_IMAN_IE_BIT	(1U << 1)	/* interrupt enable */
+#define	XHCI_IMOD(i)		(0x0024	+ (0x20 * (i)))	/* RW - interrupt moderation */
+#define	XHCI_IMOD_DEFAULT	0x000001F4U	/* 8000 IRQ/second */
+#define	XHCI_ERSTSZ(i)		(0x0028	+ (0x20 * (i)))	/* RW - segment table size */
+#define	XHCI_ERSTBA_LO(i)	(0x0030	+ (0x20 * (i)))	/* RW - segment base address */
+#define	XHCI_ERSTBA_HI(i)	(0x0034	+ (0x20 * (i)))	/* RW - segment base address */
+#define	XHCI_ERDP_LO(i)		(0x0038	+ (0x20 * (i)))	/* RW - dequeue pointer */
+#define	XHCI_ERDP_HI(i)		(0x003C	+ (0x20 * (i)))	/* RW - dequeue pointer */
+
 /* XHCI register R/W wrappers */
 #define	XREAD1(sc, what, a) \
 	bus_space_read_1((sc)->sc_io_tag, (sc)->sc_io_hdl, \


More information about the p4-projects mailing list