diff options
author | Min-wuk Lee <mlee@nvidia.com> | 2013-10-15 19:18:25 +0900 |
---|---|---|
committer | Gabby Lee <galee@nvidia.com> | 2013-10-22 22:10:16 -0700 |
commit | 0861ce714c393ca714fb670171ac26f4e9beff01 (patch) | |
tree | 986625dcc09e37b9c3111708c242e9c5ba5fcce2 | |
parent | 6d170a3841164753799cca57b9d9b2f7610846b1 (diff) |
ARM: tegra: tegratab: skip dc1 register in charging
display controller 1 probe is not required in charging
mode. Do not populate dc1, so its probe will be fail.
Bug 1367030
Change-Id: Ic31cd6d2291619f709e367b4d1be119737e15acb
Signed-off-by: Min-wuk Lee <mlee@nvidia.com>
Reviewed-on: http://git-master/r/299428
GVS: Gerrit_Virtual_Submit
Reviewed-by: Gabby Lee <galee@nvidia.com>
-rw-r--r-- | arch/arm/mach-tegra/board-tegratab-panel.c | 4 | ||||
-rw-r--r-- | arch/arm/mach-tegra/board-tegratab.c | 47 |
2 files changed, 48 insertions, 3 deletions
diff --git a/arch/arm/mach-tegra/board-tegratab-panel.c b/arch/arm/mach-tegra/board-tegratab-panel.c index 67c1ec860d6a..caf4d086c59c 100644 --- a/arch/arm/mach-tegra/board-tegratab-panel.c +++ b/arch/arm/mach-tegra/board-tegratab-panel.c @@ -452,7 +452,9 @@ int tegratab_init_hdmi(struct platform_device *pdev, struct resource __maybe_unused *res; #ifdef CONFIG_ANDROID - /* In charger mode, don't need to copy or clear fb2 */ + /* In charger mode, will not register display controller 1 + * No need to copy or clear fb2, either. + */ if (get_androidboot_mode() == BOOTMODE_CHARGER) return 0; #endif diff --git a/arch/arm/mach-tegra/board-tegratab.c b/arch/arm/mach-tegra/board-tegratab.c index d6e4315ed402..d4b86e5855f1 100644 --- a/arch/arm/mach-tegra/board-tegratab.c +++ b/arch/arm/mach-tegra/board-tegratab.c @@ -805,6 +805,45 @@ struct of_dev_auxdata tegratab_auxdata_lookup[] __initdata = { &tegratab_i2c5_platform_data), {}, }; +struct of_dev_auxdata tegratab_auxdata_lookup_charger[] __initdata = { + OF_DEV_AUXDATA("nvidia,tegra114-host1x", TEGRA_HOST1X_BASE, "host1x", + NULL), + OF_DEV_AUXDATA("nvidia,tegra114-gr3d", TEGRA_GR3D_BASE, "gr3d", + NULL), + OF_DEV_AUXDATA("nvidia,tegra114-gr2d", TEGRA_GR2D_BASE, "gr2d", + NULL), + OF_DEV_AUXDATA("nvidia,tegra114-msenc", TEGRA_MSENC_BASE, "msenc", + NULL), + OF_DEV_AUXDATA("nvidia,tegra114-vi", TEGRA_VI_BASE, "vi", + NULL), + OF_DEV_AUXDATA("nvidia,tegra114-isp", TEGRA_ISP_BASE, "isp", + NULL), + OF_DEV_AUXDATA("nvidia,tegra114-tsec", TEGRA_TSEC_BASE, "tsec", + NULL), + OF_DEV_AUXDATA("nvidia,tegra114-pwfm", TEGRA_PWFM0_BASE, "tegra_pwm.0", + NULL), + OF_DEV_AUXDATA("nvidia,tegra114-pwfm", TEGRA_PWFM1_BASE, "tegra_pwm.1", + NULL), + OF_DEV_AUXDATA("nvidia,tegra114-pwfm", TEGRA_PWFM2_BASE, "tegra_pwm.2", + NULL), + OF_DEV_AUXDATA("nvidia,tegra114-pwfm", TEGRA_PWFM3_BASE, "tegra_pwm.3", + NULL), + OF_DEV_AUXDATA("nvidia,tegra114-dc", TEGRA_DISPLAY_BASE, "tegradc.0", + &tegratab_dc0_platform_data), + OF_DEV_AUXDATA("nvidia,tegra114-pwm-bl", 0x0, "pwm-backlight", + &tegratab_pwm_bl_data), + OF_DEV_AUXDATA("nvidia,tegra114-i2c", 0x7000c000, "tegra11-i2c.0", + &tegratab_i2c1_platform_data), + OF_DEV_AUXDATA("nvidia,tegra114-i2c", 0x7000c400, "tegra11-i2c.1", + &tegratab_i2c2_platform_data), + OF_DEV_AUXDATA("nvidia,tegra114-i2c", 0x7000c500, "tegra11-i2c.2", + &tegratab_i2c3_platform_data), + OF_DEV_AUXDATA("nvidia,tegra114-i2c", 0x7000c700, "tegra11-i2c.3", + &tegratab_i2c4_platform_data), + OF_DEV_AUXDATA("nvidia,tegra114-i2c", 0x7000d000, "tegra11-i2c.4", + &tegratab_i2c5_platform_data), + {}, +}; #endif static void __init tegra_tegratab_late_init(void) @@ -879,8 +918,12 @@ static void __init tegra_tegratab_dt_init(void) (get_androidboot_mode() == BOOTMODE_CHARGER) ? true : false; - of_platform_populate(NULL, of_default_bus_match_table, - tegratab_auxdata_lookup, &platform_bus); + if (get_androidboot_mode() == BOOTMODE_CHARGER) + of_platform_populate(NULL, of_default_bus_match_table, + tegratab_auxdata_lookup_charger, &platform_bus); + else + of_platform_populate(NULL, of_default_bus_match_table, + tegratab_auxdata_lookup, &platform_bus); #endif tegra_tegratab_late_init(); |