diff options
author | Nitin Kumbhar <nkumbhar@nvidia.com> | 2011-07-25 16:24:11 +0530 |
---|---|---|
committer | Dan Willemsen <dwillemsen@nvidia.com> | 2011-11-30 21:48:10 -0800 |
commit | 94ce60fa064d84038535da58070cd33c76b4fec0 (patch) | |
tree | 70f0d21de5cd2bc1eda17b145e25fe9ebb158aca /arch/arm/mach-tegra/board-ventana-memory.c | |
parent | 26bbc5c58481c3854a9fcd9f96165f08a15f3dba (diff) |
ventana: use separate emc chips for ventana based devices
Many platforms are derived from ventana and have different types
of memories. Add a separate array for the emc chips being used on
those platforms.
Be default, the array is not populated with any entries. This
disables memory scaling for that device.
BUG 854226
Reviewed-on: http://git-master/r/43038
(cherry picked from commit de90911c0b7e9a1a58cfb4bd540de5474486bfc6)
Original-Change-Id: I067b272f63cad873a9f25fff3d54151a1b56f479
Reviewed-on: http://git-master/r/46243
Tested-by: Nitin Kumbhar <nkumbhar@nvidia.com>
Reviewed-by: Ching Kuang (Roger) Hsieh <rhsieh@nvidia.com>
Reviewed-by: Bharat Nihalani <bnihalani@nvidia.com>
Reviewed-by: Prashant Gaikwad <pgaikwad@nvidia.com>
Rebase-Id: R20685e06fa47f3d006f716d6eff80d8177877aee
Diffstat (limited to 'arch/arm/mach-tegra/board-ventana-memory.c')
-rw-r--r-- | arch/arm/mach-tegra/board-ventana-memory.c | 21 |
1 files changed, 16 insertions, 5 deletions
diff --git a/arch/arm/mach-tegra/board-ventana-memory.c b/arch/arm/mach-tegra/board-ventana-memory.c index d7dd67f763e3..9ef7c7797341 100644 --- a/arch/arm/mach-tegra/board-ventana-memory.c +++ b/arch/arm/mach-tegra/board-ventana-memory.c @@ -563,19 +563,30 @@ static const struct tegra_emc_chip ventana_t25_emc_chips[] = { }, }; +static const struct tegra_emc_chip ventana_siblings_emc_chips[] = { +}; + #define TEGRA25_SKU 0x0B00 +#define board_is_ventana(bi) (bi.board_id == 0x24b || bi.board_id == 0x252) int ventana_emc_init(void) { struct board_info BoardInfo; tegra_get_board_info(&BoardInfo); - if (BoardInfo.sku == TEGRA25_SKU) { - tegra_init_emc(ventana_t25_emc_chips, - ARRAY_SIZE(ventana_t25_emc_chips)); + + if (board_is_ventana(BoardInfo)) { + if (BoardInfo.sku == TEGRA25_SKU) + tegra_init_emc(ventana_t25_emc_chips, + ARRAY_SIZE(ventana_t25_emc_chips)); + else + tegra_init_emc(ventana_emc_chips, + ARRAY_SIZE(ventana_emc_chips)); } else { - tegra_init_emc(ventana_emc_chips, - ARRAY_SIZE(ventana_emc_chips)); + pr_info("ventana_emc_init: using ventana_siblings_emc_chips\n"); + tegra_init_emc(ventana_siblings_emc_chips, + ARRAY_SIZE(ventana_siblings_emc_chips)); } + return 0; } |