Loading arch/arm/Kconfig.debug +4 −16 Original line number Diff line number Diff line Loading @@ -617,53 +617,41 @@ choice depends on PLAT_SAMSUNG select DEBUG_EXYNOS_UART if ARCH_EXYNOS select DEBUG_S3C24XX_UART if ARCH_S3C24XX bool "Use S3C UART 0 for low-level debug" bool "Use Samsung S3C UART 0 for low-level debug" help Say Y here if you want the debug print routines to direct their output to UART 0. The port must have been initialised by the boot-loader before use. The uncompressor code port configuration is now handled by CONFIG_S3C_LOWLEVEL_UART_PORT. config DEBUG_S3C_UART1 depends on PLAT_SAMSUNG select DEBUG_EXYNOS_UART if ARCH_EXYNOS select DEBUG_S3C24XX_UART if ARCH_S3C24XX bool "Use S3C UART 1 for low-level debug" bool "Use Samsung S3C UART 1 for low-level debug" help Say Y here if you want the debug print routines to direct their output to UART 1. The port must have been initialised by the boot-loader before use. The uncompressor code port configuration is now handled by CONFIG_S3C_LOWLEVEL_UART_PORT. config DEBUG_S3C_UART2 depends on PLAT_SAMSUNG select DEBUG_EXYNOS_UART if ARCH_EXYNOS select DEBUG_S3C24XX_UART if ARCH_S3C24XX bool "Use S3C UART 2 for low-level debug" bool "Use Samsung S3C UART 2 for low-level debug" help Say Y here if you want the debug print routines to direct their output to UART 2. The port must have been initialised by the boot-loader before use. The uncompressor code port configuration is now handled by CONFIG_S3C_LOWLEVEL_UART_PORT. config DEBUG_S3C_UART3 depends on PLAT_SAMSUNG && ARCH_EXYNOS select DEBUG_EXYNOS_UART bool "Use S3C UART 3 for low-level debug" bool "Use Samsung S3C UART 3 for low-level debug" help Say Y here if you want the debug print routines to direct their output to UART 3. The port must have been initialised by the boot-loader before use. The uncompressor code port configuration is now handled by CONFIG_S3C_LOWLEVEL_UART_PORT. config DEBUG_S3C2410_UART0 depends on ARCH_S3C24XX select DEBUG_S3C2410_UART Loading arch/arm/mach-exynos/common.h +1 −12 Original line number Diff line number Diff line Loading @@ -111,25 +111,14 @@ IS_SAMSUNG_CPU(exynos5800, EXYNOS5800_SOC_ID, EXYNOS5_SOC_MASK) #define soc_is_exynos5() (soc_is_exynos5250() || soc_is_exynos5410() || \ soc_is_exynos5420() || soc_is_exynos5800()) void mct_init(void __iomem *base, int irq_g0, int irq_l0, int irq_l1); struct map_desc; extern void __iomem *sysram_ns_base_addr; extern void __iomem *sysram_base_addr; void exynos_init_io(void); void exynos_restart(enum reboot_mode mode, const char *cmd); extern void __iomem *pmu_base_addr; void exynos_sysram_init(void); void exynos_cpuidle_init(void); void exynos_cpufreq_init(void); void exynos_init_late(void); void exynos_firmware_init(void); #ifdef CONFIG_PINCTRL_EXYNOS extern u32 exynos_get_eint_wake_mask(void); #else static inline u32 exynos_get_eint_wake_mask(void) { return 0xffffffff; } #endif #ifdef CONFIG_PM_SLEEP extern void __init exynos_pm_init(void); Loading arch/arm/mach-exynos/exynos.c +41 −3 Original line number Diff line number Diff line Loading @@ -19,6 +19,7 @@ #include <linux/of_platform.h> #include <linux/platform_device.h> #include <linux/pm_domain.h> #include <linux/irqchip.h> #include <asm/cacheflush.h> #include <asm/hardware/cache-l2x0.h> Loading @@ -29,6 +30,9 @@ #include "common.h" #include "mfc.h" #include "regs-pmu.h" #include "regs-sys.h" void __iomem *pmu_base_addr; static struct map_desc exynos4_iodesc[] __initdata = { { Loading Loading @@ -143,7 +147,7 @@ static struct map_desc exynos5_iodesc[] __initdata = { }, }; void exynos_restart(enum reboot_mode mode, const char *cmd) static void exynos_restart(enum reboot_mode mode, const char *cmd) { struct device_node *np; u32 val = 0x1; Loading Loading @@ -204,7 +208,7 @@ void __init exynos_sysram_init(void) } } void __init exynos_init_late(void) static void __init exynos_init_late(void) { if (of_machine_is_compatible("samsung,exynos5440")) /* to be supported later */ Loading Loading @@ -251,7 +255,7 @@ static void __init exynos_map_io(void) iotable_init(exynos5_iodesc, ARRAY_SIZE(exynos5_iodesc)); } void __init exynos_init_io(void) static void __init exynos_init_io(void) { debug_ll_io_init(); Loading @@ -263,6 +267,39 @@ void __init exynos_init_io(void) exynos_map_io(); } static const struct of_device_id exynos_dt_pmu_match[] = { { .compatible = "samsung,exynos3250-pmu" }, { .compatible = "samsung,exynos4210-pmu" }, { .compatible = "samsung,exynos4212-pmu" }, { .compatible = "samsung,exynos4412-pmu" }, { .compatible = "samsung,exynos5250-pmu" }, { .compatible = "samsung,exynos5420-pmu" }, { /*sentinel*/ }, }; static void exynos_map_pmu(void) { struct device_node *np; np = of_find_matching_node(NULL, exynos_dt_pmu_match); if (np) pmu_base_addr = of_iomap(np, 0); if (!pmu_base_addr) panic("failed to find exynos pmu register\n"); } static void __init exynos_init_irq(void) { irqchip_init(); /* * Since platsmp.c needs pmu base address by the time * DT is not unflatten so we can't use DT APIs before * init_irq */ exynos_map_pmu(); } static void __init exynos_dt_machine_init(void) { struct device_node *i2c_np; Loading Loading @@ -343,6 +380,7 @@ DT_MACHINE_START(EXYNOS_DT, "SAMSUNG EXYNOS (Flattened Device Tree)") .smp = smp_ops(exynos_smp_ops), .map_io = exynos_init_io, .init_early = exynos_firmware_init, .init_irq = exynos_init_irq, .init_machine = exynos_dt_machine_init, .init_late = exynos_init_late, .dt_compat = exynos_dt_compat, Loading arch/arm/mach-exynos/headsmp.S +0 −1 Original line number Diff line number Diff line /* * linux/arch/arm/mach-exynos4/headsmp.S * * Cloned from linux/arch/arm/mach-realview/headsmp.S * Loading arch/arm/mach-exynos/hotplug.c +1 −2 Original line number Diff line number Diff line /* linux arch/arm/mach-exynos4/hotplug.c * /* * Cloned from linux/arch/arm/mach-realview/hotplug.c * * Copyright (C) 2002 ARM Ltd. Loading Loading
arch/arm/Kconfig.debug +4 −16 Original line number Diff line number Diff line Loading @@ -617,53 +617,41 @@ choice depends on PLAT_SAMSUNG select DEBUG_EXYNOS_UART if ARCH_EXYNOS select DEBUG_S3C24XX_UART if ARCH_S3C24XX bool "Use S3C UART 0 for low-level debug" bool "Use Samsung S3C UART 0 for low-level debug" help Say Y here if you want the debug print routines to direct their output to UART 0. The port must have been initialised by the boot-loader before use. The uncompressor code port configuration is now handled by CONFIG_S3C_LOWLEVEL_UART_PORT. config DEBUG_S3C_UART1 depends on PLAT_SAMSUNG select DEBUG_EXYNOS_UART if ARCH_EXYNOS select DEBUG_S3C24XX_UART if ARCH_S3C24XX bool "Use S3C UART 1 for low-level debug" bool "Use Samsung S3C UART 1 for low-level debug" help Say Y here if you want the debug print routines to direct their output to UART 1. The port must have been initialised by the boot-loader before use. The uncompressor code port configuration is now handled by CONFIG_S3C_LOWLEVEL_UART_PORT. config DEBUG_S3C_UART2 depends on PLAT_SAMSUNG select DEBUG_EXYNOS_UART if ARCH_EXYNOS select DEBUG_S3C24XX_UART if ARCH_S3C24XX bool "Use S3C UART 2 for low-level debug" bool "Use Samsung S3C UART 2 for low-level debug" help Say Y here if you want the debug print routines to direct their output to UART 2. The port must have been initialised by the boot-loader before use. The uncompressor code port configuration is now handled by CONFIG_S3C_LOWLEVEL_UART_PORT. config DEBUG_S3C_UART3 depends on PLAT_SAMSUNG && ARCH_EXYNOS select DEBUG_EXYNOS_UART bool "Use S3C UART 3 for low-level debug" bool "Use Samsung S3C UART 3 for low-level debug" help Say Y here if you want the debug print routines to direct their output to UART 3. The port must have been initialised by the boot-loader before use. The uncompressor code port configuration is now handled by CONFIG_S3C_LOWLEVEL_UART_PORT. config DEBUG_S3C2410_UART0 depends on ARCH_S3C24XX select DEBUG_S3C2410_UART Loading
arch/arm/mach-exynos/common.h +1 −12 Original line number Diff line number Diff line Loading @@ -111,25 +111,14 @@ IS_SAMSUNG_CPU(exynos5800, EXYNOS5800_SOC_ID, EXYNOS5_SOC_MASK) #define soc_is_exynos5() (soc_is_exynos5250() || soc_is_exynos5410() || \ soc_is_exynos5420() || soc_is_exynos5800()) void mct_init(void __iomem *base, int irq_g0, int irq_l0, int irq_l1); struct map_desc; extern void __iomem *sysram_ns_base_addr; extern void __iomem *sysram_base_addr; void exynos_init_io(void); void exynos_restart(enum reboot_mode mode, const char *cmd); extern void __iomem *pmu_base_addr; void exynos_sysram_init(void); void exynos_cpuidle_init(void); void exynos_cpufreq_init(void); void exynos_init_late(void); void exynos_firmware_init(void); #ifdef CONFIG_PINCTRL_EXYNOS extern u32 exynos_get_eint_wake_mask(void); #else static inline u32 exynos_get_eint_wake_mask(void) { return 0xffffffff; } #endif #ifdef CONFIG_PM_SLEEP extern void __init exynos_pm_init(void); Loading
arch/arm/mach-exynos/exynos.c +41 −3 Original line number Diff line number Diff line Loading @@ -19,6 +19,7 @@ #include <linux/of_platform.h> #include <linux/platform_device.h> #include <linux/pm_domain.h> #include <linux/irqchip.h> #include <asm/cacheflush.h> #include <asm/hardware/cache-l2x0.h> Loading @@ -29,6 +30,9 @@ #include "common.h" #include "mfc.h" #include "regs-pmu.h" #include "regs-sys.h" void __iomem *pmu_base_addr; static struct map_desc exynos4_iodesc[] __initdata = { { Loading Loading @@ -143,7 +147,7 @@ static struct map_desc exynos5_iodesc[] __initdata = { }, }; void exynos_restart(enum reboot_mode mode, const char *cmd) static void exynos_restart(enum reboot_mode mode, const char *cmd) { struct device_node *np; u32 val = 0x1; Loading Loading @@ -204,7 +208,7 @@ void __init exynos_sysram_init(void) } } void __init exynos_init_late(void) static void __init exynos_init_late(void) { if (of_machine_is_compatible("samsung,exynos5440")) /* to be supported later */ Loading Loading @@ -251,7 +255,7 @@ static void __init exynos_map_io(void) iotable_init(exynos5_iodesc, ARRAY_SIZE(exynos5_iodesc)); } void __init exynos_init_io(void) static void __init exynos_init_io(void) { debug_ll_io_init(); Loading @@ -263,6 +267,39 @@ void __init exynos_init_io(void) exynos_map_io(); } static const struct of_device_id exynos_dt_pmu_match[] = { { .compatible = "samsung,exynos3250-pmu" }, { .compatible = "samsung,exynos4210-pmu" }, { .compatible = "samsung,exynos4212-pmu" }, { .compatible = "samsung,exynos4412-pmu" }, { .compatible = "samsung,exynos5250-pmu" }, { .compatible = "samsung,exynos5420-pmu" }, { /*sentinel*/ }, }; static void exynos_map_pmu(void) { struct device_node *np; np = of_find_matching_node(NULL, exynos_dt_pmu_match); if (np) pmu_base_addr = of_iomap(np, 0); if (!pmu_base_addr) panic("failed to find exynos pmu register\n"); } static void __init exynos_init_irq(void) { irqchip_init(); /* * Since platsmp.c needs pmu base address by the time * DT is not unflatten so we can't use DT APIs before * init_irq */ exynos_map_pmu(); } static void __init exynos_dt_machine_init(void) { struct device_node *i2c_np; Loading Loading @@ -343,6 +380,7 @@ DT_MACHINE_START(EXYNOS_DT, "SAMSUNG EXYNOS (Flattened Device Tree)") .smp = smp_ops(exynos_smp_ops), .map_io = exynos_init_io, .init_early = exynos_firmware_init, .init_irq = exynos_init_irq, .init_machine = exynos_dt_machine_init, .init_late = exynos_init_late, .dt_compat = exynos_dt_compat, Loading
arch/arm/mach-exynos/headsmp.S +0 −1 Original line number Diff line number Diff line /* * linux/arch/arm/mach-exynos4/headsmp.S * * Cloned from linux/arch/arm/mach-realview/headsmp.S * Loading
arch/arm/mach-exynos/hotplug.c +1 −2 Original line number Diff line number Diff line /* linux arch/arm/mach-exynos4/hotplug.c * /* * Cloned from linux/arch/arm/mach-realview/hotplug.c * * Copyright (C) 2002 ARM Ltd. Loading