mirror of
https://github.com/Dasharo/linux.git
synced 2026-03-06 15:25:10 -08:00
Merge branch 'next/cleanup' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/linux-arm-soc
* 'next/cleanup' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/linux-arm-soc: (133 commits) ARM: EXYNOS4: Change devname for FIMD clkdev ARM: S3C64XX: Cleanup mach/regs-fb.h from mach-s3c64xx ARM: S5PV210: Cleanup mach/regs-fb.h from mach-s5pv210 ARM: S5PC100: Cleanup mach/regs-fb.h from mach-s5pc100 ARM: S3C24XX: Use generic s3c_set_platdata for devices ARM: S3C64XX: Use generic s3c_set_platdata for OneNAND ARM: SAMSUNG: Use generic s3c_set_platdata for NAND ARM: SAMSUNG: Use generic s3c_set_platdata for USB OHCI ARM: SAMSUNG: Use generic s3c_set_platdata for HWMON ARM: SAMSUNG: Use generic s3c_set_platdata for FB ARM: SAMSUNG: Use generic s3c_set_platdata for TS ARM: S3C64XX: Add PWM backlight support on SMDK6410 ARM: S5P64X0: Add PWM backlight support on SMDK6450 ARM: S5P64X0: Add PWM backlight support on SMDK6440 ARM: S5PC100: Add PWM backlight support on SMDKC100 ARM: S5PV210: Add PWM backlight support on SMDKV210 ARM: EXYNOS4: Add PWM backlight support on SMDKC210 ARM: EXYNOS4: Add PWM backlight support on SMDKV310 ARM: SAMSUNG: Create a common infrastructure for PWM backlight support clocksource: convert 32-bit down counting clocksource on S5PV210/S5P64X0 ... Fix up trivial conflict in arch/arm/mach-imx/mach-scb9328.c
This commit is contained in:
@@ -686,6 +686,7 @@ config ARCH_S3C2410
|
||||
select GENERIC_GPIO
|
||||
select ARCH_HAS_CPUFREQ
|
||||
select HAVE_CLK
|
||||
select CLKDEV_LOOKUP
|
||||
select ARCH_USES_GETTIMEOFFSET
|
||||
select HAVE_S3C2410_I2C if I2C
|
||||
help
|
||||
@@ -703,6 +704,7 @@ config ARCH_S3C64XX
|
||||
select CPU_V6
|
||||
select ARM_VIC
|
||||
select HAVE_CLK
|
||||
select CLKDEV_LOOKUP
|
||||
select NO_IOPORT
|
||||
select ARCH_USES_GETTIMEOFFSET
|
||||
select ARCH_HAS_CPUFREQ
|
||||
@@ -727,6 +729,8 @@ config ARCH_S5P64X0
|
||||
select CPU_V6
|
||||
select GENERIC_GPIO
|
||||
select HAVE_CLK
|
||||
select CLKDEV_LOOKUP
|
||||
select CLKSRC_MMIO
|
||||
select HAVE_S3C2410_WATCHDOG if WATCHDOG
|
||||
select GENERIC_CLOCKEVENTS
|
||||
select HAVE_SCHED_CLOCK
|
||||
@@ -740,6 +744,7 @@ config ARCH_S5PC100
|
||||
bool "Samsung S5PC100"
|
||||
select GENERIC_GPIO
|
||||
select HAVE_CLK
|
||||
select CLKDEV_LOOKUP
|
||||
select CPU_V7
|
||||
select ARM_L1_CACHE_SHIFT_6
|
||||
select ARCH_USES_GETTIMEOFFSET
|
||||
@@ -755,6 +760,8 @@ config ARCH_S5PV210
|
||||
select ARCH_SPARSEMEM_ENABLE
|
||||
select GENERIC_GPIO
|
||||
select HAVE_CLK
|
||||
select CLKDEV_LOOKUP
|
||||
select CLKSRC_MMIO
|
||||
select ARM_L1_CACHE_SHIFT_6
|
||||
select ARCH_HAS_CPUFREQ
|
||||
select GENERIC_CLOCKEVENTS
|
||||
@@ -771,6 +778,7 @@ config ARCH_EXYNOS4
|
||||
select ARCH_SPARSEMEM_ENABLE
|
||||
select GENERIC_GPIO
|
||||
select HAVE_CLK
|
||||
select CLKDEV_LOOKUP
|
||||
select ARCH_HAS_CPUFREQ
|
||||
select GENERIC_CLOCKEVENTS
|
||||
select HAVE_S3C_RTC if RTC_CLASS
|
||||
@@ -856,6 +864,7 @@ config ARCH_OMAP
|
||||
select HAVE_CLK
|
||||
select ARCH_REQUIRE_GPIOLIB
|
||||
select ARCH_HAS_CPUFREQ
|
||||
select CLKSRC_MMIO
|
||||
select GENERIC_CLOCKEVENTS
|
||||
select HAVE_SCHED_CLOCK
|
||||
select ARCH_HAS_HOLES_MEMORYMODEL
|
||||
|
||||
@@ -5,7 +5,6 @@ CONFIG_SYSVIPC=y
|
||||
CONFIG_IKCONFIG=y
|
||||
CONFIG_IKCONFIG_PROC=y
|
||||
CONFIG_LOG_BUF_SHIFT=18
|
||||
CONFIG_SYSFS_DEPRECATED_V2=y
|
||||
CONFIG_BLK_DEV_INITRD=y
|
||||
# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set
|
||||
CONFIG_MODULES=y
|
||||
@@ -13,6 +12,7 @@ CONFIG_MODULE_UNLOAD=y
|
||||
CONFIG_MODULE_FORCE_UNLOAD=y
|
||||
# CONFIG_BLK_DEV_BSG is not set
|
||||
CONFIG_ARCH_PXA=y
|
||||
CONFIG_GPIO_PCA953X=y
|
||||
CONFIG_MACH_CM_X300=y
|
||||
CONFIG_NO_HZ=y
|
||||
CONFIG_AEABI=y
|
||||
@@ -23,7 +23,6 @@ CONFIG_CMDLINE="root=/dev/mtdblock5 rootfstype=ubifs console=ttyS2,38400"
|
||||
CONFIG_CPU_FREQ=y
|
||||
CONFIG_CPU_FREQ_GOV_USERSPACE=y
|
||||
CONFIG_FPE_NWFPE=y
|
||||
CONFIG_PM=y
|
||||
CONFIG_APM_EMULATION=y
|
||||
CONFIG_NET=y
|
||||
CONFIG_PACKET=y
|
||||
@@ -40,8 +39,8 @@ CONFIG_IP_PNP_RARP=y
|
||||
# CONFIG_INET_DIAG is not set
|
||||
# CONFIG_IPV6 is not set
|
||||
CONFIG_BT=m
|
||||
CONFIG_BT_L2CAP=m
|
||||
CONFIG_BT_SCO=m
|
||||
CONFIG_BT_L2CAP=y
|
||||
CONFIG_BT_SCO=y
|
||||
CONFIG_BT_RFCOMM=m
|
||||
CONFIG_BT_RFCOMM_TTY=y
|
||||
CONFIG_BT_BNEP=m
|
||||
@@ -60,7 +59,6 @@ CONFIG_MTD_NAND_PXA3xx=y
|
||||
CONFIG_MTD_UBI=y
|
||||
CONFIG_BLK_DEV_LOOP=y
|
||||
CONFIG_BLK_DEV_RAM=y
|
||||
# CONFIG_MISC_DEVICES is not set
|
||||
CONFIG_SCSI=y
|
||||
CONFIG_BLK_DEV_SD=y
|
||||
CONFIG_NETDEVICES=y
|
||||
@@ -81,16 +79,15 @@ CONFIG_TOUCHSCREEN_WM97XX=m
|
||||
# CONFIG_TOUCHSCREEN_WM9705 is not set
|
||||
# CONFIG_TOUCHSCREEN_WM9713 is not set
|
||||
# CONFIG_SERIO is not set
|
||||
# CONFIG_LEGACY_PTYS is not set
|
||||
CONFIG_SERIAL_PXA=y
|
||||
CONFIG_SERIAL_PXA_CONSOLE=y
|
||||
# CONFIG_LEGACY_PTYS is not set
|
||||
# CONFIG_HW_RANDOM is not set
|
||||
CONFIG_I2C=y
|
||||
CONFIG_I2C_PXA=y
|
||||
CONFIG_SPI=y
|
||||
CONFIG_SPI_GPIO=y
|
||||
CONFIG_GPIO_SYSFS=y
|
||||
CONFIG_GPIO_PCA953X=y
|
||||
# CONFIG_HWMON is not set
|
||||
CONFIG_PMIC_DA903X=y
|
||||
CONFIG_REGULATOR=y
|
||||
@@ -102,7 +99,6 @@ CONFIG_LCD_CLASS_DEVICE=y
|
||||
CONFIG_LCD_TDO24M=y
|
||||
# CONFIG_BACKLIGHT_GENERIC is not set
|
||||
CONFIG_BACKLIGHT_DA903X=m
|
||||
# CONFIG_VGA_CONSOLE is not set
|
||||
CONFIG_FRAMEBUFFER_CONSOLE=y
|
||||
CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY=y
|
||||
CONFIG_FONTS=y
|
||||
@@ -131,7 +127,6 @@ CONFIG_HID_GREENASIA=y
|
||||
CONFIG_HID_SMARTJOYPLUS=y
|
||||
CONFIG_HID_TOPSEED=y
|
||||
CONFIG_HID_THRUSTMASTER=y
|
||||
CONFIG_HID_WACOM=m
|
||||
CONFIG_HID_ZEROPLUS=y
|
||||
CONFIG_USB=y
|
||||
CONFIG_USB_DEVICEFS=y
|
||||
@@ -152,7 +147,6 @@ CONFIG_RTC_DRV_PXA=y
|
||||
CONFIG_EXT2_FS=y
|
||||
CONFIG_EXT3_FS=y
|
||||
# CONFIG_EXT3_FS_XATTR is not set
|
||||
CONFIG_INOTIFY=y
|
||||
CONFIG_MSDOS_FS=m
|
||||
CONFIG_VFAT_FS=m
|
||||
CONFIG_TMPFS=y
|
||||
@@ -164,7 +158,6 @@ CONFIG_NFS_V3=y
|
||||
CONFIG_NFS_V3_ACL=y
|
||||
CONFIG_NFS_V4=y
|
||||
CONFIG_ROOT_NFS=y
|
||||
CONFIG_SMB_FS=m
|
||||
CONFIG_CIFS=m
|
||||
CONFIG_CIFS_WEAK_PW_HASH=y
|
||||
CONFIG_PARTITION_ADVANCED=y
|
||||
@@ -172,9 +165,7 @@ CONFIG_NLS_CODEPAGE_437=m
|
||||
CONFIG_NLS_ISO8859_1=m
|
||||
CONFIG_DEBUG_FS=y
|
||||
CONFIG_DEBUG_KERNEL=y
|
||||
# CONFIG_DETECT_SOFTLOCKUP is not set
|
||||
# CONFIG_SCHED_DEBUG is not set
|
||||
# CONFIG_RCU_CPU_STALL_DETECTOR is not set
|
||||
CONFIG_SYSCTL_SYSCALL_CHECK=y
|
||||
# CONFIG_FTRACE is not set
|
||||
CONFIG_DEBUG_USER=y
|
||||
@@ -182,7 +173,6 @@ CONFIG_DEBUG_LL=y
|
||||
CONFIG_CRYPTO_ECB=m
|
||||
CONFIG_CRYPTO_MICHAEL_MIC=m
|
||||
CONFIG_CRYPTO_AES=m
|
||||
CONFIG_CRYPTO_ARC4=m
|
||||
# CONFIG_CRYPTO_ANSI_CPRNG is not set
|
||||
# CONFIG_CRYPTO_HW is not set
|
||||
CONFIG_CRC_T10DIF=y
|
||||
|
||||
@@ -61,7 +61,6 @@ struct scoop_pcmcia_dev {
|
||||
struct scoop_pcmcia_config {
|
||||
struct scoop_pcmcia_dev *devs;
|
||||
int num_devs;
|
||||
void (*pcmcia_init)(void);
|
||||
void (*power_ctrl)(struct device *scoop, unsigned short cpr, int nr);
|
||||
};
|
||||
|
||||
|
||||
@@ -719,9 +719,15 @@ static void __init cdce_clk_init(void)
|
||||
}
|
||||
}
|
||||
|
||||
#define DM6467T_EVM_REF_FREQ 33000000
|
||||
|
||||
static void __init davinci_map_io(void)
|
||||
{
|
||||
dm646x_init();
|
||||
|
||||
if (machine_is_davinci_dm6467tevm())
|
||||
davinci_set_refclk_rate(DM6467T_EVM_REF_FREQ);
|
||||
|
||||
cdce_clk_init();
|
||||
}
|
||||
|
||||
@@ -785,17 +791,6 @@ static __init void evm_init(void)
|
||||
soc_info->emac_pdata->phy_id = DM646X_EVM_PHY_ID;
|
||||
}
|
||||
|
||||
#define DM646X_EVM_REF_FREQ 27000000
|
||||
#define DM6467T_EVM_REF_FREQ 33000000
|
||||
|
||||
void __init dm646x_board_setup_refclk(struct clk *clk)
|
||||
{
|
||||
if (machine_is_davinci_dm6467tevm())
|
||||
clk->rate = DM6467T_EVM_REF_FREQ;
|
||||
else
|
||||
clk->rate = DM646X_EVM_REF_FREQ;
|
||||
}
|
||||
|
||||
MACHINE_START(DAVINCI_DM6467_EVM, "DaVinci DM646x EVM")
|
||||
.boot_params = (0x80000100),
|
||||
.map_io = davinci_map_io,
|
||||
|
||||
@@ -368,6 +368,12 @@ static unsigned long clk_leafclk_recalc(struct clk *clk)
|
||||
return clk->parent->rate;
|
||||
}
|
||||
|
||||
int davinci_simple_set_rate(struct clk *clk, unsigned long rate)
|
||||
{
|
||||
clk->rate = rate;
|
||||
return 0;
|
||||
}
|
||||
|
||||
static unsigned long clk_pllclk_recalc(struct clk *clk)
|
||||
{
|
||||
u32 ctrl, mult = 1, prediv = 1, postdiv = 1;
|
||||
@@ -506,6 +512,38 @@ int davinci_set_pllrate(struct pll_data *pll, unsigned int prediv,
|
||||
}
|
||||
EXPORT_SYMBOL(davinci_set_pllrate);
|
||||
|
||||
/**
|
||||
* davinci_set_refclk_rate() - Set the reference clock rate
|
||||
* @rate: The new rate.
|
||||
*
|
||||
* Sets the reference clock rate to a given value. This will most likely
|
||||
* result in the entire clock tree getting updated.
|
||||
*
|
||||
* This is used to support boards which use a reference clock different
|
||||
* than that used by default in <soc>.c file. The reference clock rate
|
||||
* should be updated early in the boot process; ideally soon after the
|
||||
* clock tree has been initialized once with the default reference clock
|
||||
* rate (davinci_common_init()).
|
||||
*
|
||||
* Returns 0 on success, error otherwise.
|
||||
*/
|
||||
int davinci_set_refclk_rate(unsigned long rate)
|
||||
{
|
||||
struct clk *refclk;
|
||||
|
||||
refclk = clk_get(NULL, "ref");
|
||||
if (IS_ERR(refclk)) {
|
||||
pr_err("%s: failed to get reference clock.\n", __func__);
|
||||
return PTR_ERR(refclk);
|
||||
}
|
||||
|
||||
clk_set_rate(refclk, rate);
|
||||
|
||||
clk_put(refclk);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
int __init davinci_clk_init(struct clk_lookup *clocks)
|
||||
{
|
||||
struct clk_lookup *c;
|
||||
|
||||
@@ -123,6 +123,8 @@ int davinci_clk_init(struct clk_lookup *clocks);
|
||||
int davinci_set_pllrate(struct pll_data *pll, unsigned int prediv,
|
||||
unsigned int mult, unsigned int postdiv);
|
||||
int davinci_set_sysclk_rate(struct clk *clk, unsigned long rate);
|
||||
int davinci_set_refclk_rate(unsigned long rate);
|
||||
int davinci_simple_set_rate(struct clk *clk, unsigned long rate);
|
||||
|
||||
extern struct platform_device davinci_wdt_device;
|
||||
extern void davinci_watchdog_reset(struct platform_device *);
|
||||
|
||||
@@ -43,6 +43,7 @@
|
||||
/*
|
||||
* Device specific clocks
|
||||
*/
|
||||
#define DM646X_REF_FREQ 27000000
|
||||
#define DM646X_AUX_FREQ 24000000
|
||||
|
||||
static struct pll_data pll1_data = {
|
||||
@@ -57,6 +58,8 @@ static struct pll_data pll2_data = {
|
||||
|
||||
static struct clk ref_clk = {
|
||||
.name = "ref_clk",
|
||||
.rate = DM646X_REF_FREQ,
|
||||
.set_rate = davinci_simple_set_rate,
|
||||
};
|
||||
|
||||
static struct clk aux_clkin = {
|
||||
@@ -902,7 +905,6 @@ int __init dm646x_init_edma(struct edma_rsv_info *rsv)
|
||||
|
||||
void __init dm646x_init(void)
|
||||
{
|
||||
dm646x_board_setup_refclk(&ref_clk);
|
||||
davinci_common_init(&davinci_soc_info_dm646x);
|
||||
}
|
||||
|
||||
|
||||
@@ -15,7 +15,6 @@
|
||||
#include <mach/asp.h>
|
||||
#include <linux/i2c.h>
|
||||
#include <linux/videodev2.h>
|
||||
#include <linux/clk.h>
|
||||
#include <linux/davinci_emac.h>
|
||||
|
||||
#define DM646X_EMAC_BASE (0x01C80000)
|
||||
@@ -31,7 +30,6 @@
|
||||
void __init dm646x_init(void);
|
||||
void __init dm646x_init_mcasp0(struct snd_platform_data *pdata);
|
||||
void __init dm646x_init_mcasp1(struct snd_platform_data *pdata);
|
||||
void __init dm646x_board_setup_refclk(struct clk *clk);
|
||||
int __init dm646x_init_edma(struct edma_rsv_info *rsv);
|
||||
|
||||
void dm646x_video_init(void);
|
||||
|
||||
@@ -30,47 +30,47 @@
|
||||
#define DAVINCI_PWR_SLEEP_CNTRL_BASE 0x01C41000
|
||||
|
||||
/* Power and Sleep Controller (PSC) Domains */
|
||||
#define DAVINCI_GPSC_ARMDOMAIN 0
|
||||
#define DAVINCI_GPSC_DSPDOMAIN 1
|
||||
#define DAVINCI_GPSC_ARMDOMAIN 0
|
||||
#define DAVINCI_GPSC_DSPDOMAIN 1
|
||||
|
||||
#define DAVINCI_LPSC_VPSSMSTR 0
|
||||
#define DAVINCI_LPSC_VPSSSLV 1
|
||||
#define DAVINCI_LPSC_TPCC 2
|
||||
#define DAVINCI_LPSC_TPTC0 3
|
||||
#define DAVINCI_LPSC_TPTC1 4
|
||||
#define DAVINCI_LPSC_EMAC 5
|
||||
#define DAVINCI_LPSC_EMAC_WRAPPER 6
|
||||
#define DAVINCI_LPSC_USB 9
|
||||
#define DAVINCI_LPSC_ATA 10
|
||||
#define DAVINCI_LPSC_VLYNQ 11
|
||||
#define DAVINCI_LPSC_UHPI 12
|
||||
#define DAVINCI_LPSC_DDR_EMIF 13
|
||||
#define DAVINCI_LPSC_AEMIF 14
|
||||
#define DAVINCI_LPSC_MMC_SD 15
|
||||
#define DAVINCI_LPSC_McBSP 17
|
||||
#define DAVINCI_LPSC_I2C 18
|
||||
#define DAVINCI_LPSC_UART0 19
|
||||
#define DAVINCI_LPSC_UART1 20
|
||||
#define DAVINCI_LPSC_UART2 21
|
||||
#define DAVINCI_LPSC_SPI 22
|
||||
#define DAVINCI_LPSC_PWM0 23
|
||||
#define DAVINCI_LPSC_PWM1 24
|
||||
#define DAVINCI_LPSC_PWM2 25
|
||||
#define DAVINCI_LPSC_GPIO 26
|
||||
#define DAVINCI_LPSC_TIMER0 27
|
||||
#define DAVINCI_LPSC_TIMER1 28
|
||||
#define DAVINCI_LPSC_TIMER2 29
|
||||
#define DAVINCI_LPSC_SYSTEM_SUBSYS 30
|
||||
#define DAVINCI_LPSC_ARM 31
|
||||
#define DAVINCI_LPSC_SCR2 32
|
||||
#define DAVINCI_LPSC_SCR3 33
|
||||
#define DAVINCI_LPSC_SCR4 34
|
||||
#define DAVINCI_LPSC_CROSSBAR 35
|
||||
#define DAVINCI_LPSC_CFG27 36
|
||||
#define DAVINCI_LPSC_CFG3 37
|
||||
#define DAVINCI_LPSC_CFG5 38
|
||||
#define DAVINCI_LPSC_GEM 39
|
||||
#define DAVINCI_LPSC_IMCOP 40
|
||||
#define DAVINCI_LPSC_VPSSMSTR 0
|
||||
#define DAVINCI_LPSC_VPSSSLV 1
|
||||
#define DAVINCI_LPSC_TPCC 2
|
||||
#define DAVINCI_LPSC_TPTC0 3
|
||||
#define DAVINCI_LPSC_TPTC1 4
|
||||
#define DAVINCI_LPSC_EMAC 5
|
||||
#define DAVINCI_LPSC_EMAC_WRAPPER 6
|
||||
#define DAVINCI_LPSC_USB 9
|
||||
#define DAVINCI_LPSC_ATA 10
|
||||
#define DAVINCI_LPSC_VLYNQ 11
|
||||
#define DAVINCI_LPSC_UHPI 12
|
||||
#define DAVINCI_LPSC_DDR_EMIF 13
|
||||
#define DAVINCI_LPSC_AEMIF 14
|
||||
#define DAVINCI_LPSC_MMC_SD 15
|
||||
#define DAVINCI_LPSC_McBSP 17
|
||||
#define DAVINCI_LPSC_I2C 18
|
||||
#define DAVINCI_LPSC_UART0 19
|
||||
#define DAVINCI_LPSC_UART1 20
|
||||
#define DAVINCI_LPSC_UART2 21
|
||||
#define DAVINCI_LPSC_SPI 22
|
||||
#define DAVINCI_LPSC_PWM0 23
|
||||
#define DAVINCI_LPSC_PWM1 24
|
||||
#define DAVINCI_LPSC_PWM2 25
|
||||
#define DAVINCI_LPSC_GPIO 26
|
||||
#define DAVINCI_LPSC_TIMER0 27
|
||||
#define DAVINCI_LPSC_TIMER1 28
|
||||
#define DAVINCI_LPSC_TIMER2 29
|
||||
#define DAVINCI_LPSC_SYSTEM_SUBSYS 30
|
||||
#define DAVINCI_LPSC_ARM 31
|
||||
#define DAVINCI_LPSC_SCR2 32
|
||||
#define DAVINCI_LPSC_SCR3 33
|
||||
#define DAVINCI_LPSC_SCR4 34
|
||||
#define DAVINCI_LPSC_CROSSBAR 35
|
||||
#define DAVINCI_LPSC_CFG27 36
|
||||
#define DAVINCI_LPSC_CFG3 37
|
||||
#define DAVINCI_LPSC_CFG5 38
|
||||
#define DAVINCI_LPSC_GEM 39
|
||||
#define DAVINCI_LPSC_IMCOP 40
|
||||
|
||||
#define DM355_LPSC_TIMER3 5
|
||||
#define DM355_LPSC_SPI1 6
|
||||
@@ -102,39 +102,39 @@
|
||||
/*
|
||||
* LPSC Assignments
|
||||
*/
|
||||
#define DM646X_LPSC_ARM 0
|
||||
#define DM646X_LPSC_C64X_CPU 1
|
||||
#define DM646X_LPSC_HDVICP0 2
|
||||
#define DM646X_LPSC_HDVICP1 3
|
||||
#define DM646X_LPSC_TPCC 4
|
||||
#define DM646X_LPSC_TPTC0 5
|
||||
#define DM646X_LPSC_TPTC1 6
|
||||
#define DM646X_LPSC_TPTC2 7
|
||||
#define DM646X_LPSC_TPTC3 8
|
||||
#define DM646X_LPSC_PCI 13
|
||||
#define DM646X_LPSC_EMAC 14
|
||||
#define DM646X_LPSC_VDCE 15
|
||||
#define DM646X_LPSC_VPSSMSTR 16
|
||||
#define DM646X_LPSC_VPSSSLV 17
|
||||
#define DM646X_LPSC_TSIF0 18
|
||||
#define DM646X_LPSC_TSIF1 19
|
||||
#define DM646X_LPSC_DDR_EMIF 20
|
||||
#define DM646X_LPSC_AEMIF 21
|
||||
#define DM646X_LPSC_McASP0 22
|
||||
#define DM646X_LPSC_McASP1 23
|
||||
#define DM646X_LPSC_CRGEN0 24
|
||||
#define DM646X_LPSC_CRGEN1 25
|
||||
#define DM646X_LPSC_UART0 26
|
||||
#define DM646X_LPSC_UART1 27
|
||||
#define DM646X_LPSC_UART2 28
|
||||
#define DM646X_LPSC_PWM0 29
|
||||
#define DM646X_LPSC_PWM1 30
|
||||
#define DM646X_LPSC_I2C 31
|
||||
#define DM646X_LPSC_SPI 32
|
||||
#define DM646X_LPSC_GPIO 33
|
||||
#define DM646X_LPSC_TIMER0 34
|
||||
#define DM646X_LPSC_TIMER1 35
|
||||
#define DM646X_LPSC_ARM_INTC 45
|
||||
#define DM646X_LPSC_ARM 0
|
||||
#define DM646X_LPSC_C64X_CPU 1
|
||||
#define DM646X_LPSC_HDVICP0 2
|
||||
#define DM646X_LPSC_HDVICP1 3
|
||||
#define DM646X_LPSC_TPCC 4
|
||||
#define DM646X_LPSC_TPTC0 5
|
||||
#define DM646X_LPSC_TPTC1 6
|
||||
#define DM646X_LPSC_TPTC2 7
|
||||
#define DM646X_LPSC_TPTC3 8
|
||||
#define DM646X_LPSC_PCI 13
|
||||
#define DM646X_LPSC_EMAC 14
|
||||
#define DM646X_LPSC_VDCE 15
|
||||
#define DM646X_LPSC_VPSSMSTR 16
|
||||
#define DM646X_LPSC_VPSSSLV 17
|
||||
#define DM646X_LPSC_TSIF0 18
|
||||
#define DM646X_LPSC_TSIF1 19
|
||||
#define DM646X_LPSC_DDR_EMIF 20
|
||||
#define DM646X_LPSC_AEMIF 21
|
||||
#define DM646X_LPSC_McASP0 22
|
||||
#define DM646X_LPSC_McASP1 23
|
||||
#define DM646X_LPSC_CRGEN0 24
|
||||
#define DM646X_LPSC_CRGEN1 25
|
||||
#define DM646X_LPSC_UART0 26
|
||||
#define DM646X_LPSC_UART1 27
|
||||
#define DM646X_LPSC_UART2 28
|
||||
#define DM646X_LPSC_PWM0 29
|
||||
#define DM646X_LPSC_PWM1 30
|
||||
#define DM646X_LPSC_I2C 31
|
||||
#define DM646X_LPSC_SPI 32
|
||||
#define DM646X_LPSC_GPIO 33
|
||||
#define DM646X_LPSC_TIMER0 34
|
||||
#define DM646X_LPSC_TIMER1 35
|
||||
#define DM646X_LPSC_ARM_INTC 45
|
||||
|
||||
/* PSC0 defines */
|
||||
#define DA8XX_LPSC0_TPCC 0
|
||||
@@ -243,7 +243,7 @@
|
||||
#define PSC_STATE_DISABLE 2
|
||||
#define PSC_STATE_ENABLE 3
|
||||
|
||||
#define MDSTAT_STATE_MASK 0x1f
|
||||
#define MDSTAT_STATE_MASK 0x1f
|
||||
|
||||
#ifndef __ASSEMBLER__
|
||||
|
||||
|
||||
@@ -110,6 +110,8 @@ config MACH_SMDKC210
|
||||
select S3C_DEV_HSMMC1
|
||||
select S3C_DEV_HSMMC2
|
||||
select S3C_DEV_HSMMC3
|
||||
select SAMSUNG_DEV_PWM
|
||||
select SAMSUNG_DEV_BACKLIGHT
|
||||
select EXYNOS4_DEV_PD
|
||||
select EXYNOS4_DEV_SYSMMU
|
||||
select EXYNOS4_SETUP_I2C1
|
||||
@@ -127,8 +129,10 @@ config MACH_SMDKV310
|
||||
select S3C_DEV_HSMMC1
|
||||
select S3C_DEV_HSMMC2
|
||||
select S3C_DEV_HSMMC3
|
||||
select SAMSUNG_DEV_BACKLIGHT
|
||||
select SAMSUNG_DEV_KEYPAD
|
||||
select EXYNOS4_DEV_PD
|
||||
select SAMSUNG_DEV_PWM
|
||||
select EXYNOS4_DEV_SYSMMU
|
||||
select EXYNOS4_SETUP_I2C1
|
||||
select EXYNOS4_SETUP_KEYPAD
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
7
arch/arm/mach-exynos4/include/mach/clkdev.h
Normal file
7
arch/arm/mach-exynos4/include/mach/clkdev.h
Normal file
@@ -0,0 +1,7 @@
|
||||
#ifndef __MACH_CLKDEV_H__
|
||||
#define __MACH_CLKDEV_H__
|
||||
|
||||
#define __clk_get(clk) ({ 1; })
|
||||
#define __clk_put(clk) do {} while (0)
|
||||
|
||||
#endif
|
||||
@@ -15,6 +15,7 @@
|
||||
#include <linux/smsc911x.h>
|
||||
#include <linux/io.h>
|
||||
#include <linux/i2c.h>
|
||||
#include <linux/pwm_backlight.h>
|
||||
|
||||
#include <asm/mach/arch.h>
|
||||
#include <asm/mach-types.h>
|
||||
@@ -27,6 +28,8 @@
|
||||
#include <plat/sdhci.h>
|
||||
#include <plat/iic.h>
|
||||
#include <plat/pd.h>
|
||||
#include <plat/gpio-cfg.h>
|
||||
#include <plat/backlight.h>
|
||||
|
||||
#include <mach/map.h>
|
||||
|
||||
@@ -191,6 +194,17 @@ static void __init smdkc210_smsc911x_init(void)
|
||||
(0x1 << S5P_SROM_BCX__TACS__SHIFT), S5P_SROM_BC1);
|
||||
}
|
||||
|
||||
/* LCD Backlight data */
|
||||
static struct samsung_bl_gpio_info smdkc210_bl_gpio_info = {
|
||||
.no = EXYNOS4_GPD0(1),
|
||||
.func = S3C_GPIO_SFN(2),
|
||||
};
|
||||
|
||||
static struct platform_pwm_backlight_data smdkc210_bl_data = {
|
||||
.pwm_id = 1,
|
||||
.pwm_period_ns = 1000,
|
||||
};
|
||||
|
||||
static void __init smdkc210_map_io(void)
|
||||
{
|
||||
s5p_init_io(NULL, 0, S5P_VA_CHIPID);
|
||||
@@ -210,6 +224,8 @@ static void __init smdkc210_machine_init(void)
|
||||
s3c_sdhci2_set_platdata(&smdkc210_hsmmc2_pdata);
|
||||
s3c_sdhci3_set_platdata(&smdkc210_hsmmc3_pdata);
|
||||
|
||||
samsung_bl_set(&smdkc210_bl_gpio_info, &smdkc210_bl_data);
|
||||
|
||||
platform_add_devices(smdkc210_devices, ARRAY_SIZE(smdkc210_devices));
|
||||
}
|
||||
|
||||
|
||||
@@ -16,6 +16,7 @@
|
||||
#include <linux/io.h>
|
||||
#include <linux/i2c.h>
|
||||
#include <linux/input.h>
|
||||
#include <linux/pwm_backlight.h>
|
||||
|
||||
#include <asm/mach/arch.h>
|
||||
#include <asm/mach-types.h>
|
||||
@@ -29,6 +30,8 @@
|
||||
#include <plat/sdhci.h>
|
||||
#include <plat/iic.h>
|
||||
#include <plat/pd.h>
|
||||
#include <plat/gpio-cfg.h>
|
||||
#include <plat/backlight.h>
|
||||
|
||||
#include <mach/map.h>
|
||||
|
||||
@@ -209,6 +212,17 @@ static void __init smdkv310_smsc911x_init(void)
|
||||
(0x1 << S5P_SROM_BCX__TACS__SHIFT), S5P_SROM_BC1);
|
||||
}
|
||||
|
||||
/* LCD Backlight data */
|
||||
static struct samsung_bl_gpio_info smdkv310_bl_gpio_info = {
|
||||
.no = EXYNOS4_GPD0(1),
|
||||
.func = S3C_GPIO_SFN(2),
|
||||
};
|
||||
|
||||
static struct platform_pwm_backlight_data smdkv310_bl_data = {
|
||||
.pwm_id = 1,
|
||||
.pwm_period_ns = 1000,
|
||||
};
|
||||
|
||||
static void __init smdkv310_map_io(void)
|
||||
{
|
||||
s5p_init_io(NULL, 0, S5P_VA_CHIPID);
|
||||
@@ -230,6 +244,8 @@ static void __init smdkv310_machine_init(void)
|
||||
|
||||
samsung_keypad_set_platdata(&smdkv310_keypad_data);
|
||||
|
||||
samsung_bl_set(&smdkv310_bl_gpio_info, &smdkv310_bl_data);
|
||||
|
||||
platform_add_devices(smdkv310_devices, ARRAY_SIZE(smdkv310_devices));
|
||||
}
|
||||
|
||||
|
||||
@@ -167,6 +167,7 @@ config MACH_EUKREA_MBIMXSD25_BASEBOARD
|
||||
bool "Eukrea MBIMXSD development board"
|
||||
select IMX_HAVE_PLATFORM_GPIO_KEYS
|
||||
select IMX_HAVE_PLATFORM_IMX_SSI
|
||||
select LEDS_GPIO_REGISTER
|
||||
help
|
||||
This adds board specific devices that can be found on Eukrea's
|
||||
MBIMXSD evaluation board.
|
||||
@@ -265,6 +266,7 @@ config MACH_EUKREA_MBIMX27_BASEBOARD
|
||||
select IMX_HAVE_PLATFORM_IMX_UART
|
||||
select IMX_HAVE_PLATFORM_MXC_MMC
|
||||
select IMX_HAVE_PLATFORM_SPI_IMX
|
||||
select LEDS_GPIO_REGISTER
|
||||
help
|
||||
This adds board specific devices that can be found on Eukrea's
|
||||
MBIMX27 evaluation board.
|
||||
@@ -403,6 +405,7 @@ config MACH_MX31LITE
|
||||
select IMX_HAVE_PLATFORM_MXC_NAND
|
||||
select IMX_HAVE_PLATFORM_MXC_RTC
|
||||
select IMX_HAVE_PLATFORM_SPI_IMX
|
||||
select LEDS_GPIO_REGISTER
|
||||
help
|
||||
Include support for MX31 LITEKIT platform. This includes specific
|
||||
configurations for the board and its peripherals.
|
||||
@@ -471,6 +474,7 @@ config MACH_MX31MOBOARD
|
||||
select IMX_HAVE_PLATFORM_MXC_EHCI
|
||||
select IMX_HAVE_PLATFORM_MXC_MMC
|
||||
select IMX_HAVE_PLATFORM_SPI_IMX
|
||||
select LEDS_GPIO_REGISTER
|
||||
select MXC_ULPI if USB_ULPI
|
||||
help
|
||||
Include support for mx31moboard platform. This includes specific
|
||||
@@ -577,6 +581,7 @@ config MACH_EUKREA_MBIMXSD35_BASEBOARD
|
||||
select IMX_HAVE_PLATFORM_GPIO_KEYS
|
||||
select IMX_HAVE_PLATFORM_IMX_SSI
|
||||
select IMX_HAVE_PLATFORM_IPU_CORE
|
||||
select LEDS_GPIO_REGISTER
|
||||
help
|
||||
This adds board specific devices that can be found on Eukrea's
|
||||
MBIMXSD evaluation board.
|
||||
|
||||
@@ -476,7 +476,6 @@ void imx_dma_enable(int channel)
|
||||
imx_dmav1_writel(imx_dmav1_readl(DMA_CCR(channel)) | CCR_CEN |
|
||||
CCR_ACRPT, DMA_CCR(channel));
|
||||
|
||||
#ifdef CONFIG_ARCH_MX2
|
||||
if ((cpu_is_mx21() || cpu_is_mx27()) &&
|
||||
imxdma->sg && imx_dma_hw_chain(imxdma)) {
|
||||
imxdma->sg = sg_next(imxdma->sg);
|
||||
@@ -488,7 +487,6 @@ void imx_dma_enable(int channel)
|
||||
DMA_CCR(channel));
|
||||
}
|
||||
}
|
||||
#endif
|
||||
imxdma->in_use = 1;
|
||||
|
||||
local_irq_restore(flags);
|
||||
@@ -519,7 +517,6 @@ void imx_dma_disable(int channel)
|
||||
}
|
||||
EXPORT_SYMBOL(imx_dma_disable);
|
||||
|
||||
#ifdef CONFIG_ARCH_MX2
|
||||
static void imx_dma_watchdog(unsigned long chno)
|
||||
{
|
||||
struct imx_dma_channel *imxdma = &imx_dma_channels[chno];
|
||||
@@ -531,7 +528,6 @@ static void imx_dma_watchdog(unsigned long chno)
|
||||
if (imxdma->err_handler)
|
||||
imxdma->err_handler(chno, imxdma->data, IMX_DMA_ERR_TIMEOUT);
|
||||
}
|
||||
#endif
|
||||
|
||||
static irqreturn_t dma_err_handler(int irq, void *dev_id)
|
||||
{
|
||||
@@ -655,10 +651,8 @@ static irqreturn_t dma_irq_handler(int irq, void *dev_id)
|
||||
{
|
||||
int i, disr;
|
||||
|
||||
#ifdef CONFIG_ARCH_MX2
|
||||
if (cpu_is_mx21() || cpu_is_mx27())
|
||||
dma_err_handler(irq, dev_id);
|
||||
#endif
|
||||
|
||||
disr = imx_dmav1_readl(DMA_DISR);
|
||||
|
||||
@@ -704,7 +698,6 @@ int imx_dma_request(int channel, const char *name)
|
||||
imxdma->name = name;
|
||||
local_irq_restore(flags); /* request_irq() can block */
|
||||
|
||||
#ifdef CONFIG_ARCH_MX2
|
||||
if (cpu_is_mx21() || cpu_is_mx27()) {
|
||||
ret = request_irq(MX2x_INT_DMACH0 + channel,
|
||||
dma_irq_handler, 0, "DMA", NULL);
|
||||
@@ -718,7 +711,6 @@ int imx_dma_request(int channel, const char *name)
|
||||
imxdma->watchdog.function = &imx_dma_watchdog;
|
||||
imxdma->watchdog.data = channel;
|
||||
}
|
||||
#endif
|
||||
|
||||
return ret;
|
||||
}
|
||||
@@ -745,10 +737,8 @@ void imx_dma_free(int channel)
|
||||
imx_dma_disable(channel);
|
||||
imxdma->name = NULL;
|
||||
|
||||
#ifdef CONFIG_ARCH_MX2
|
||||
if (cpu_is_mx21() || cpu_is_mx27())
|
||||
free_irq(MX2x_INT_DMACH0 + channel, NULL);
|
||||
#endif
|
||||
|
||||
local_irq_restore(flags);
|
||||
}
|
||||
@@ -804,21 +794,13 @@ static int __init imx_dma_init(void)
|
||||
int ret = 0;
|
||||
int i;
|
||||
|
||||
#ifdef CONFIG_ARCH_MX1
|
||||
if (cpu_is_mx1())
|
||||
imx_dmav1_baseaddr = MX1_IO_ADDRESS(MX1_DMA_BASE_ADDR);
|
||||
else
|
||||
#endif
|
||||
#ifdef CONFIG_MACH_MX21
|
||||
if (cpu_is_mx21())
|
||||
else if (cpu_is_mx21())
|
||||
imx_dmav1_baseaddr = MX21_IO_ADDRESS(MX21_DMA_BASE_ADDR);
|
||||
else
|
||||
#endif
|
||||
#ifdef CONFIG_MACH_MX27
|
||||
if (cpu_is_mx27())
|
||||
else if (cpu_is_mx27())
|
||||
imx_dmav1_baseaddr = MX27_IO_ADDRESS(MX27_DMA_BASE_ADDR);
|
||||
else
|
||||
#endif
|
||||
return 0;
|
||||
|
||||
dma_clk = clk_get(NULL, "dma");
|
||||
@@ -829,7 +811,6 @@ static int __init imx_dma_init(void)
|
||||
/* reset DMA module */
|
||||
imx_dmav1_writel(DCR_DRST, DMA_DCR);
|
||||
|
||||
#ifdef CONFIG_ARCH_MX1
|
||||
if (cpu_is_mx1()) {
|
||||
ret = request_irq(MX1_DMA_INT, dma_irq_handler, 0, "DMA", NULL);
|
||||
if (ret) {
|
||||
@@ -844,7 +825,7 @@ static int __init imx_dma_init(void)
|
||||
return ret;
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
/* enable DMA module */
|
||||
imx_dmav1_writel(DCR_DEN, DMA_DCR);
|
||||
|
||||
|
||||
@@ -112,7 +112,7 @@ eukrea_mbimx27_keymap_data __initconst = {
|
||||
.keymap_size = ARRAY_SIZE(eukrea_mbimx27_keymap),
|
||||
};
|
||||
|
||||
static struct gpio_led gpio_leds[] = {
|
||||
static const struct gpio_led eukrea_mbimx27_gpio_leds[] __initconst = {
|
||||
{
|
||||
.name = "led1",
|
||||
.default_trigger = "heartbeat",
|
||||
@@ -127,17 +127,10 @@ static struct gpio_led gpio_leds[] = {
|
||||
},
|
||||
};
|
||||
|
||||
static struct gpio_led_platform_data gpio_led_info = {
|
||||
.leds = gpio_leds,
|
||||
.num_leds = ARRAY_SIZE(gpio_leds),
|
||||
};
|
||||
|
||||
static struct platform_device leds_gpio = {
|
||||
.name = "leds-gpio",
|
||||
.id = -1,
|
||||
.dev = {
|
||||
.platform_data = &gpio_led_info,
|
||||
},
|
||||
static const struct gpio_led_platform_data
|
||||
eukrea_mbimx27_gpio_led_info __initconst = {
|
||||
.leds = eukrea_mbimx27_gpio_leds,
|
||||
.num_leds = ARRAY_SIZE(eukrea_mbimx27_gpio_leds),
|
||||
};
|
||||
|
||||
static struct imx_fb_videomode eukrea_mbimx27_modes[] = {
|
||||
@@ -293,10 +286,6 @@ static struct i2c_board_info eukrea_mbimx27_i2c_devices[] = {
|
||||
},
|
||||
};
|
||||
|
||||
static struct platform_device *platform_devices[] __initdata = {
|
||||
&leds_gpio,
|
||||
};
|
||||
|
||||
static const struct imxmmc_platform_data sdhc_pdata __initconst = {
|
||||
.dat3_card_detect = 1,
|
||||
};
|
||||
@@ -377,5 +366,5 @@ void __init eukrea_mbimx27_baseboard_init(void)
|
||||
|
||||
imx27_add_imx_keypad(&eukrea_mbimx27_keymap_data);
|
||||
|
||||
platform_add_devices(platform_devices, ARRAY_SIZE(platform_devices));
|
||||
gpio_led_register_device(-1, &eukrea_mbimx27_gpio_led_info);
|
||||
}
|
||||
|
||||
@@ -173,7 +173,7 @@ static struct platform_device eukrea_mbimxsd_lcd_powerdev = {
|
||||
.dev.platform_data = &eukrea_mbimxsd_lcd_power_data,
|
||||
};
|
||||
|
||||
static struct gpio_led eukrea_mbimxsd_leds[] = {
|
||||
static const struct gpio_led eukrea_mbimxsd_leds[] __initconst = {
|
||||
{
|
||||
.name = "led1",
|
||||
.default_trigger = "heartbeat",
|
||||
@@ -182,19 +182,12 @@ static struct gpio_led eukrea_mbimxsd_leds[] = {
|
||||
},
|
||||
};
|
||||
|
||||
static struct gpio_led_platform_data eukrea_mbimxsd_led_info = {
|
||||
static const struct gpio_led_platform_data
|
||||
eukrea_mbimxsd_led_info __initconst = {
|
||||
.leds = eukrea_mbimxsd_leds,
|
||||
.num_leds = ARRAY_SIZE(eukrea_mbimxsd_leds),
|
||||
};
|
||||
|
||||
static struct platform_device eukrea_mbimxsd_leds_gpio = {
|
||||
.name = "leds-gpio",
|
||||
.id = -1,
|
||||
.dev = {
|
||||
.platform_data = &eukrea_mbimxsd_led_info,
|
||||
},
|
||||
};
|
||||
|
||||
static struct gpio_keys_button eukrea_mbimxsd_gpio_buttons[] = {
|
||||
{
|
||||
.gpio = GPIO_SWITCH1,
|
||||
@@ -212,7 +205,6 @@ static const struct gpio_keys_platform_data
|
||||
};
|
||||
|
||||
static struct platform_device *platform_devices[] __initdata = {
|
||||
&eukrea_mbimxsd_leds_gpio,
|
||||
&eukrea_mbimxsd_lcd_powerdev,
|
||||
};
|
||||
|
||||
@@ -287,5 +279,6 @@ void __init eukrea_mbimxsd25_baseboard_init(void)
|
||||
ARRAY_SIZE(eukrea_mbimxsd_i2c_devices));
|
||||
|
||||
platform_add_devices(platform_devices, ARRAY_SIZE(platform_devices));
|
||||
gpio_led_register_device(-1, &eukrea_mbimxsd_led_info);
|
||||
imx_add_gpio_keys(&eukrea_mbimxsd_button_data);
|
||||
}
|
||||
|
||||
@@ -193,19 +193,12 @@ static struct gpio_led eukrea_mbimxsd_leds[] = {
|
||||
},
|
||||
};
|
||||
|
||||
static struct gpio_led_platform_data eukrea_mbimxsd_led_info = {
|
||||
static const struct gpio_led_platform_data
|
||||
eukrea_mbimxsd_led_info __initconst = {
|
||||
.leds = eukrea_mbimxsd_leds,
|
||||
.num_leds = ARRAY_SIZE(eukrea_mbimxsd_leds),
|
||||
};
|
||||
|
||||
static struct platform_device eukrea_mbimxsd_leds_gpio = {
|
||||
.name = "leds-gpio",
|
||||
.id = -1,
|
||||
.dev = {
|
||||
.platform_data = &eukrea_mbimxsd_led_info,
|
||||
},
|
||||
};
|
||||
|
||||
static struct gpio_keys_button eukrea_mbimxsd_gpio_buttons[] = {
|
||||
{
|
||||
.gpio = GPIO_SWITCH1,
|
||||
@@ -223,7 +216,6 @@ static const struct gpio_keys_platform_data
|
||||
};
|
||||
|
||||
static struct platform_device *platform_devices[] __initdata = {
|
||||
&eukrea_mbimxsd_leds_gpio,
|
||||
&eukrea_mbimxsd_lcd_powerdev,
|
||||
};
|
||||
|
||||
@@ -299,5 +291,6 @@ void __init eukrea_mbimxsd35_baseboard_init(void)
|
||||
ARRAY_SIZE(eukrea_mbimxsd_i2c_devices));
|
||||
|
||||
platform_add_devices(platform_devices, ARRAY_SIZE(platform_devices));
|
||||
gpio_led_register_device(-1, &eukrea_mbimxsd_led_info);
|
||||
imx_add_gpio_keys(&eukrea_mbimxsd_button_data);
|
||||
}
|
||||
|
||||
@@ -99,11 +99,6 @@ static struct platform_device dm9000x_device = {
|
||||
}
|
||||
};
|
||||
|
||||
/* --- SERIAL RESSOURCE --- */
|
||||
static const struct imxuart_platform_data uart0_pdata __initconst = {
|
||||
.flags = 0,
|
||||
};
|
||||
|
||||
static const struct imxuart_platform_data uart1_pdata __initconst = {
|
||||
.flags = IMXUART_HAVE_RTSCTS,
|
||||
};
|
||||
@@ -121,7 +116,7 @@ static void __init apf9328_init(void)
|
||||
ARRAY_SIZE(apf9328_pins),
|
||||
"APF9328");
|
||||
|
||||
imx1_add_imx_uart0(&uart0_pdata);
|
||||
imx1_add_imx_uart0(NULL);
|
||||
imx1_add_imx_uart1(&uart1_pdata);
|
||||
|
||||
platform_add_devices(devices, ARRAY_SIZE(devices));
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user