diff options
| -rw-r--r-- | arch/arm/Kconfig | 1 | ||||
| -rw-r--r-- | arch/arm/mach-tegra/Kconfig | 6 | ||||
| -rw-r--r-- | arch/arm/mach-tegra/board-dt-tegra114.c | 2 | ||||
| -rw-r--r-- | arch/arm/mach-tegra/board.h | 2 | ||||
| -rw-r--r-- | arch/arm/mach-tegra/common.c | 25 |
5 files changed, 23 insertions, 13 deletions
diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig index 22bfac3e6975..2ec4ff36e560 100644 --- a/arch/arm/Kconfig +++ b/arch/arm/Kconfig | |||
| @@ -641,6 +641,7 @@ config ARCH_LPC32XX | |||
| 641 | config ARCH_TEGRA | 641 | config ARCH_TEGRA |
| 642 | bool "NVIDIA Tegra" | 642 | bool "NVIDIA Tegra" |
| 643 | select ARCH_HAS_CPUFREQ | 643 | select ARCH_HAS_CPUFREQ |
| 644 | select ARCH_REQUIRE_GPIOLIB | ||
| 644 | select CLKDEV_LOOKUP | 645 | select CLKDEV_LOOKUP |
| 645 | select CLKSRC_MMIO | 646 | select CLKSRC_MMIO |
| 646 | select CLKSRC_OF | 647 | select CLKSRC_OF |
diff --git a/arch/arm/mach-tegra/Kconfig b/arch/arm/mach-tegra/Kconfig index bde8197c8db8..d1c4893894ce 100644 --- a/arch/arm/mach-tegra/Kconfig +++ b/arch/arm/mach-tegra/Kconfig | |||
| @@ -5,7 +5,6 @@ comment "NVIDIA Tegra options" | |||
| 5 | config ARCH_TEGRA_2x_SOC | 5 | config ARCH_TEGRA_2x_SOC |
| 6 | bool "Enable support for Tegra20 family" | 6 | bool "Enable support for Tegra20 family" |
| 7 | select ARCH_NEEDS_CPU_IDLE_COUPLED if SMP | 7 | select ARCH_NEEDS_CPU_IDLE_COUPLED if SMP |
| 8 | select ARCH_REQUIRE_GPIOLIB | ||
| 9 | select ARM_ERRATA_720789 | 8 | select ARM_ERRATA_720789 |
| 10 | select ARM_ERRATA_742230 if SMP | 9 | select ARM_ERRATA_742230 if SMP |
| 11 | select ARM_ERRATA_751472 | 10 | select ARM_ERRATA_751472 |
| @@ -27,7 +26,6 @@ config ARCH_TEGRA_2x_SOC | |||
| 27 | 26 | ||
| 28 | config ARCH_TEGRA_3x_SOC | 27 | config ARCH_TEGRA_3x_SOC |
| 29 | bool "Enable support for Tegra30 family" | 28 | bool "Enable support for Tegra30 family" |
| 30 | select ARCH_REQUIRE_GPIOLIB | ||
| 31 | select ARM_ERRATA_743622 | 29 | select ARM_ERRATA_743622 |
| 32 | select ARM_ERRATA_751472 | 30 | select ARM_ERRATA_751472 |
| 33 | select ARM_ERRATA_754322 | 31 | select ARM_ERRATA_754322 |
| @@ -47,10 +45,10 @@ config ARCH_TEGRA_3x_SOC | |||
| 47 | 45 | ||
| 48 | config ARCH_TEGRA_114_SOC | 46 | config ARCH_TEGRA_114_SOC |
| 49 | bool "Enable support for Tegra114 family" | 47 | bool "Enable support for Tegra114 family" |
| 48 | select ARM_ARCH_TIMER | ||
| 50 | select ARM_GIC | 49 | select ARM_GIC |
| 51 | select CPU_V7 | ||
| 52 | select ARM_L1_CACHE_SHIFT_6 | 50 | select ARM_L1_CACHE_SHIFT_6 |
| 53 | select ARM_ARCH_TIMER | 51 | select CPU_V7 |
| 54 | select PINCTRL | 52 | select PINCTRL |
| 55 | select PINCTRL_TEGRA114 | 53 | select PINCTRL_TEGRA114 |
| 56 | help | 54 | help |
diff --git a/arch/arm/mach-tegra/board-dt-tegra114.c b/arch/arm/mach-tegra/board-dt-tegra114.c index 72598e298667..085d63637b62 100644 --- a/arch/arm/mach-tegra/board-dt-tegra114.c +++ b/arch/arm/mach-tegra/board-dt-tegra114.c | |||
| @@ -36,7 +36,7 @@ static const char * const tegra114_dt_board_compat[] = { | |||
| 36 | DT_MACHINE_START(TEGRA114_DT, "NVIDIA Tegra114 (Flattened Device Tree)") | 36 | DT_MACHINE_START(TEGRA114_DT, "NVIDIA Tegra114 (Flattened Device Tree)") |
| 37 | .smp = smp_ops(tegra_smp_ops), | 37 | .smp = smp_ops(tegra_smp_ops), |
| 38 | .map_io = tegra_map_common_io, | 38 | .map_io = tegra_map_common_io, |
| 39 | .init_early = tegra30_init_early, | 39 | .init_early = tegra114_init_early, |
| 40 | .init_irq = tegra_dt_init_irq, | 40 | .init_irq = tegra_dt_init_irq, |
| 41 | .init_time = clocksource_of_init, | 41 | .init_time = clocksource_of_init, |
| 42 | .init_machine = tegra114_dt_init, | 42 | .init_machine = tegra114_dt_init, |
diff --git a/arch/arm/mach-tegra/board.h b/arch/arm/mach-tegra/board.h index da8f5a3c4240..86851c81a350 100644 --- a/arch/arm/mach-tegra/board.h +++ b/arch/arm/mach-tegra/board.h | |||
| @@ -1,6 +1,7 @@ | |||
| 1 | /* | 1 | /* |
| 2 | * arch/arm/mach-tegra/board.h | 2 | * arch/arm/mach-tegra/board.h |
| 3 | * | 3 | * |
| 4 | * Copyright (c) 2013 NVIDIA Corporation. All rights reserved. | ||
| 4 | * Copyright (C) 2010 Google, Inc. | 5 | * Copyright (C) 2010 Google, Inc. |
| 5 | * | 6 | * |
| 6 | * Author: | 7 | * Author: |
| @@ -27,6 +28,7 @@ void tegra_assert_system_reset(char mode, const char *cmd); | |||
| 27 | 28 | ||
| 28 | void __init tegra20_init_early(void); | 29 | void __init tegra20_init_early(void); |
| 29 | void __init tegra30_init_early(void); | 30 | void __init tegra30_init_early(void); |
| 31 | void __init tegra114_init_early(void); | ||
| 30 | void __init tegra_map_common_io(void); | 32 | void __init tegra_map_common_io(void); |
| 31 | void __init tegra_init_irq(void); | 33 | void __init tegra_init_irq(void); |
| 32 | void __init tegra_dt_init_irq(void); | 34 | void __init tegra_dt_init_irq(void); |
diff --git a/arch/arm/mach-tegra/common.c b/arch/arm/mach-tegra/common.c index 46c071861c4e..5449a3f2977b 100644 --- a/arch/arm/mach-tegra/common.c +++ b/arch/arm/mach-tegra/common.c | |||
| @@ -1,6 +1,7 @@ | |||
| 1 | /* | 1 | /* |
| 2 | * arch/arm/mach-tegra/common.c | 2 | * arch/arm/mach-tegra/common.c |
| 3 | * | 3 | * |
| 4 | * Copyright (c) 2013 NVIDIA Corporation. All rights reserved. | ||
| 4 | * Copyright (C) 2010 Google, Inc. | 5 | * Copyright (C) 2010 Google, Inc. |
| 5 | * | 6 | * |
| 6 | * Author: | 7 | * Author: |
| @@ -93,8 +94,7 @@ static void __init tegra_init_cache(void) | |||
| 93 | 94 | ||
| 94 | } | 95 | } |
| 95 | 96 | ||
| 96 | #ifdef CONFIG_ARCH_TEGRA_2x_SOC | 97 | static void __init tegra_init_early(void) |
| 97 | void __init tegra20_init_early(void) | ||
| 98 | { | 98 | { |
| 99 | tegra_cpu_reset_handler_init(); | 99 | tegra_cpu_reset_handler_init(); |
| 100 | tegra_apb_io_init(); | 100 | tegra_apb_io_init(); |
| @@ -102,22 +102,31 @@ void __init tegra20_init_early(void) | |||
| 102 | tegra_init_cache(); | 102 | tegra_init_cache(); |
| 103 | tegra_pmc_init(); | 103 | tegra_pmc_init(); |
| 104 | tegra_powergate_init(); | 104 | tegra_powergate_init(); |
| 105 | } | ||
| 106 | |||
| 107 | #ifdef CONFIG_ARCH_TEGRA_2x_SOC | ||
| 108 | void __init tegra20_init_early(void) | ||
| 109 | { | ||
| 110 | tegra_init_early(); | ||
| 105 | tegra20_hotplug_init(); | 111 | tegra20_hotplug_init(); |
| 106 | } | 112 | } |
| 107 | #endif | 113 | #endif |
| 114 | |||
| 108 | #ifdef CONFIG_ARCH_TEGRA_3x_SOC | 115 | #ifdef CONFIG_ARCH_TEGRA_3x_SOC |
| 109 | void __init tegra30_init_early(void) | 116 | void __init tegra30_init_early(void) |
| 110 | { | 117 | { |
| 111 | tegra_cpu_reset_handler_init(); | 118 | tegra_init_early(); |
| 112 | tegra_apb_io_init(); | ||
| 113 | tegra_init_fuse(); | ||
| 114 | tegra_init_cache(); | ||
| 115 | tegra_pmc_init(); | ||
| 116 | tegra_powergate_init(); | ||
| 117 | tegra30_hotplug_init(); | 119 | tegra30_hotplug_init(); |
| 118 | } | 120 | } |
| 119 | #endif | 121 | #endif |
| 120 | 122 | ||
| 123 | #ifdef CONFIG_ARCH_TEGRA_114_SOC | ||
| 124 | void __init tegra114_init_early(void) | ||
| 125 | { | ||
| 126 | tegra_init_early(); | ||
| 127 | } | ||
| 128 | #endif | ||
| 129 | |||
| 121 | void __init tegra_init_late(void) | 130 | void __init tegra_init_late(void) |
| 122 | { | 131 | { |
| 123 | tegra_powergate_debugfs_init(); | 132 | tegra_powergate_debugfs_init(); |
