diff options
| -rw-r--r-- | arch/arm/boot/dts/tegra-ventana.dts | 3 | ||||
| -rw-r--r-- | arch/arm/mach-tegra/board-dt.c | 13 | ||||
| -rw-r--r-- | arch/arm/mach-tegra/board-harmony-pinmux.c | 6 | ||||
| -rw-r--r-- | arch/arm/mach-tegra/board-paz00-pinmux.c | 6 | ||||
| -rw-r--r-- | arch/arm/mach-tegra/board-seaboard-pinmux.c | 6 | ||||
| -rw-r--r-- | arch/arm/mach-tegra/board-trimslice-pinmux.c | 5 |
6 files changed, 27 insertions, 12 deletions
diff --git a/arch/arm/boot/dts/tegra-ventana.dts b/arch/arm/boot/dts/tegra-ventana.dts index 9b29a623aaf1..3f9abd6b6964 100644 --- a/arch/arm/boot/dts/tegra-ventana.dts +++ b/arch/arm/boot/dts/tegra-ventana.dts | |||
| @@ -22,11 +22,10 @@ | |||
| 22 | sdhci@c8000400 { | 22 | sdhci@c8000400 { |
| 23 | cd-gpios = <&gpio 69 0>; /* gpio PI5 */ | 23 | cd-gpios = <&gpio 69 0>; /* gpio PI5 */ |
| 24 | wp-gpios = <&gpio 57 0>; /* gpio PH1 */ | 24 | wp-gpios = <&gpio 57 0>; /* gpio PH1 */ |
| 25 | power-gpios = <&gpio 155 0>; /* gpio PT3 */ | 25 | power-gpios = <&gpio 70 0>; /* gpio PI6 */ |
| 26 | }; | 26 | }; |
| 27 | 27 | ||
| 28 | sdhci@c8000600 { | 28 | sdhci@c8000600 { |
| 29 | power-gpios = <&gpio 70 0>; /* gpio PI6 */ | ||
| 30 | support-8bit; | 29 | support-8bit; |
| 31 | }; | 30 | }; |
| 32 | }; | 31 | }; |
diff --git a/arch/arm/mach-tegra/board-dt.c b/arch/arm/mach-tegra/board-dt.c index d368f8dafcfd..74743ad3d2d3 100644 --- a/arch/arm/mach-tegra/board-dt.c +++ b/arch/arm/mach-tegra/board-dt.c | |||
| @@ -101,6 +101,13 @@ static void __init tegra_dt_init(void) | |||
| 101 | 101 | ||
| 102 | tegra_clk_init_from_table(tegra_dt_clk_init_table); | 102 | tegra_clk_init_from_table(tegra_dt_clk_init_table); |
| 103 | 103 | ||
| 104 | /* | ||
| 105 | * Finished with the static registrations now; fill in the missing | ||
| 106 | * devices | ||
| 107 | */ | ||
| 108 | of_platform_populate(NULL, tegra_dt_match_table, | ||
| 109 | tegra20_auxdata_lookup, NULL); | ||
| 110 | |||
| 104 | for (i = 0; i < ARRAY_SIZE(pinmux_configs); i++) { | 111 | for (i = 0; i < ARRAY_SIZE(pinmux_configs); i++) { |
| 105 | if (of_machine_is_compatible(pinmux_configs[i].machine)) { | 112 | if (of_machine_is_compatible(pinmux_configs[i].machine)) { |
| 106 | pinmux_configs[i].init(); | 113 | pinmux_configs[i].init(); |
| @@ -110,12 +117,6 @@ static void __init tegra_dt_init(void) | |||
| 110 | 117 | ||
| 111 | WARN(i == ARRAY_SIZE(pinmux_configs), | 118 | WARN(i == ARRAY_SIZE(pinmux_configs), |
| 112 | "Unknown platform! Pinmuxing not initialized\n"); | 119 | "Unknown platform! Pinmuxing not initialized\n"); |
| 113 | |||
| 114 | /* | ||
| 115 | * Finished with the static registrations now; fill in the missing | ||
| 116 | * devices | ||
| 117 | */ | ||
| 118 | of_platform_populate(NULL, tegra_dt_match_table, tegra20_auxdata_lookup, NULL); | ||
| 119 | } | 120 | } |
| 120 | 121 | ||
| 121 | static const char * tegra_dt_board_compat[] = { | 122 | static const char * tegra_dt_board_compat[] = { |
diff --git a/arch/arm/mach-tegra/board-harmony-pinmux.c b/arch/arm/mach-tegra/board-harmony-pinmux.c index e99b45618cd0..7a4a26d5174c 100644 --- a/arch/arm/mach-tegra/board-harmony-pinmux.c +++ b/arch/arm/mach-tegra/board-harmony-pinmux.c | |||
| @@ -16,6 +16,8 @@ | |||
| 16 | 16 | ||
| 17 | #include <linux/kernel.h> | 17 | #include <linux/kernel.h> |
| 18 | #include <linux/gpio.h> | 18 | #include <linux/gpio.h> |
| 19 | #include <linux/of.h> | ||
| 20 | |||
| 19 | #include <mach/pinmux.h> | 21 | #include <mach/pinmux.h> |
| 20 | 22 | ||
| 21 | #include "gpio-names.h" | 23 | #include "gpio-names.h" |
| @@ -161,7 +163,9 @@ static struct tegra_gpio_table gpio_table[] = { | |||
| 161 | 163 | ||
| 162 | void harmony_pinmux_init(void) | 164 | void harmony_pinmux_init(void) |
| 163 | { | 165 | { |
| 164 | platform_add_devices(pinmux_devices, ARRAY_SIZE(pinmux_devices)); | 166 | if (!of_machine_is_compatible("nvidia,tegra20")) |
| 167 | platform_add_devices(pinmux_devices, | ||
| 168 | ARRAY_SIZE(pinmux_devices)); | ||
| 165 | 169 | ||
| 166 | tegra_pinmux_config_table(harmony_pinmux, ARRAY_SIZE(harmony_pinmux)); | 170 | tegra_pinmux_config_table(harmony_pinmux, ARRAY_SIZE(harmony_pinmux)); |
| 167 | 171 | ||
diff --git a/arch/arm/mach-tegra/board-paz00-pinmux.c b/arch/arm/mach-tegra/board-paz00-pinmux.c index fb20894862b0..be30e215f4b7 100644 --- a/arch/arm/mach-tegra/board-paz00-pinmux.c +++ b/arch/arm/mach-tegra/board-paz00-pinmux.c | |||
| @@ -16,6 +16,8 @@ | |||
| 16 | 16 | ||
| 17 | #include <linux/kernel.h> | 17 | #include <linux/kernel.h> |
| 18 | #include <linux/gpio.h> | 18 | #include <linux/gpio.h> |
| 19 | #include <linux/of.h> | ||
| 20 | |||
| 19 | #include <mach/pinmux.h> | 21 | #include <mach/pinmux.h> |
| 20 | 22 | ||
| 21 | #include "gpio-names.h" | 23 | #include "gpio-names.h" |
| @@ -158,7 +160,9 @@ static struct tegra_gpio_table gpio_table[] = { | |||
| 158 | 160 | ||
| 159 | void paz00_pinmux_init(void) | 161 | void paz00_pinmux_init(void) |
| 160 | { | 162 | { |
| 161 | platform_add_devices(pinmux_devices, ARRAY_SIZE(pinmux_devices)); | 163 | if (!of_machine_is_compatible("nvidia,tegra20")) |
| 164 | platform_add_devices(pinmux_devices, | ||
| 165 | ARRAY_SIZE(pinmux_devices)); | ||
| 162 | 166 | ||
| 163 | tegra_pinmux_config_table(paz00_pinmux, ARRAY_SIZE(paz00_pinmux)); | 167 | tegra_pinmux_config_table(paz00_pinmux, ARRAY_SIZE(paz00_pinmux)); |
| 164 | 168 | ||
diff --git a/arch/arm/mach-tegra/board-seaboard-pinmux.c b/arch/arm/mach-tegra/board-seaboard-pinmux.c index fbce31daa3c9..b1c2972f62fe 100644 --- a/arch/arm/mach-tegra/board-seaboard-pinmux.c +++ b/arch/arm/mach-tegra/board-seaboard-pinmux.c | |||
| @@ -16,6 +16,7 @@ | |||
| 16 | #include <linux/kernel.h> | 16 | #include <linux/kernel.h> |
| 17 | #include <linux/init.h> | 17 | #include <linux/init.h> |
| 18 | #include <linux/gpio.h> | 18 | #include <linux/gpio.h> |
| 19 | #include <linux/of.h> | ||
| 19 | 20 | ||
| 20 | #include <mach/pinmux.h> | 21 | #include <mach/pinmux.h> |
| 21 | #include <mach/pinmux-t2.h> | 22 | #include <mach/pinmux-t2.h> |
| @@ -191,6 +192,7 @@ static struct tegra_gpio_table common_gpio_table[] = { | |||
| 191 | { .gpio = TEGRA_GPIO_SD2_POWER, .enable = true }, | 192 | { .gpio = TEGRA_GPIO_SD2_POWER, .enable = true }, |
| 192 | { .gpio = TEGRA_GPIO_LIDSWITCH, .enable = true }, | 193 | { .gpio = TEGRA_GPIO_LIDSWITCH, .enable = true }, |
| 193 | { .gpio = TEGRA_GPIO_POWERKEY, .enable = true }, | 194 | { .gpio = TEGRA_GPIO_POWERKEY, .enable = true }, |
| 195 | { .gpio = TEGRA_GPIO_HP_DET, .enable = true }, | ||
| 194 | { .gpio = TEGRA_GPIO_ISL29018_IRQ, .enable = true }, | 196 | { .gpio = TEGRA_GPIO_ISL29018_IRQ, .enable = true }, |
| 195 | { .gpio = TEGRA_GPIO_CDC_IRQ, .enable = true }, | 197 | { .gpio = TEGRA_GPIO_CDC_IRQ, .enable = true }, |
| 196 | { .gpio = TEGRA_GPIO_USB1, .enable = true }, | 198 | { .gpio = TEGRA_GPIO_USB1, .enable = true }, |
| @@ -218,7 +220,9 @@ static void __init update_pinmux(struct tegra_pingroup_config *newtbl, int size) | |||
| 218 | 220 | ||
| 219 | void __init seaboard_common_pinmux_init(void) | 221 | void __init seaboard_common_pinmux_init(void) |
| 220 | { | 222 | { |
| 221 | platform_add_devices(pinmux_devices, ARRAY_SIZE(pinmux_devices)); | 223 | if (!of_machine_is_compatible("nvidia,tegra20")) |
| 224 | platform_add_devices(pinmux_devices, | ||
| 225 | ARRAY_SIZE(pinmux_devices)); | ||
| 222 | 226 | ||
| 223 | tegra_pinmux_config_table(seaboard_pinmux, ARRAY_SIZE(seaboard_pinmux)); | 227 | tegra_pinmux_config_table(seaboard_pinmux, ARRAY_SIZE(seaboard_pinmux)); |
| 224 | 228 | ||
diff --git a/arch/arm/mach-tegra/board-trimslice-pinmux.c b/arch/arm/mach-tegra/board-trimslice-pinmux.c index 4969dd28a04c..7ab719d46da0 100644 --- a/arch/arm/mach-tegra/board-trimslice-pinmux.c +++ b/arch/arm/mach-tegra/board-trimslice-pinmux.c | |||
| @@ -16,6 +16,7 @@ | |||
| 16 | #include <linux/gpio.h> | 16 | #include <linux/gpio.h> |
| 17 | #include <linux/kernel.h> | 17 | #include <linux/kernel.h> |
| 18 | #include <linux/init.h> | 18 | #include <linux/init.h> |
| 19 | #include <linux/of.h> | ||
| 19 | 20 | ||
| 20 | #include <mach/pinmux.h> | 21 | #include <mach/pinmux.h> |
| 21 | 22 | ||
| @@ -157,7 +158,9 @@ static struct tegra_gpio_table gpio_table[] = { | |||
| 157 | 158 | ||
| 158 | void __init trimslice_pinmux_init(void) | 159 | void __init trimslice_pinmux_init(void) |
| 159 | { | 160 | { |
| 160 | platform_add_devices(pinmux_devices, ARRAY_SIZE(pinmux_devices)); | 161 | if (!of_machine_is_compatible("nvidia,tegra20")) |
| 162 | platform_add_devices(pinmux_devices, | ||
| 163 | ARRAY_SIZE(pinmux_devices)); | ||
| 161 | tegra_pinmux_config_table(trimslice_pinmux, ARRAY_SIZE(trimslice_pinmux)); | 164 | tegra_pinmux_config_table(trimslice_pinmux, ARRAY_SIZE(trimslice_pinmux)); |
| 162 | tegra_gpio_config(gpio_table, ARRAY_SIZE(gpio_table)); | 165 | tegra_gpio_config(gpio_table, ARRAY_SIZE(gpio_table)); |
| 163 | } | 166 | } |
