You've already forked linux-apfs
mirror of
https://github.com/linux-apfs/linux-apfs.git
synced 2026-05-01 15:00:59 -07:00
Merge branch 'samsung/exynos-multiplatform' into next/drivers
Merging this into the next/drivers branch avoids a number of pointless conflicts with code changed here. Signed-off-by: Arnd Bergmann <arnd@arndb.de>
This commit is contained in:
+1
-9
@@ -860,19 +860,11 @@ config ARCH_S5PV210
|
||||
help
|
||||
Samsung S5PV210/S5PC110 series based systems
|
||||
|
||||
config ARCH_EXYNOS
|
||||
config ARCH_EXYNOS_SINGLE
|
||||
bool "Samsung EXYNOS"
|
||||
select ARCH_HAS_CPUFREQ
|
||||
select ARCH_HAS_HOLES_MEMORYMODEL
|
||||
select ARCH_SPARSEMEM_ENABLE
|
||||
select CLKDEV_LOOKUP
|
||||
select COMMON_CLK
|
||||
select CPU_V7
|
||||
select GENERIC_CLOCKEVENTS
|
||||
select HAVE_CLK
|
||||
select HAVE_S3C2410_I2C if I2C
|
||||
select HAVE_S3C2410_WATCHDOG if WATCHDOG
|
||||
select HAVE_S3C_RTC if RTC_CLASS
|
||||
select NEED_MACH_GPIO_H
|
||||
select NEED_MACH_MEMORY_H
|
||||
help
|
||||
|
||||
@@ -330,6 +330,7 @@ choice
|
||||
|
||||
config DEBUG_S3C_UART0
|
||||
depends on PLAT_SAMSUNG
|
||||
select DEBUG_EXYNOS_UART if ARCH_EXYNOS
|
||||
bool "Use S3C UART 0 for low-level debug"
|
||||
help
|
||||
Say Y here if you want the debug print routines to direct
|
||||
@@ -341,6 +342,7 @@ choice
|
||||
|
||||
config DEBUG_S3C_UART1
|
||||
depends on PLAT_SAMSUNG
|
||||
select DEBUG_EXYNOS_UART if ARCH_EXYNOS
|
||||
bool "Use S3C UART 1 for low-level debug"
|
||||
help
|
||||
Say Y here if you want the debug print routines to direct
|
||||
@@ -352,6 +354,7 @@ choice
|
||||
|
||||
config DEBUG_S3C_UART2
|
||||
depends on PLAT_SAMSUNG
|
||||
select DEBUG_EXYNOS_UART if ARCH_EXYNOS
|
||||
bool "Use S3C UART 2 for low-level debug"
|
||||
help
|
||||
Say Y here if you want the debug print routines to direct
|
||||
@@ -363,6 +366,7 @@ choice
|
||||
|
||||
config DEBUG_S3C_UART3
|
||||
depends on PLAT_SAMSUNG && ARCH_EXYNOS
|
||||
select DEBUG_EXYNOS_UART
|
||||
bool "Use S3C UART 3 for low-level debug"
|
||||
help
|
||||
Say Y here if you want the debug print routines to direct
|
||||
@@ -485,6 +489,9 @@ choice
|
||||
|
||||
endchoice
|
||||
|
||||
config DEBUG_EXYNOS_UART
|
||||
bool
|
||||
|
||||
config DEBUG_IMX_UART_PORT
|
||||
int "i.MX Debug UART Port Selection" if DEBUG_IMX1_UART || \
|
||||
DEBUG_IMX25_UART || \
|
||||
@@ -580,6 +587,7 @@ endchoice
|
||||
|
||||
config DEBUG_LL_INCLUDE
|
||||
string
|
||||
default "debug/exynos.S" if DEBUG_EXYNOS_UART
|
||||
default "debug/icedcc.S" if DEBUG_ICEDCC
|
||||
default "debug/imx.S" if DEBUG_IMX1_UART || \
|
||||
DEBUG_IMX25_UART || \
|
||||
|
||||
@@ -4,7 +4,7 @@ CONFIG_KALLSYMS_ALL=y
|
||||
CONFIG_MODULES=y
|
||||
CONFIG_MODULE_UNLOAD=y
|
||||
# CONFIG_BLK_DEV_BSG is not set
|
||||
CONFIG_ARCH_EXYNOS=y
|
||||
CONFIG_ARCH_EXYNOS_SINGLE=y
|
||||
CONFIG_S3C_LOWLEVEL_UART_PORT=1
|
||||
CONFIG_MACH_SMDKC210=y
|
||||
CONFIG_MACH_ARMLEX4210=y
|
||||
|
||||
@@ -1,10 +1,7 @@
|
||||
/* linux/arch/arm/mach-exynos4/include/mach/debug-macro.S
|
||||
*
|
||||
/*
|
||||
* Copyright (c) 2010-2011 Samsung Electronics Co., Ltd.
|
||||
* http://www.samsung.com
|
||||
*
|
||||
* Based on arch/arm/mach-s3c6400/include/mach/debug-macro.S
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License version 2 as
|
||||
* published by the Free Software Foundation.
|
||||
@@ -12,7 +9,10 @@
|
||||
|
||||
/* pull in the relevant register and map files. */
|
||||
|
||||
#include <mach/map.h>
|
||||
#define S3C_ADDR_BASE 0xF6000000
|
||||
#define S3C_VA_UART S3C_ADDR_BASE + 0x01000000
|
||||
#define EXYNOS4_PA_UART 0x13800000
|
||||
#define EXYNOS5_PA_UART 0x12C00000
|
||||
|
||||
/* note, for the boot process to work we have to keep the UART
|
||||
* virtual address aligned to an 1MiB boundary for the L1
|
||||
@@ -36,4 +36,4 @@
|
||||
#define fifo_full fifo_full_s5pv210
|
||||
#define fifo_level fifo_level_s5pv210
|
||||
|
||||
#include <plat/debug-macro.S>
|
||||
#include <debug/samsung.S>
|
||||
@@ -7,6 +7,21 @@
|
||||
|
||||
# Configuration options for the EXYNOS4
|
||||
|
||||
config ARCH_EXYNOS
|
||||
# TODO: make this visible after all drivers are converted
|
||||
bool "Samsung EXYNOS" if ARCH_MULTI_V7 && BROKEN
|
||||
default ARCH_EXYNOS_SINGLE
|
||||
select ARCH_HAS_CPUFREQ
|
||||
select CLKDEV_LOOKUP
|
||||
select COMMON_CLK
|
||||
select CPU_V7
|
||||
select GENERIC_CLOCKEVENTS
|
||||
select HAVE_CLK
|
||||
select HAVE_S3C2410_I2C if I2C
|
||||
select HAVE_S3C_RTC if RTC_CLASS
|
||||
help
|
||||
Support for SAMSUNG's EXYNOS SoCs (EXYNOS4/5)
|
||||
|
||||
if ARCH_EXYNOS
|
||||
|
||||
menu "SAMSUNG EXYNOS SoCs Support"
|
||||
@@ -19,6 +34,9 @@ config ARCH_EXYNOS4
|
||||
help
|
||||
Samsung EXYNOS4 SoCs based systems
|
||||
|
||||
config ARCH_EXYNOS4_SINGLE
|
||||
def_bool ARCH_EXYNOS4 && ARCH_EXYNOS_SINGLE
|
||||
|
||||
config ARCH_EXYNOS5
|
||||
bool "SAMSUNG EXYNOS5"
|
||||
select HAVE_SMP
|
||||
@@ -35,7 +53,7 @@ config CPU_EXYNOS4210
|
||||
select PM_GENERIC_DOMAINS
|
||||
select S5P_PM if PM
|
||||
select S5P_SLEEP if PM
|
||||
select SAMSUNG_DMADEV
|
||||
select SAMSUNG_DMADEV if ARCH_EXYNOS_SINGLE
|
||||
help
|
||||
Enable EXYNOS4210 CPU support
|
||||
|
||||
@@ -45,7 +63,7 @@ config SOC_EXYNOS4212
|
||||
depends on ARCH_EXYNOS4
|
||||
select S5P_PM if PM
|
||||
select S5P_SLEEP if PM
|
||||
select SAMSUNG_DMADEV
|
||||
select SAMSUNG_DMADEV if ARCH_EXYNOS_SINGLE
|
||||
help
|
||||
Enable EXYNOS4212 SoC support
|
||||
|
||||
@@ -53,7 +71,7 @@ config SOC_EXYNOS4412
|
||||
bool "SAMSUNG EXYNOS4412"
|
||||
default y
|
||||
depends on ARCH_EXYNOS4
|
||||
select SAMSUNG_DMADEV
|
||||
select SAMSUNG_DMADEV if ARCH_EXYNOS_SINGLE
|
||||
help
|
||||
Enable EXYNOS4412 SoC support
|
||||
|
||||
@@ -65,7 +83,7 @@ config SOC_EXYNOS5250
|
||||
select S5P_PM if PM
|
||||
select S5P_SLEEP if PM
|
||||
select S5P_DEV_MFC
|
||||
select SAMSUNG_DMADEV
|
||||
select SAMSUNG_DMADEV if ARCH_EXYNOS_SINGLE
|
||||
help
|
||||
Enable EXYNOS5250 SoC support
|
||||
|
||||
@@ -80,6 +98,19 @@ config SOC_EXYNOS5440
|
||||
help
|
||||
Enable EXYNOS5440 SoC support
|
||||
|
||||
config EXYNOS_ATAGS
|
||||
bool "ATAGS based boot for EXYNOS (deprecated)"
|
||||
depends on !ARCH_MULTIPLATFORM
|
||||
depends on ATAGS
|
||||
default y
|
||||
help
|
||||
The EXYNOS platform is moving towards being completely probed
|
||||
through device tree. This enables support for board files using
|
||||
the traditional ATAGS boot format.
|
||||
Note that this option is not available for multiplatform builds.
|
||||
|
||||
if EXYNOS_ATAGS
|
||||
|
||||
config EXYNOS_DEV_DMA
|
||||
bool
|
||||
help
|
||||
@@ -395,6 +426,8 @@ config MACH_SMDK4412
|
||||
Machine support for Samsung SMDK4412
|
||||
endif
|
||||
|
||||
endif
|
||||
|
||||
comment "Flattened Device Tree based board for EXYNOS SoCs"
|
||||
|
||||
config MACH_EXYNOS4_DT
|
||||
|
||||
@@ -4,6 +4,7 @@
|
||||
# http://www.samsung.com/
|
||||
#
|
||||
# Licensed under GPLv2
|
||||
ccflags-$(CONFIG_ARCH_MULTIPLATFORM) += -I$(srctree)/$(src)/include -I$(srctree)/arch/arm/plat-samsung/include
|
||||
|
||||
obj-y :=
|
||||
obj-m :=
|
||||
@@ -42,12 +43,12 @@ obj-$(CONFIG_MACH_EXYNOS5_DT) += mach-exynos5-dt.o
|
||||
# device support
|
||||
|
||||
obj-y += dev-uart.o
|
||||
obj-$(CONFIG_ARCH_EXYNOS4) += dev-audio.o
|
||||
obj-$(CONFIG_ARCH_EXYNOS4_SINGLE) += dev-audio.o
|
||||
obj-$(CONFIG_EXYNOS4_DEV_AHCI) += dev-ahci.o
|
||||
obj-$(CONFIG_EXYNOS_DEV_DMA) += dma.o
|
||||
obj-$(CONFIG_EXYNOS4_DEV_USB_OHCI) += dev-ohci.o
|
||||
|
||||
obj-$(CONFIG_ARCH_EXYNOS) += setup-i2c0.o
|
||||
obj-$(CONFIG_ARCH_EXYNOS_SINGLE) += setup-i2c0.o
|
||||
obj-$(CONFIG_EXYNOS4_SETUP_FIMC) += setup-fimc.o
|
||||
obj-$(CONFIG_EXYNOS4_SETUP_FIMD0) += setup-fimd0.o
|
||||
obj-$(CONFIG_EXYNOS4_SETUP_I2C1) += setup-i2c1.o
|
||||
|
||||
@@ -361,6 +361,9 @@ static void __init exynos4_map_io(void)
|
||||
else
|
||||
iotable_init(exynos4_iodesc1, ARRAY_SIZE(exynos4_iodesc1));
|
||||
|
||||
if (!IS_ENABLED(CONFIG_EXYNOS_ATAGS))
|
||||
return
|
||||
|
||||
/* initialize device information early */
|
||||
exynos4_default_sdhci0();
|
||||
exynos4_default_sdhci1();
|
||||
@@ -546,6 +549,8 @@ static void __init exynos4_init_uarts(struct s3c2410_uartcfg *cfg, int no)
|
||||
s3c24xx_init_uartdevs("exynos4210-uart", exynos4_uart_resources, cfg, no);
|
||||
}
|
||||
|
||||
|
||||
#ifdef CONFIG_EXYNOS_ATAGS
|
||||
static void __iomem *exynos_eint_base;
|
||||
|
||||
static DEFINE_SPINLOCK(eint_lock);
|
||||
@@ -852,6 +857,7 @@ static int __init exynos_init_irq_eint(void)
|
||||
return 0;
|
||||
}
|
||||
arch_initcall(exynos_init_irq_eint);
|
||||
#endif
|
||||
|
||||
static struct resource exynos4_pmu_resource[] = {
|
||||
DEFINE_RES_IRQ(EXYNOS4_IRQ_PMU),
|
||||
|
||||
@@ -20,6 +20,7 @@
|
||||
#include <asm/mach/irq.h>
|
||||
#include <mach/hardware.h>
|
||||
#include <mach/map.h>
|
||||
#include <mach/irqs.h>
|
||||
|
||||
#include <plat/devs.h>
|
||||
|
||||
|
||||
@@ -467,7 +467,10 @@
|
||||
#define IRQ_TIMER_BASE (IRQ_GPIO_END + 64)
|
||||
|
||||
/* Set the default NR_IRQS */
|
||||
#define EXYNOS_NR_IRQS (IRQ_TIMER_BASE + IRQ_TIMER_COUNT)
|
||||
|
||||
#define NR_IRQS (IRQ_TIMER_BASE + IRQ_TIMER_COUNT)
|
||||
#ifndef CONFIG_SPARSE_IRQ
|
||||
#define NR_IRQS EXYNOS_NR_IRQS
|
||||
#endif
|
||||
|
||||
#endif /* __ASM_ARCH_IRQS_H */
|
||||
|
||||
@@ -25,6 +25,7 @@
|
||||
#include <plat/regs-srom.h>
|
||||
#include <plat/sdhci.h>
|
||||
|
||||
#include <mach/irqs.h>
|
||||
#include <mach/map.h>
|
||||
|
||||
#include "common.h"
|
||||
|
||||
@@ -53,6 +53,7 @@
|
||||
#include <plat/fimc-core.h>
|
||||
#include <plat/camport.h>
|
||||
|
||||
#include <mach/irqs.h>
|
||||
#include <mach/map.h>
|
||||
|
||||
#include "common.h"
|
||||
|
||||
@@ -46,6 +46,7 @@
|
||||
#include <plat/hdmi.h>
|
||||
|
||||
#include <mach/map.h>
|
||||
#include <mach/irqs.h>
|
||||
|
||||
#include <drm/exynos_drm.h>
|
||||
#include "common.h"
|
||||
|
||||
@@ -39,6 +39,7 @@
|
||||
#include <plat/regs-serial.h>
|
||||
#include <plat/sdhci.h>
|
||||
|
||||
#include <mach/irqs.h>
|
||||
#include <mach/map.h>
|
||||
|
||||
#include <drm/exynos_drm.h>
|
||||
|
||||
@@ -43,6 +43,7 @@
|
||||
#include <plat/clock.h>
|
||||
#include <plat/hdmi.h>
|
||||
|
||||
#include <mach/irqs.h>
|
||||
#include <mach/map.h>
|
||||
|
||||
#include <drm/exynos_drm.h>
|
||||
|
||||
@@ -19,8 +19,8 @@
|
||||
#include <linux/mmc/host.h>
|
||||
#include <linux/mmc/card.h>
|
||||
|
||||
#include <mach/gpio.h>
|
||||
#include <plat/gpio-cfg.h>
|
||||
#include <plat/regs-sdhci.h>
|
||||
#include <plat/sdhci.h>
|
||||
|
||||
void exynos4_setup_sdhci0_cfg_gpio(struct platform_device *dev, int width)
|
||||
|
||||
@@ -98,4 +98,4 @@
|
||||
|
||||
/* include the reset of the code which will do the work */
|
||||
|
||||
#include <plat/debug-macro.S>
|
||||
#include <debug/samsung.S>
|
||||
|
||||
@@ -35,4 +35,4 @@
|
||||
* will be fine with us.
|
||||
*/
|
||||
|
||||
#include <plat/debug-macro.S>
|
||||
#include <debug/samsung.S>
|
||||
|
||||
@@ -30,4 +30,4 @@
|
||||
#endif
|
||||
.endm
|
||||
|
||||
#include <plat/debug-macro.S>
|
||||
#include <debug/samsung.S>
|
||||
|
||||
@@ -36,4 +36,4 @@
|
||||
* will be fine with us.
|
||||
*/
|
||||
|
||||
#include <plat/debug-macro.S>
|
||||
#include <debug/samsung.S>
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user