diff options
author | Nitin Kumbhar <nkumbhar@nvidia.com> | 2011-07-25 16:24:11 +0530 |
---|---|---|
committer | Simone Willett <swillett@nvidia.com> | 2011-08-08 17:39:52 -0700 |
commit | a714dd55c49e16173f7cff264ac58b5cbd6c0942 (patch) | |
tree | 584fcffb171664e4ce9c2ac9bb2e0b5657b6d26c | |
parent | ed66cd3fd7774392fd31226dec0a58eb29e1dc69 (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
Change-Id: Ic200c980c074ce315880c964f08ce1d5482f6766
Reviewed-on: http://git-master/r/43038
Reviewed-by: Ching Kuang (Roger) Hsieh <rhsieh@nvidia.com>
Tested-by: Ching Kuang (Roger) Hsieh <rhsieh@nvidia.com>
Reviewed-by: Bharat Nihalani <bnihalani@nvidia.com>
-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 a1075ddb75a7..1adcd8b20d71 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; } |