aboutsummaryrefslogtreecommitdiffstats
path: root/arch/mips/include/asm/mach-bcm63xx/bcm63xx_regs.h
diff options
context:
space:
mode:
Diffstat (limited to 'arch/mips/include/asm/mach-bcm63xx/bcm63xx_regs.h')
-rw-r--r--arch/mips/include/asm/mach-bcm63xx/bcm63xx_regs.h168
1 files changed, 166 insertions, 2 deletions
diff --git a/arch/mips/include/asm/mach-bcm63xx/bcm63xx_regs.h b/arch/mips/include/asm/mach-bcm63xx/bcm63xx_regs.h
index 61f2a2a5099d..12963d05da86 100644
--- a/arch/mips/include/asm/mach-bcm63xx/bcm63xx_regs.h
+++ b/arch/mips/include/asm/mach-bcm63xx/bcm63xx_regs.h
@@ -161,6 +161,7 @@
161/* External Interrupt Configuration register */ 161/* External Interrupt Configuration register */
162#define PERF_EXTIRQ_CFG_REG_6328 0x18 162#define PERF_EXTIRQ_CFG_REG_6328 0x18
163#define PERF_EXTIRQ_CFG_REG_6338 0x14 163#define PERF_EXTIRQ_CFG_REG_6338 0x14
164#define PERF_EXTIRQ_CFG_REG_6345 0x14
164#define PERF_EXTIRQ_CFG_REG_6348 0x14 165#define PERF_EXTIRQ_CFG_REG_6348 0x14
165#define PERF_EXTIRQ_CFG_REG_6358 0x14 166#define PERF_EXTIRQ_CFG_REG_6358 0x14
166#define PERF_EXTIRQ_CFG_REG_6368 0x18 167#define PERF_EXTIRQ_CFG_REG_6368 0x18
@@ -543,6 +544,12 @@
543#define GPIO_MODE_6368_SPI_SSN5 (1 << 31) 544#define GPIO_MODE_6368_SPI_SSN5 (1 << 31)
544 545
545 546
547#define GPIO_PINMUX_OTHR_REG 0x24
548#define GPIO_PINMUX_OTHR_6328_USB_SHIFT 12
549#define GPIO_PINMUX_OTHR_6328_USB_MASK (3 << GPIO_PINMUX_OTHR_6328_USB_SHIFT)
550#define GPIO_PINMUX_OTHR_6328_USB_HOST (1 << GPIO_PINMUX_OTHR_6328_USB_SHIFT)
551#define GPIO_PINMUX_OTHR_6328_USB_DEV (2 << GPIO_PINMUX_OTHR_6328_USB_SHIFT)
552
546#define GPIO_BASEMODE_6368_REG 0x38 553#define GPIO_BASEMODE_6368_REG 0x38
547#define GPIO_BASEMODE_6368_UART2 0x1 554#define GPIO_BASEMODE_6368_UART2 0x1
548#define GPIO_BASEMODE_6368_GPIO 0x0 555#define GPIO_BASEMODE_6368_GPIO 0x0
@@ -670,6 +677,12 @@
670#define ENETDMA_BUFALLOC_FORCE_SHIFT 31 677#define ENETDMA_BUFALLOC_FORCE_SHIFT 31
671#define ENETDMA_BUFALLOC_FORCE_MASK (1 << ENETDMA_BUFALLOC_FORCE_SHIFT) 678#define ENETDMA_BUFALLOC_FORCE_MASK (1 << ENETDMA_BUFALLOC_FORCE_SHIFT)
672 679
680/* Global interrupt status */
681#define ENETDMA_GLB_IRQSTAT_REG (0x40)
682
683/* Global interrupt mask */
684#define ENETDMA_GLB_IRQMASK_REG (0x44)
685
673/* Channel Configuration register */ 686/* Channel Configuration register */
674#define ENETDMA_CHANCFG_REG(x) (0x100 + (x) * 0x10) 687#define ENETDMA_CHANCFG_REG(x) (0x100 + (x) * 0x10)
675#define ENETDMA_CHANCFG_EN_SHIFT 0 688#define ENETDMA_CHANCFG_EN_SHIFT 0
@@ -709,9 +722,11 @@
709/* Channel Configuration register */ 722/* Channel Configuration register */
710#define ENETDMAC_CHANCFG_REG(x) ((x) * 0x10) 723#define ENETDMAC_CHANCFG_REG(x) ((x) * 0x10)
711#define ENETDMAC_CHANCFG_EN_SHIFT 0 724#define ENETDMAC_CHANCFG_EN_SHIFT 0
712#define ENETDMAC_CHANCFG_EN_MASK (1 << ENETDMA_CHANCFG_EN_SHIFT) 725#define ENETDMAC_CHANCFG_EN_MASK (1 << ENETDMAC_CHANCFG_EN_SHIFT)
713#define ENETDMAC_CHANCFG_PKTHALT_SHIFT 1 726#define ENETDMAC_CHANCFG_PKTHALT_SHIFT 1
714#define ENETDMAC_CHANCFG_PKTHALT_MASK (1 << ENETDMA_CHANCFG_PKTHALT_SHIFT) 727#define ENETDMAC_CHANCFG_PKTHALT_MASK (1 << ENETDMAC_CHANCFG_PKTHALT_SHIFT)
728#define ENETDMAC_CHANCFG_BUFHALT_SHIFT 2
729#define ENETDMAC_CHANCFG_BUFHALT_MASK (1 << ENETDMAC_CHANCFG_BUFHALT_SHIFT)
715 730
716/* Interrupt Control/Status register */ 731/* Interrupt Control/Status register */
717#define ENETDMAC_IR_REG(x) (0x4 + (x) * 0x10) 732#define ENETDMAC_IR_REG(x) (0x4 + (x) * 0x10)
@@ -770,6 +785,8 @@
770#define USBH_PRIV_SWAP_6358_REG 0x0 785#define USBH_PRIV_SWAP_6358_REG 0x0
771#define USBH_PRIV_SWAP_6368_REG 0x1c 786#define USBH_PRIV_SWAP_6368_REG 0x1c
772 787
788#define USBH_PRIV_SWAP_USBD_SHIFT 6
789#define USBH_PRIV_SWAP_USBD_MASK (1 << USBH_PRIV_SWAP_USBD_SHIFT)
773#define USBH_PRIV_SWAP_EHCI_ENDN_SHIFT 4 790#define USBH_PRIV_SWAP_EHCI_ENDN_SHIFT 4
774#define USBH_PRIV_SWAP_EHCI_ENDN_MASK (1 << USBH_PRIV_SWAP_EHCI_ENDN_SHIFT) 791#define USBH_PRIV_SWAP_EHCI_ENDN_MASK (1 << USBH_PRIV_SWAP_EHCI_ENDN_SHIFT)
775#define USBH_PRIV_SWAP_EHCI_DATA_SHIFT 3 792#define USBH_PRIV_SWAP_EHCI_DATA_SHIFT 3
@@ -779,6 +796,12 @@
779#define USBH_PRIV_SWAP_OHCI_DATA_SHIFT 0 796#define USBH_PRIV_SWAP_OHCI_DATA_SHIFT 0
780#define USBH_PRIV_SWAP_OHCI_DATA_MASK (1 << USBH_PRIV_SWAP_OHCI_DATA_SHIFT) 797#define USBH_PRIV_SWAP_OHCI_DATA_MASK (1 << USBH_PRIV_SWAP_OHCI_DATA_SHIFT)
781 798
799#define USBH_PRIV_UTMI_CTL_6368_REG 0x10
800#define USBH_PRIV_UTMI_CTL_NODRIV_SHIFT 12
801#define USBH_PRIV_UTMI_CTL_NODRIV_MASK (0xf << USBH_PRIV_UTMI_CTL_NODRIV_SHIFT)
802#define USBH_PRIV_UTMI_CTL_HOSTB_SHIFT 0
803#define USBH_PRIV_UTMI_CTL_HOSTB_MASK (0xf << USBH_PRIV_UTMI_CTL_HOSTB_SHIFT)
804
782#define USBH_PRIV_TEST_6358_REG 0x24 805#define USBH_PRIV_TEST_6358_REG 0x24
783#define USBH_PRIV_TEST_6368_REG 0x14 806#define USBH_PRIV_TEST_6368_REG 0x14
784 807
@@ -787,6 +810,147 @@
787#define USBH_PRIV_SETUP_IOC_MASK (1 << USBH_PRIV_SETUP_IOC_SHIFT) 810#define USBH_PRIV_SETUP_IOC_MASK (1 << USBH_PRIV_SETUP_IOC_SHIFT)
788 811
789 812
813/*************************************************************************
814 * _REG relative to RSET_USBD
815 *************************************************************************/
816
817/* General control */
818#define USBD_CONTROL_REG 0x00
819#define USBD_CONTROL_TXZLENINS_SHIFT 14
820#define USBD_CONTROL_TXZLENINS_MASK (1 << USBD_CONTROL_TXZLENINS_SHIFT)
821#define USBD_CONTROL_AUTO_CSRS_SHIFT 13
822#define USBD_CONTROL_AUTO_CSRS_MASK (1 << USBD_CONTROL_AUTO_CSRS_SHIFT)
823#define USBD_CONTROL_RXZSCFG_SHIFT 12
824#define USBD_CONTROL_RXZSCFG_MASK (1 << USBD_CONTROL_RXZSCFG_SHIFT)
825#define USBD_CONTROL_INIT_SEL_SHIFT 8
826#define USBD_CONTROL_INIT_SEL_MASK (0xf << USBD_CONTROL_INIT_SEL_SHIFT)
827#define USBD_CONTROL_FIFO_RESET_SHIFT 6
828#define USBD_CONTROL_FIFO_RESET_MASK (3 << USBD_CONTROL_FIFO_RESET_SHIFT)
829#define USBD_CONTROL_SETUPERRLOCK_SHIFT 5
830#define USBD_CONTROL_SETUPERRLOCK_MASK (1 << USBD_CONTROL_SETUPERRLOCK_SHIFT)
831#define USBD_CONTROL_DONE_CSRS_SHIFT 0
832#define USBD_CONTROL_DONE_CSRS_MASK (1 << USBD_CONTROL_DONE_CSRS_SHIFT)
833
834/* Strap options */
835#define USBD_STRAPS_REG 0x04
836#define USBD_STRAPS_APP_SELF_PWR_SHIFT 10
837#define USBD_STRAPS_APP_SELF_PWR_MASK (1 << USBD_STRAPS_APP_SELF_PWR_SHIFT)
838#define USBD_STRAPS_APP_DISCON_SHIFT 9
839#define USBD_STRAPS_APP_DISCON_MASK (1 << USBD_STRAPS_APP_DISCON_SHIFT)
840#define USBD_STRAPS_APP_CSRPRGSUP_SHIFT 8
841#define USBD_STRAPS_APP_CSRPRGSUP_MASK (1 << USBD_STRAPS_APP_CSRPRGSUP_SHIFT)
842#define USBD_STRAPS_APP_RMTWKUP_SHIFT 6
843#define USBD_STRAPS_APP_RMTWKUP_MASK (1 << USBD_STRAPS_APP_RMTWKUP_SHIFT)
844#define USBD_STRAPS_APP_RAM_IF_SHIFT 7
845#define USBD_STRAPS_APP_RAM_IF_MASK (1 << USBD_STRAPS_APP_RAM_IF_SHIFT)
846#define USBD_STRAPS_APP_8BITPHY_SHIFT 2
847#define USBD_STRAPS_APP_8BITPHY_MASK (1 << USBD_STRAPS_APP_8BITPHY_SHIFT)
848#define USBD_STRAPS_SPEED_SHIFT 0
849#define USBD_STRAPS_SPEED_MASK (3 << USBD_STRAPS_SPEED_SHIFT)
850
851/* Stall control */
852#define USBD_STALL_REG 0x08
853#define USBD_STALL_UPDATE_SHIFT 7
854#define USBD_STALL_UPDATE_MASK (1 << USBD_STALL_UPDATE_SHIFT)
855#define USBD_STALL_ENABLE_SHIFT 6
856#define USBD_STALL_ENABLE_MASK (1 << USBD_STALL_ENABLE_SHIFT)
857#define USBD_STALL_EPNUM_SHIFT 0
858#define USBD_STALL_EPNUM_MASK (0xf << USBD_STALL_EPNUM_SHIFT)
859
860/* General status */
861#define USBD_STATUS_REG 0x0c
862#define USBD_STATUS_SOF_SHIFT 16
863#define USBD_STATUS_SOF_MASK (0x7ff << USBD_STATUS_SOF_SHIFT)
864#define USBD_STATUS_SPD_SHIFT 12
865#define USBD_STATUS_SPD_MASK (3 << USBD_STATUS_SPD_SHIFT)
866#define USBD_STATUS_ALTINTF_SHIFT 8
867#define USBD_STATUS_ALTINTF_MASK (0xf << USBD_STATUS_ALTINTF_SHIFT)
868#define USBD_STATUS_INTF_SHIFT 4
869#define USBD_STATUS_INTF_MASK (0xf << USBD_STATUS_INTF_SHIFT)
870#define USBD_STATUS_CFG_SHIFT 0
871#define USBD_STATUS_CFG_MASK (0xf << USBD_STATUS_CFG_SHIFT)
872
873/* Other events */
874#define USBD_EVENTS_REG 0x10
875#define USBD_EVENTS_USB_LINK_SHIFT 10
876#define USBD_EVENTS_USB_LINK_MASK (1 << USBD_EVENTS_USB_LINK_SHIFT)
877
878/* IRQ status */
879#define USBD_EVENT_IRQ_STATUS_REG 0x14
880
881/* IRQ level (2 bits per IRQ event) */
882#define USBD_EVENT_IRQ_CFG_HI_REG 0x18
883
884#define USBD_EVENT_IRQ_CFG_LO_REG 0x1c
885
886#define USBD_EVENT_IRQ_CFG_SHIFT(x) ((x & 0xf) << 1)
887#define USBD_EVENT_IRQ_CFG_MASK(x) (3 << USBD_EVENT_IRQ_CFG_SHIFT(x))
888#define USBD_EVENT_IRQ_CFG_RISING(x) (0 << USBD_EVENT_IRQ_CFG_SHIFT(x))
889#define USBD_EVENT_IRQ_CFG_FALLING(x) (1 << USBD_EVENT_IRQ_CFG_SHIFT(x))
890
891/* IRQ mask (1=unmasked) */
892#define USBD_EVENT_IRQ_MASK_REG 0x20
893
894/* IRQ bits */
895#define USBD_EVENT_IRQ_USB_LINK 10
896#define USBD_EVENT_IRQ_SETCFG 9
897#define USBD_EVENT_IRQ_SETINTF 8
898#define USBD_EVENT_IRQ_ERRATIC_ERR 7
899#define USBD_EVENT_IRQ_SET_CSRS 6
900#define USBD_EVENT_IRQ_SUSPEND 5
901#define USBD_EVENT_IRQ_EARLY_SUSPEND 4
902#define USBD_EVENT_IRQ_SOF 3
903#define USBD_EVENT_IRQ_ENUM_ON 2
904#define USBD_EVENT_IRQ_SETUP 1
905#define USBD_EVENT_IRQ_USB_RESET 0
906
907/* TX FIFO partitioning */
908#define USBD_TXFIFO_CONFIG_REG 0x40
909#define USBD_TXFIFO_CONFIG_END_SHIFT 16
910#define USBD_TXFIFO_CONFIG_END_MASK (0xff << USBD_TXFIFO_CONFIG_END_SHIFT)
911#define USBD_TXFIFO_CONFIG_START_SHIFT 0
912#define USBD_TXFIFO_CONFIG_START_MASK (0xff << USBD_TXFIFO_CONFIG_START_SHIFT)
913
914/* RX FIFO partitioning */
915#define USBD_RXFIFO_CONFIG_REG 0x44
916#define USBD_RXFIFO_CONFIG_END_SHIFT 16
917#define USBD_RXFIFO_CONFIG_END_MASK (0xff << USBD_TXFIFO_CONFIG_END_SHIFT)
918#define USBD_RXFIFO_CONFIG_START_SHIFT 0
919#define USBD_RXFIFO_CONFIG_START_MASK (0xff << USBD_TXFIFO_CONFIG_START_SHIFT)
920
921/* TX FIFO/endpoint configuration */
922#define USBD_TXFIFO_EPSIZE_REG 0x48
923
924/* RX FIFO/endpoint configuration */
925#define USBD_RXFIFO_EPSIZE_REG 0x4c
926
927/* Endpoint<->DMA mappings */
928#define USBD_EPNUM_TYPEMAP_REG 0x50
929#define USBD_EPNUM_TYPEMAP_TYPE_SHIFT 8
930#define USBD_EPNUM_TYPEMAP_TYPE_MASK (0x3 << USBD_EPNUM_TYPEMAP_TYPE_SHIFT)
931#define USBD_EPNUM_TYPEMAP_DMA_CH_SHIFT 0
932#define USBD_EPNUM_TYPEMAP_DMA_CH_MASK (0xf << USBD_EPNUM_TYPEMAP_DMACH_SHIFT)
933
934/* Misc per-endpoint settings */
935#define USBD_CSR_SETUPADDR_REG 0x80
936#define USBD_CSR_SETUPADDR_DEF 0xb550
937
938#define USBD_CSR_EP_REG(x) (0x84 + (x) * 4)
939#define USBD_CSR_EP_MAXPKT_SHIFT 19
940#define USBD_CSR_EP_MAXPKT_MASK (0x7ff << USBD_CSR_EP_MAXPKT_SHIFT)
941#define USBD_CSR_EP_ALTIFACE_SHIFT 15
942#define USBD_CSR_EP_ALTIFACE_MASK (0xf << USBD_CSR_EP_ALTIFACE_SHIFT)
943#define USBD_CSR_EP_IFACE_SHIFT 11
944#define USBD_CSR_EP_IFACE_MASK (0xf << USBD_CSR_EP_IFACE_SHIFT)
945#define USBD_CSR_EP_CFG_SHIFT 7
946#define USBD_CSR_EP_CFG_MASK (0xf << USBD_CSR_EP_CFG_SHIFT)
947#define USBD_CSR_EP_TYPE_SHIFT 5
948#define USBD_CSR_EP_TYPE_MASK (3 << USBD_CSR_EP_TYPE_SHIFT)
949#define USBD_CSR_EP_DIR_SHIFT 4
950#define USBD_CSR_EP_DIR_MASK (1 << USBD_CSR_EP_DIR_SHIFT)
951#define USBD_CSR_EP_LOG_SHIFT 0
952#define USBD_CSR_EP_LOG_MASK (0xf << USBD_CSR_EP_LOG_SHIFT)
953
790 954
791/************************************************************************* 955/*************************************************************************
792 * _REG relative to RSET_MPI 956 * _REG relative to RSET_MPI