diff options
Diffstat (limited to 'arch/arm/include')
| -rw-r--r-- | arch/arm/include/asm/arch-at91/at91_common.h | 1 | ||||
| -rw-r--r-- | arch/arm/include/asm/arch-at91/atmel_usba_udc.h | 64 | ||||
| -rw-r--r-- | arch/arm/include/asm/arch-at91/sama5d3.h | 2 | ||||
| -rw-r--r-- | arch/arm/include/asm/arch-exynos/clk.h | 5 | ||||
| -rw-r--r-- | arch/arm/include/asm/arch-exynos/clock.h | 4 | ||||
| -rw-r--r-- | arch/arm/include/asm/arch-exynos/cpu.h | 4 | ||||
| -rw-r--r-- | arch/arm/include/asm/arch-exynos/i2s-regs.h | 6 | ||||
| -rw-r--r-- | arch/arm/include/asm/arch-exynos/periph.h | 1 | ||||
| -rw-r--r-- | arch/arm/include/asm/arch-exynos/spi.h | 11 | ||||
| -rw-r--r-- | arch/arm/include/asm/arch-omap5/ehci.h | 15 | ||||
| -rw-r--r-- | arch/arm/include/asm/arch-omap5/omap.h | 3 | ||||
| -rw-r--r-- | arch/arm/include/asm/arch-omap5/spl.h | 1 | ||||
| -rw-r--r-- | arch/arm/include/asm/omap_common.h | 1 | 
13 files changed, 100 insertions, 18 deletions
| diff --git a/arch/arm/include/asm/arch-at91/at91_common.h b/arch/arm/include/asm/arch-at91/at91_common.h index 9f54fddce..abcb97d10 100644 --- a/arch/arm/include/asm/arch-at91/at91_common.h +++ b/arch/arm/include/asm/arch-at91/at91_common.h @@ -19,6 +19,7 @@ void at91_serial2_hw_init(void);  void at91_seriald_hw_init(void);  void at91_spi0_hw_init(unsigned long cs_mask);  void at91_spi1_hw_init(unsigned long cs_mask); +void at91_udp_hw_init(void);  void at91_uhp_hw_init(void);  void at91_lcd_hw_init(void); diff --git a/arch/arm/include/asm/arch-at91/atmel_usba_udc.h b/arch/arm/include/asm/arch-at91/atmel_usba_udc.h new file mode 100644 index 000000000..6f540d23a --- /dev/null +++ b/arch/arm/include/asm/arch-at91/atmel_usba_udc.h @@ -0,0 +1,64 @@ +/* + * Copyright (C) 2005-2013 Atmel Corporation + *			   Bo Shen <voice.shen@atmel.com> + * + * SPDX-License-Identifier:	GPL-2.0+ + */ + +#ifndef __ATMEL_USBA_UDC_H__ +#define __ATMEL_USBA_UDC_H__ + +#include <linux/usb/atmel_usba_udc.h> + +#define EP(nam, idx, maxpkt, maxbk, dma, isoc)		\ +	[idx] = {					\ +		.name	= nam,				\ +		.index	= idx,				\ +		.fifo_size	= maxpkt,		\ +		.nr_banks	= maxbk,		\ +		.can_dma	= dma,			\ +		.can_isoc	= isoc,			\ +	} + +#if defined(CONFIG_AT91SAM9G45) || defined(CONFIG_AT91SAM9M10G45) || \ +	defined(CONFIG_AT91SAM9X5) +static struct usba_ep_data usba_udc_ep[] = { +	EP("ep0", 0, 64, 1, 0, 0), +	EP("ep1", 1, 1024, 2, 1, 1), +	EP("ep2", 2, 1024, 2, 1, 1), +	EP("ep3", 3, 1024, 3, 1, 0), +	EP("ep4", 4, 1024, 3, 1, 0), +	EP("ep5", 5, 1024, 3, 1, 1), +	EP("ep6", 6, 1024, 3, 1, 1), +}; +#elif defined(CONFIG_SAMA5D3) +static struct usba_ep_data usba_udc_ep[] = { +	EP("ep0", 0, 64, 1, 0, 0), +	EP("ep1", 1, 1024, 3, 1, 0), +	EP("ep2", 2, 1024, 3, 1, 0), +	EP("ep3", 3, 1024, 2, 1, 0), +	EP("ep4", 4, 1024, 2, 1, 0), +	EP("ep5", 5, 1024, 2, 1, 0), +	EP("ep6", 6, 1024, 2, 1, 0), +	EP("ep7", 7, 1024, 2, 1, 0), +	EP("ep8", 8, 1024, 2, 0, 0), +	EP("ep9", 9, 1024, 2, 0, 0), +	EP("ep10", 10, 1024, 2, 0, 0), +	EP("ep11", 11, 1024, 2, 0, 0), +	EP("ep12", 12, 1024, 2, 0, 0), +	EP("ep13", 13, 1024, 2, 0, 0), +	EP("ep14", 14, 1024, 2, 0, 0), +	EP("ep15", 15, 1024, 2, 0, 0), +}; +#else +# error "NO usba_udc_ep defined" +#endif + +#undef EP + +struct usba_platform_data pdata = { +	.num_ep	= ARRAY_SIZE(usba_udc_ep), +	.ep	= usba_udc_ep, +}; + +#endif diff --git a/arch/arm/include/asm/arch-at91/sama5d3.h b/arch/arm/include/asm/arch-at91/sama5d3.h index fefee5ed2..123a627cc 100644 --- a/arch/arm/include/asm/arch-at91/sama5d3.h +++ b/arch/arm/include/asm/arch-at91/sama5d3.h @@ -120,7 +120,7 @@  #define ATMEL_BASE_USART3	0xf8024000  #define ATMEL_BASE_UART1	0xf8028000  #define ATMEL_BASE_EMAC		0xf802c000 -#define ATMEL_BASE_UDHPS	0xf8030000 +#define ATMEL_BASE_UDPHS	0xf8030000  #define ATMEL_BASE_SHA		0xf8034000  #define ATMEL_BASE_AES		0xf8038000  #define ATMEL_BASE_TDES		0xf803c000 diff --git a/arch/arm/include/asm/arch-exynos/clk.h b/arch/arm/include/asm/arch-exynos/clk.h index 71075bd53..1d6fa9370 100644 --- a/arch/arm/include/asm/arch-exynos/clk.h +++ b/arch/arm/include/asm/arch-exynos/clk.h @@ -31,8 +31,9 @@ void set_mmc_clk(int dev_index, unsigned int div);  unsigned long get_lcd_clk(void);  void set_lcd_clk(void);  void set_mipi_clk(void); -void set_i2s_clk_source(void); -int set_i2s_clk_prescaler(unsigned int src_frq, unsigned int dst_frq); +int set_i2s_clk_source(unsigned int i2s_id); +int set_i2s_clk_prescaler(unsigned int src_frq, unsigned int dst_frq, +				unsigned int i2s_id);  int set_epll_clk(unsigned long rate);  int set_spi_clk(int periph_id, unsigned int rate); diff --git a/arch/arm/include/asm/arch-exynos/clock.h b/arch/arm/include/asm/arch-exynos/clock.h index 2b97b9a04..cf26eeffc 100644 --- a/arch/arm/include/asm/arch-exynos/clock.h +++ b/arch/arm/include/asm/arch-exynos/clock.h @@ -876,8 +876,12 @@ struct set_epll_con_val {  #define AUDIO_0_RATIO_MASK		0x0f  #define AUDIO_1_RATIO_MASK		0x0f +#define AUDIO0_SEL_MASK			0xf  #define AUDIO1_SEL_MASK			0xf +  #define CLK_SRC_SCLK_EPLL		0x7 +#define CLK_SRC_MOUT_EPLL		(1<<12) +#define AUDIO_CLKMUX_ASS		(1<<0)  /* CON0 bit-fields */  #define EPLL_CON0_MDIV_MASK		0x1ff diff --git a/arch/arm/include/asm/arch-exynos/cpu.h b/arch/arm/include/asm/arch-exynos/cpu.h index cb924fba8..4b67191c0 100644 --- a/arch/arm/include/asm/arch-exynos/cpu.h +++ b/arch/arm/include/asm/arch-exynos/cpu.h @@ -50,6 +50,7 @@  #define EXYNOS4_SPI_ISP_BASE		DEVICE_NOT_AVAILABLE  #define EXYNOS4_ACE_SFR_BASE		DEVICE_NOT_AVAILABLE  #define EXYNOS4_DMC_PHY_BASE		DEVICE_NOT_AVAILABLE +#define EXYNOS4_AUDIOSS_BASE		DEVICE_NOT_AVAILABLE  /* EXYNOS4X12 */  #define EXYNOS4X12_GPIO_PART3_BASE	0x03860000 @@ -85,10 +86,12 @@  #define EXYNOS4X12_SPI_ISP_BASE		DEVICE_NOT_AVAILABLE  #define EXYNOS4X12_ACE_SFR_BASE		DEVICE_NOT_AVAILABLE  #define EXYNOS4X12_DMC_PHY_BASE		DEVICE_NOT_AVAILABLE +#define EXYNOS4X12_AUDIOSS_BASE		DEVICE_NOT_AVAILABLE  /* EXYNOS5 Common*/  #define EXYNOS5_I2C_SPACING		0x10000 +#define EXYNOS5_AUDIOSS_BASE		0x03810000  #define EXYNOS5_GPIO_PART4_BASE		0x03860000  #define EXYNOS5_PRO_ID			0x10000000  #define EXYNOS5_CLOCK_BASE		0x10010000 @@ -226,6 +229,7 @@ SAMSUNG_BASE(spi_isp, SPI_ISP_BASE)  SAMSUNG_BASE(tzpc, TZPC_BASE)  SAMSUNG_BASE(dmc_ctrl, DMC_CTRL_BASE)  SAMSUNG_BASE(dmc_phy, DMC_PHY_BASE) +SAMSUNG_BASE(audio_ass, AUDIOSS_BASE)  #endif  #endif	/* _EXYNOS4_CPU_H */ diff --git a/arch/arm/include/asm/arch-exynos/i2s-regs.h b/arch/arm/include/asm/arch-exynos/i2s-regs.h index 613b9b7a3..4a4a7a00b 100644 --- a/arch/arm/include/asm/arch-exynos/i2s-regs.h +++ b/arch/arm/include/asm/arch-exynos/i2s-regs.h @@ -8,10 +8,12 @@  #ifndef __I2S_REGS_H__  #define __I2S_REGS_H__ +#define CON_RESET		(1 << 31)  #define CON_TXFIFO_FULL		(1 << 8)  #define CON_TXCH_PAUSE		(1 << 4)  #define CON_ACTIVE		(1 << 0) +#define MOD_OP_CLK		(3 << 30)  #define MOD_BLCP_SHIFT		24  #define MOD_BLCP_16BIT		(0 << MOD_BLCP_SHIFT)  #define MOD_BLCP_8BIT		(1 << MOD_BLCP_SHIFT) @@ -24,6 +26,7 @@  #define MOD_BLC_MASK		(3 << 13)  #define MOD_SLAVE		(1 << 11) +#define MOD_RCLKSRC		(0 << 10)  #define MOD_MASK		(3 << 8)  #define MOD_LR_LLOW		(0 << 7)  #define MOD_LR_RLOW		(1 << 7) @@ -47,4 +50,7 @@  #define FIC_TXFLUSH		(1 << 15)  #define FIC_RXFLUSH		(1 << 7) +#define PSREN			(1 << 15) +#define PSVAL			(3 << 8) +  #endif /* __I2S_REGS_H__ */ diff --git a/arch/arm/include/asm/arch-exynos/periph.h b/arch/arm/include/asm/arch-exynos/periph.h index 995215598..64bd8b7c9 100644 --- a/arch/arm/include/asm/arch-exynos/periph.h +++ b/arch/arm/include/asm/arch-exynos/periph.h @@ -34,6 +34,7 @@ enum periph_id {  	PERIPH_ID_SDMMC1,  	PERIPH_ID_SDMMC2,  	PERIPH_ID_SDMMC3, +	PERIPH_ID_I2S0 = 98,  	PERIPH_ID_I2S1 = 99,  	/* Since following peripherals do diff --git a/arch/arm/include/asm/arch-exynos/spi.h b/arch/arm/include/asm/arch-exynos/spi.h index fb23aa69c..147c1a730 100644 --- a/arch/arm/include/asm/arch-exynos/spi.h +++ b/arch/arm/include/asm/arch-exynos/spi.h @@ -22,7 +22,7 @@ struct exynos_spi {  	unsigned int		rx_data;	/* 0x1c */  	unsigned int		pkt_cnt;	/* 0x20 */  	unsigned char		reserved2[4]; -	unsigned char		reserved3[4]; +	unsigned int		swap_cfg;	/* 0x28 */  	unsigned int		fb_clk;		/* 0x2c */  	unsigned char		padding[0xffd0];  }; @@ -62,5 +62,14 @@ struct exynos_spi {  /* Packet Count */  #define SPI_PACKET_CNT_EN	(1 << 16) +/* Swap config */ +#define SPI_TX_SWAP_EN		(1 << 0) +#define SPI_TX_BYTE_SWAP	(1 << 2) +#define SPI_TX_HWORD_SWAP	(1 << 3) +#define SPI_TX_BYTE_SWAP	(1 << 2) +#define SPI_RX_SWAP_EN		(1 << 4) +#define SPI_RX_BYTE_SWAP	(1 << 6) +#define SPI_RX_HWORD_SWAP	(1 << 7) +  #endif /* __ASSEMBLY__ */  #endif diff --git a/arch/arm/include/asm/arch-omap5/ehci.h b/arch/arm/include/asm/arch-omap5/ehci.h index 3921e4ab4..63aaa020d 100644 --- a/arch/arm/include/asm/arch-omap5/ehci.h +++ b/arch/arm/include/asm/arch-omap5/ehci.h @@ -2,20 +2,7 @@   * Copyright (C) 2013 Texas Instruments Incorporated - http://www.ti.com*   * Author: Govindraj R <govindraj.raja@ti.com>   * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public License as - * published by the Free Software Foundation; either version 2 of - * the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, - * MA 02111-1307 USA + * SPDX-License-Identifier: GPL-2.0+   */  #ifndef _EHCI_H diff --git a/arch/arm/include/asm/arch-omap5/omap.h b/arch/arm/include/asm/arch-omap5/omap.h index e9a51d340..414d37a5a 100644 --- a/arch/arm/include/asm/arch-omap5/omap.h +++ b/arch/arm/include/asm/arch-omap5/omap.h @@ -61,6 +61,9 @@  /* GPMC */  #define OMAP54XX_GPMC_BASE	0x50000000 +/* QSPI */ +#define QSPI_BASE		0x4B300000 +  /*   * Hardware Register Details   */ diff --git a/arch/arm/include/asm/arch-omap5/spl.h b/arch/arm/include/asm/arch-omap5/spl.h index fe8b0c01a..57f0de5ff 100644 --- a/arch/arm/include/asm/arch-omap5/spl.h +++ b/arch/arm/include/asm/arch-omap5/spl.h @@ -15,6 +15,7 @@  #define BOOT_DEVICE_MMC1        5  #define BOOT_DEVICE_MMC2        6  #define BOOT_DEVICE_MMC2_2	7 +#define BOOT_DEVICE_SPI		10  #define MMC_BOOT_DEVICES_START	BOOT_DEVICE_MMC1  #define MMC_BOOT_DEVICES_END	BOOT_DEVICE_MMC2_2 diff --git a/arch/arm/include/asm/omap_common.h b/arch/arm/include/asm/omap_common.h index 61fee9f06..3a998cc10 100644 --- a/arch/arm/include/asm/omap_common.h +++ b/arch/arm/include/asm/omap_common.h @@ -266,6 +266,7 @@ struct prcm_regs {  	u32 cm_l4per_mmcsd4_clkctrl;  	u32 cm_l4per_msprohg_clkctrl;  	u32 cm_l4per_slimbus2_clkctrl; +	u32 cm_l4per_qspi_clkctrl;  	u32 cm_l4per_uart1_clkctrl;  	u32 cm_l4per_uart2_clkctrl;  	u32 cm_l4per_uart3_clkctrl; |