diff options
Diffstat (limited to 'arch/mips/include/asm/mach-bcm63xx')
| -rw-r--r-- | arch/mips/include/asm/mach-bcm63xx/bcm63xx_cpu.h | 18 | ||||
| -rw-r--r-- | arch/mips/include/asm/mach-bcm63xx/bcm63xx_dev_hsspi.h | 8 | ||||
| -rw-r--r-- | arch/mips/include/asm/mach-bcm63xx/bcm63xx_regs.h | 120 | 
3 files changed, 26 insertions, 120 deletions
diff --git a/arch/mips/include/asm/mach-bcm63xx/bcm63xx_cpu.h b/arch/mips/include/asm/mach-bcm63xx/bcm63xx_cpu.h index 19f9134bfe2..3112f08f0c7 100644 --- a/arch/mips/include/asm/mach-bcm63xx/bcm63xx_cpu.h +++ b/arch/mips/include/asm/mach-bcm63xx/bcm63xx_cpu.h @@ -145,6 +145,7 @@ enum bcm63xx_regs_set {  	RSET_UART1,  	RSET_GPIO,  	RSET_SPI, +	RSET_HSSPI,  	RSET_UDC0,  	RSET_OHCI0,  	RSET_OHCI_PRIV, @@ -193,6 +194,7 @@ enum bcm63xx_regs_set {  #define RSET_ENETDMAS_SIZE(chans)	(16 * (chans))  #define RSET_ENETSW_SIZE		65536  #define RSET_UART_SIZE			24 +#define RSET_HSSPI_SIZE			1536  #define RSET_UDC_SIZE			256  #define RSET_OHCI_SIZE			256  #define RSET_EHCI_SIZE			256 @@ -265,6 +267,7 @@ enum bcm63xx_regs_set {  #define BCM_6328_UART1_BASE		(0xb0000120)  #define BCM_6328_GPIO_BASE		(0xb0000080)  #define BCM_6328_SPI_BASE		(0xdeadbeef) +#define BCM_6328_HSSPI_BASE		(0xb0001000)  #define BCM_6328_UDC0_BASE		(0xdeadbeef)  #define BCM_6328_USBDMA_BASE		(0xb000c000)  #define BCM_6328_OHCI0_BASE		(0xb0002600) @@ -313,6 +316,7 @@ enum bcm63xx_regs_set {  #define BCM_6338_UART1_BASE		(0xdeadbeef)  #define BCM_6338_GPIO_BASE		(0xfffe0400)  #define BCM_6338_SPI_BASE		(0xfffe0c00) +#define BCM_6338_HSSPI_BASE		(0xdeadbeef)  #define BCM_6338_UDC0_BASE		(0xdeadbeef)  #define BCM_6338_USBDMA_BASE		(0xfffe2400)  #define BCM_6338_OHCI0_BASE		(0xdeadbeef) @@ -360,6 +364,7 @@ enum bcm63xx_regs_set {  #define BCM_6345_UART1_BASE		(0xdeadbeef)  #define BCM_6345_GPIO_BASE		(0xfffe0400)  #define BCM_6345_SPI_BASE		(0xdeadbeef) +#define BCM_6345_HSSPI_BASE		(0xdeadbeef)  #define BCM_6345_UDC0_BASE		(0xdeadbeef)  #define BCM_6345_USBDMA_BASE		(0xfffe2800)  #define BCM_6345_ENET0_BASE		(0xfffe1800) @@ -406,6 +411,7 @@ enum bcm63xx_regs_set {  #define BCM_6348_UART1_BASE		(0xdeadbeef)  #define BCM_6348_GPIO_BASE		(0xfffe0400)  #define BCM_6348_SPI_BASE		(0xfffe0c00) +#define BCM_6348_HSSPI_BASE		(0xdeadbeef)  #define BCM_6348_UDC0_BASE		(0xfffe1000)  #define BCM_6348_USBDMA_BASE		(0xdeadbeef)  #define BCM_6348_OHCI0_BASE		(0xfffe1b00) @@ -451,6 +457,7 @@ enum bcm63xx_regs_set {  #define BCM_6358_UART1_BASE		(0xfffe0120)  #define BCM_6358_GPIO_BASE		(0xfffe0080)  #define BCM_6358_SPI_BASE		(0xfffe0800) +#define BCM_6358_HSSPI_BASE		(0xdeadbeef)  #define BCM_6358_UDC0_BASE		(0xfffe0800)  #define BCM_6358_USBDMA_BASE		(0xdeadbeef)  #define BCM_6358_OHCI0_BASE		(0xfffe1400) @@ -553,6 +560,7 @@ enum bcm63xx_regs_set {  #define BCM_6368_UART1_BASE		(0xb0000120)  #define BCM_6368_GPIO_BASE		(0xb0000080)  #define BCM_6368_SPI_BASE		(0xb0000800) +#define BCM_6368_HSSPI_BASE		(0xdeadbeef)  #define BCM_6368_UDC0_BASE		(0xdeadbeef)  #define BCM_6368_USBDMA_BASE		(0xb0004800)  #define BCM_6368_OHCI0_BASE		(0xb0001600) @@ -604,6 +612,7 @@ extern const unsigned long *bcm63xx_regs_base;  	__GEN_RSET_BASE(__cpu, UART1)					\  	__GEN_RSET_BASE(__cpu, GPIO)					\  	__GEN_RSET_BASE(__cpu, SPI)					\ +	__GEN_RSET_BASE(__cpu, HSSPI)					\  	__GEN_RSET_BASE(__cpu, UDC0)					\  	__GEN_RSET_BASE(__cpu, OHCI0)					\  	__GEN_RSET_BASE(__cpu, OHCI_PRIV)				\ @@ -647,6 +656,7 @@ extern const unsigned long *bcm63xx_regs_base;  	[RSET_UART1]		= BCM_## __cpu ##_UART1_BASE,		\  	[RSET_GPIO]		= BCM_## __cpu ##_GPIO_BASE,		\  	[RSET_SPI]		= BCM_## __cpu ##_SPI_BASE,		\ +	[RSET_HSSPI]		= BCM_## __cpu ##_HSSPI_BASE,		\  	[RSET_UDC0]		= BCM_## __cpu ##_UDC0_BASE,		\  	[RSET_OHCI0]		= BCM_## __cpu ##_OHCI0_BASE,		\  	[RSET_OHCI_PRIV]	= BCM_## __cpu ##_OHCI_PRIV_BASE,	\ @@ -727,6 +737,7 @@ enum bcm63xx_irq {  	IRQ_ENET0,  	IRQ_ENET1,  	IRQ_ENET_PHY, +	IRQ_HSSPI,  	IRQ_OHCI0,  	IRQ_EHCI0,  	IRQ_USBD, @@ -815,6 +826,7 @@ enum bcm63xx_irq {  #define BCM_6328_ENET0_IRQ		0  #define BCM_6328_ENET1_IRQ		0  #define BCM_6328_ENET_PHY_IRQ		(IRQ_INTERNAL_BASE + 12) +#define BCM_6328_HSSPI_IRQ		(IRQ_INTERNAL_BASE + 29)  #define BCM_6328_OHCI0_IRQ		(BCM_6328_HIGH_IRQ_BASE + 9)  #define BCM_6328_EHCI0_IRQ		(BCM_6328_HIGH_IRQ_BASE + 10)  #define BCM_6328_USBD_IRQ		(IRQ_INTERNAL_BASE + 4) @@ -860,6 +872,7 @@ enum bcm63xx_irq {  #define BCM_6338_ENET0_IRQ		(IRQ_INTERNAL_BASE + 8)  #define BCM_6338_ENET1_IRQ		0  #define BCM_6338_ENET_PHY_IRQ		(IRQ_INTERNAL_BASE + 9) +#define BCM_6338_HSSPI_IRQ		0  #define BCM_6338_OHCI0_IRQ		0  #define BCM_6338_EHCI0_IRQ		0  #define BCM_6338_USBD_IRQ		0 @@ -898,6 +911,7 @@ enum bcm63xx_irq {  #define BCM_6345_ENET0_IRQ		(IRQ_INTERNAL_BASE + 8)  #define BCM_6345_ENET1_IRQ		0  #define BCM_6345_ENET_PHY_IRQ		(IRQ_INTERNAL_BASE + 12) +#define BCM_6345_HSSPI_IRQ		0  #define BCM_6345_OHCI0_IRQ		0  #define BCM_6345_EHCI0_IRQ		0  #define BCM_6345_USBD_IRQ		0 @@ -936,6 +950,7 @@ enum bcm63xx_irq {  #define BCM_6348_ENET0_IRQ		(IRQ_INTERNAL_BASE + 8)  #define BCM_6348_ENET1_IRQ		(IRQ_INTERNAL_BASE + 7)  #define BCM_6348_ENET_PHY_IRQ		(IRQ_INTERNAL_BASE + 9) +#define BCM_6348_HSSPI_IRQ		0  #define BCM_6348_OHCI0_IRQ		(IRQ_INTERNAL_BASE + 12)  #define BCM_6348_EHCI0_IRQ		0  #define BCM_6348_USBD_IRQ		0 @@ -974,6 +989,7 @@ enum bcm63xx_irq {  #define BCM_6358_ENET0_IRQ		(IRQ_INTERNAL_BASE + 8)  #define BCM_6358_ENET1_IRQ		(IRQ_INTERNAL_BASE + 6)  #define BCM_6358_ENET_PHY_IRQ		(IRQ_INTERNAL_BASE + 9) +#define BCM_6358_HSSPI_IRQ		0  #define BCM_6358_OHCI0_IRQ		(IRQ_INTERNAL_BASE + 5)  #define BCM_6358_EHCI0_IRQ		(IRQ_INTERNAL_BASE + 10)  #define BCM_6358_USBD_IRQ		0 @@ -1086,6 +1102,7 @@ enum bcm63xx_irq {  #define BCM_6368_ENET0_IRQ		0  #define BCM_6368_ENET1_IRQ		0  #define BCM_6368_ENET_PHY_IRQ		(IRQ_INTERNAL_BASE + 15) +#define BCM_6368_HSSPI_IRQ		0  #define BCM_6368_OHCI0_IRQ		(IRQ_INTERNAL_BASE + 5)  #define BCM_6368_EHCI0_IRQ		(IRQ_INTERNAL_BASE + 7)  #define BCM_6368_USBD_IRQ		(IRQ_INTERNAL_BASE + 8) @@ -1133,6 +1150,7 @@ extern const int *bcm63xx_irqs;  	[IRQ_ENET0]		= BCM_## __cpu ##_ENET0_IRQ,		\  	[IRQ_ENET1]		= BCM_## __cpu ##_ENET1_IRQ,		\  	[IRQ_ENET_PHY]		= BCM_## __cpu ##_ENET_PHY_IRQ,		\ +	[IRQ_HSSPI]		= BCM_## __cpu ##_HSSPI_IRQ,		\  	[IRQ_OHCI0]		= BCM_## __cpu ##_OHCI0_IRQ,		\  	[IRQ_EHCI0]		= BCM_## __cpu ##_EHCI0_IRQ,		\  	[IRQ_USBD]		= BCM_## __cpu ##_USBD_IRQ,		\ diff --git a/arch/mips/include/asm/mach-bcm63xx/bcm63xx_dev_hsspi.h b/arch/mips/include/asm/mach-bcm63xx/bcm63xx_dev_hsspi.h new file mode 100644 index 00000000000..1b1acafb3d7 --- /dev/null +++ b/arch/mips/include/asm/mach-bcm63xx/bcm63xx_dev_hsspi.h @@ -0,0 +1,8 @@ +#ifndef BCM63XX_DEV_HSSPI_H +#define BCM63XX_DEV_HSSPI_H + +#include <linux/types.h> + +int bcm63xx_hsspi_register(void); + +#endif /* BCM63XX_DEV_HSSPI_H */ diff --git a/arch/mips/include/asm/mach-bcm63xx/bcm63xx_regs.h b/arch/mips/include/asm/mach-bcm63xx/bcm63xx_regs.h index 9875db31d88..ab427f8814e 100644 --- a/arch/mips/include/asm/mach-bcm63xx/bcm63xx_regs.h +++ b/arch/mips/include/asm/mach-bcm63xx/bcm63xx_regs.h @@ -463,126 +463,6 @@  #define WDT_SOFTRESET_REG		0xc  /************************************************************************* - * _REG relative to RSET_UARTx - *************************************************************************/ - -/* UART Control Register */ -#define UART_CTL_REG			0x0 -#define UART_CTL_RXTMOUTCNT_SHIFT	0 -#define UART_CTL_RXTMOUTCNT_MASK	(0x1f << UART_CTL_RXTMOUTCNT_SHIFT) -#define UART_CTL_RSTTXDN_SHIFT		5 -#define UART_CTL_RSTTXDN_MASK		(1 << UART_CTL_RSTTXDN_SHIFT) -#define UART_CTL_RSTRXFIFO_SHIFT		6 -#define UART_CTL_RSTRXFIFO_MASK		(1 << UART_CTL_RSTRXFIFO_SHIFT) -#define UART_CTL_RSTTXFIFO_SHIFT		7 -#define UART_CTL_RSTTXFIFO_MASK		(1 << UART_CTL_RSTTXFIFO_SHIFT) -#define UART_CTL_STOPBITS_SHIFT		8 -#define UART_CTL_STOPBITS_MASK		(0xf << UART_CTL_STOPBITS_SHIFT) -#define UART_CTL_STOPBITS_1		(0x7 << UART_CTL_STOPBITS_SHIFT) -#define UART_CTL_STOPBITS_2		(0xf << UART_CTL_STOPBITS_SHIFT) -#define UART_CTL_BITSPERSYM_SHIFT	12 -#define UART_CTL_BITSPERSYM_MASK	(0x3 << UART_CTL_BITSPERSYM_SHIFT) -#define UART_CTL_XMITBRK_SHIFT		14 -#define UART_CTL_XMITBRK_MASK		(1 << UART_CTL_XMITBRK_SHIFT) -#define UART_CTL_RSVD_SHIFT		15 -#define UART_CTL_RSVD_MASK		(1 << UART_CTL_RSVD_SHIFT) -#define UART_CTL_RXPAREVEN_SHIFT		16 -#define UART_CTL_RXPAREVEN_MASK		(1 << UART_CTL_RXPAREVEN_SHIFT) -#define UART_CTL_RXPAREN_SHIFT		17 -#define UART_CTL_RXPAREN_MASK		(1 << UART_CTL_RXPAREN_SHIFT) -#define UART_CTL_TXPAREVEN_SHIFT		18 -#define UART_CTL_TXPAREVEN_MASK		(1 << UART_CTL_TXPAREVEN_SHIFT) -#define UART_CTL_TXPAREN_SHIFT		18 -#define UART_CTL_TXPAREN_MASK		(1 << UART_CTL_TXPAREN_SHIFT) -#define UART_CTL_LOOPBACK_SHIFT		20 -#define UART_CTL_LOOPBACK_MASK		(1 << UART_CTL_LOOPBACK_SHIFT) -#define UART_CTL_RXEN_SHIFT		21 -#define UART_CTL_RXEN_MASK		(1 << UART_CTL_RXEN_SHIFT) -#define UART_CTL_TXEN_SHIFT		22 -#define UART_CTL_TXEN_MASK		(1 << UART_CTL_TXEN_SHIFT) -#define UART_CTL_BRGEN_SHIFT		23 -#define UART_CTL_BRGEN_MASK		(1 << UART_CTL_BRGEN_SHIFT) - -/* UART Baudword register */ -#define UART_BAUD_REG			0x4 - -/* UART Misc Control register */ -#define UART_MCTL_REG			0x8 -#define UART_MCTL_DTR_SHIFT		0 -#define UART_MCTL_DTR_MASK		(1 << UART_MCTL_DTR_SHIFT) -#define UART_MCTL_RTS_SHIFT		1 -#define UART_MCTL_RTS_MASK		(1 << UART_MCTL_RTS_SHIFT) -#define UART_MCTL_RXFIFOTHRESH_SHIFT	8 -#define UART_MCTL_RXFIFOTHRESH_MASK	(0xf << UART_MCTL_RXFIFOTHRESH_SHIFT) -#define UART_MCTL_TXFIFOTHRESH_SHIFT	12 -#define UART_MCTL_TXFIFOTHRESH_MASK	(0xf << UART_MCTL_TXFIFOTHRESH_SHIFT) -#define UART_MCTL_RXFIFOFILL_SHIFT	16 -#define UART_MCTL_RXFIFOFILL_MASK	(0x1f << UART_MCTL_RXFIFOFILL_SHIFT) -#define UART_MCTL_TXFIFOFILL_SHIFT	24 -#define UART_MCTL_TXFIFOFILL_MASK	(0x1f << UART_MCTL_TXFIFOFILL_SHIFT) - -/* UART External Input Configuration register */ -#define UART_EXTINP_REG			0xc -#define UART_EXTINP_RI_SHIFT		0 -#define UART_EXTINP_RI_MASK		(1 << UART_EXTINP_RI_SHIFT) -#define UART_EXTINP_CTS_SHIFT		1 -#define UART_EXTINP_CTS_MASK		(1 << UART_EXTINP_CTS_SHIFT) -#define UART_EXTINP_DCD_SHIFT		2 -#define UART_EXTINP_DCD_MASK		(1 << UART_EXTINP_DCD_SHIFT) -#define UART_EXTINP_DSR_SHIFT		3 -#define UART_EXTINP_DSR_MASK		(1 << UART_EXTINP_DSR_SHIFT) -#define UART_EXTINP_IRSTAT(x)		(1 << (x + 4)) -#define UART_EXTINP_IRMASK(x)		(1 << (x + 8)) -#define UART_EXTINP_IR_RI		0 -#define UART_EXTINP_IR_CTS		1 -#define UART_EXTINP_IR_DCD		2 -#define UART_EXTINP_IR_DSR		3 -#define UART_EXTINP_RI_NOSENSE_SHIFT	16 -#define UART_EXTINP_RI_NOSENSE_MASK	(1 << UART_EXTINP_RI_NOSENSE_SHIFT) -#define UART_EXTINP_CTS_NOSENSE_SHIFT	17 -#define UART_EXTINP_CTS_NOSENSE_MASK	(1 << UART_EXTINP_CTS_NOSENSE_SHIFT) -#define UART_EXTINP_DCD_NOSENSE_SHIFT	18 -#define UART_EXTINP_DCD_NOSENSE_MASK	(1 << UART_EXTINP_DCD_NOSENSE_SHIFT) -#define UART_EXTINP_DSR_NOSENSE_SHIFT	19 -#define UART_EXTINP_DSR_NOSENSE_MASK	(1 << UART_EXTINP_DSR_NOSENSE_SHIFT) - -/* UART Interrupt register */ -#define UART_IR_REG			0x10 -#define UART_IR_MASK(x)			(1 << (x + 16)) -#define UART_IR_STAT(x)			(1 << (x)) -#define UART_IR_EXTIP			0 -#define UART_IR_TXUNDER			1 -#define UART_IR_TXOVER			2 -#define UART_IR_TXTRESH			3 -#define UART_IR_TXRDLATCH		4 -#define UART_IR_TXEMPTY			5 -#define UART_IR_RXUNDER			6 -#define UART_IR_RXOVER			7 -#define UART_IR_RXTIMEOUT		8 -#define UART_IR_RXFULL			9 -#define UART_IR_RXTHRESH		10 -#define UART_IR_RXNOTEMPTY		11 -#define UART_IR_RXFRAMEERR		12 -#define UART_IR_RXPARERR		13 -#define UART_IR_RXBRK			14 -#define UART_IR_TXDONE			15 - -/* UART Fifo register */ -#define UART_FIFO_REG			0x14 -#define UART_FIFO_VALID_SHIFT		0 -#define UART_FIFO_VALID_MASK		0xff -#define UART_FIFO_FRAMEERR_SHIFT	8 -#define UART_FIFO_FRAMEERR_MASK		(1 << UART_FIFO_FRAMEERR_SHIFT) -#define UART_FIFO_PARERR_SHIFT		9 -#define UART_FIFO_PARERR_MASK		(1 << UART_FIFO_PARERR_SHIFT) -#define UART_FIFO_BRKDET_SHIFT		10 -#define UART_FIFO_BRKDET_MASK		(1 << UART_FIFO_BRKDET_SHIFT) -#define UART_FIFO_ANYERR_MASK		(UART_FIFO_FRAMEERR_MASK |	\ -					UART_FIFO_PARERR_MASK |		\ -					UART_FIFO_BRKDET_MASK) - - -/*************************************************************************   * _REG relative to RSET_GPIO   *************************************************************************/  | 
