aboutsummaryrefslogtreecommitdiffstats
path: root/arch/mips/include/asm/netlogic/xlp-hal
diff options
context:
space:
mode:
authorGanesan Ramalingam <ganesanr@broadcom.com>2013-08-21 10:02:41 -0400
committerRalf Baechle <ralf@linux-mips.org>2013-09-03 17:22:20 -0400
commit9eac3591e78bb1bf09991b791d6602032d9fd11d (patch)
tree5180ffcaa7350739d27b28c25362115b457d4a1c /arch/mips/include/asm/netlogic/xlp-hal
parente5be1fd007e4fcbab3dd6e2b0993a7ee305c6628 (diff)
MIPS: Netlogic: Add support for USB on XLP2xx
Add USB intialization code to handle the new XLP2XX USB 3.0 block. This adds xlp/usb-init-xlp2.c to initialize the XLP2XX USB glue-logic for XHCI and EHCI. Interrupt and IO offset code in xlp-hal/iomap.h and xlp/nlm_hal.c is also updated for the new USB block. Signed-off-by: Ganesan Ramalingam <ganesanr@broadcom.com> Signed-off-by: Jayachandran C <jchandra@broadcom.com> Cc: linux-mips@linux-mips.org Patchwork: https://patchwork.linux-mips.org/patch/5744/ Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Diffstat (limited to 'arch/mips/include/asm/netlogic/xlp-hal')
-rw-r--r--arch/mips/include/asm/netlogic/xlp-hal/iomap.h7
-rw-r--r--arch/mips/include/asm/netlogic/xlp-hal/xlp.h5
2 files changed, 12 insertions, 0 deletions
diff --git a/arch/mips/include/asm/netlogic/xlp-hal/iomap.h b/arch/mips/include/asm/netlogic/xlp-hal/iomap.h
index 61c84de0ed4f..55eee77adaca 100644
--- a/arch/mips/include/asm/netlogic/xlp-hal/iomap.h
+++ b/arch/mips/include/asm/netlogic/xlp-hal/iomap.h
@@ -72,6 +72,12 @@
72#define XLP_IO_USB_OHCI2_OFFSET(node) XLP_HDR_OFFSET(node, 0, 2, 4) 72#define XLP_IO_USB_OHCI2_OFFSET(node) XLP_HDR_OFFSET(node, 0, 2, 4)
73#define XLP_IO_USB_OHCI3_OFFSET(node) XLP_HDR_OFFSET(node, 0, 2, 5) 73#define XLP_IO_USB_OHCI3_OFFSET(node) XLP_HDR_OFFSET(node, 0, 2, 5)
74 74
75/* XLP2xx has an updated USB block */
76#define XLP2XX_IO_USB_OFFSET(node, i) XLP_HDR_OFFSET(node, 0, 4, i)
77#define XLP2XX_IO_USB_XHCI0_OFFSET(node) XLP_HDR_OFFSET(node, 0, 4, 1)
78#define XLP2XX_IO_USB_XHCI1_OFFSET(node) XLP_HDR_OFFSET(node, 0, 4, 2)
79#define XLP2XX_IO_USB_XHCI2_OFFSET(node) XLP_HDR_OFFSET(node, 0, 4, 3)
80
75#define XLP_IO_NAE_OFFSET(node) XLP_HDR_OFFSET(node, 0, 3, 0) 81#define XLP_IO_NAE_OFFSET(node) XLP_HDR_OFFSET(node, 0, 3, 0)
76#define XLP_IO_POE_OFFSET(node) XLP_HDR_OFFSET(node, 0, 3, 1) 82#define XLP_IO_POE_OFFSET(node) XLP_HDR_OFFSET(node, 0, 3, 1)
77 83
@@ -148,6 +154,7 @@
148#define PCI_DEVICE_ID_NLM_NOR 0x1015 154#define PCI_DEVICE_ID_NLM_NOR 0x1015
149#define PCI_DEVICE_ID_NLM_NAND 0x1016 155#define PCI_DEVICE_ID_NLM_NAND 0x1016
150#define PCI_DEVICE_ID_NLM_MMC 0x1018 156#define PCI_DEVICE_ID_NLM_MMC 0x1018
157#define PCI_DEVICE_ID_NLM_XHCI 0x101d
151 158
152#ifndef __ASSEMBLY__ 159#ifndef __ASSEMBLY__
153 160
diff --git a/arch/mips/include/asm/netlogic/xlp-hal/xlp.h b/arch/mips/include/asm/netlogic/xlp-hal/xlp.h
index 4950ea502398..17daffb280a3 100644
--- a/arch/mips/include/asm/netlogic/xlp-hal/xlp.h
+++ b/arch/mips/include/asm/netlogic/xlp-hal/xlp.h
@@ -41,12 +41,17 @@
41#define PIC_PCIE_LINK_1_IRQ 20 41#define PIC_PCIE_LINK_1_IRQ 20
42#define PIC_PCIE_LINK_2_IRQ 21 42#define PIC_PCIE_LINK_2_IRQ 21
43#define PIC_PCIE_LINK_3_IRQ 22 43#define PIC_PCIE_LINK_3_IRQ 22
44
44#define PIC_EHCI_0_IRQ 23 45#define PIC_EHCI_0_IRQ 23
45#define PIC_EHCI_1_IRQ 24 46#define PIC_EHCI_1_IRQ 24
46#define PIC_OHCI_0_IRQ 25 47#define PIC_OHCI_0_IRQ 25
47#define PIC_OHCI_1_IRQ 26 48#define PIC_OHCI_1_IRQ 26
48#define PIC_OHCI_2_IRQ 27 49#define PIC_OHCI_2_IRQ 27
49#define PIC_OHCI_3_IRQ 28 50#define PIC_OHCI_3_IRQ 28
51#define PIC_2XX_XHCI_0_IRQ 23
52#define PIC_2XX_XHCI_1_IRQ 24
53#define PIC_2XX_XHCI_2_IRQ 25
54
50#define PIC_MMC_IRQ 29 55#define PIC_MMC_IRQ 29
51#define PIC_I2C_0_IRQ 30 56#define PIC_I2C_0_IRQ 30
52#define PIC_I2C_1_IRQ 31 57#define PIC_I2C_1_IRQ 31