summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSachin Ahuja <sahuja@qti.qualcomm.com>2013-12-31 06:23:11 +0530
committerPrakash Dhavali <pdhavali@codeaurora.org>2014-01-17 21:45:11 -0800
commitf49407a3cb342627bbeb50ddb7d670f2b577c11f (patch)
tree1d3769c5e46c5e578017c9fea35c8fcbe3e4df3c
parenta5c45aa2092c60a4b62685f2bb2f37376678b616 (diff)
cld: Change IRAM banks for Rome 1.3 and 2.0
Changes are done to select the IRAM banks for Rome 1.3 and 2.0 . Change-Id: I2ba2dff90fa3651b5f4c5374bb10286e1f0830ea CRs-Fixed: 594772
-rw-r--r--CORE/SERVICES/HIF/PCIe/hif_pci.c19
1 files changed, 12 insertions, 7 deletions
diff --git a/CORE/SERVICES/HIF/PCIe/hif_pci.c b/CORE/SERVICES/HIF/PCIe/hif_pci.c
index e30be61e33db..ac6c86498ff5 100644
--- a/CORE/SERVICES/HIF/PCIe/hif_pci.c
+++ b/CORE/SERVICES/HIF/PCIe/hif_pci.c
@@ -2189,13 +2189,18 @@ HIF_PCIDeviceProbed(hif_handle_t hif_hdl)
AR_DEBUG_PRINTF(ATH_DEBUG_INFO, ("ath: HIF_PCIDeviceProbed get chip id val (%d)\n", rv));
goto done;
}
- if (CHIP_ID_VERSION_GET(chip_id) == 0xD && (CHIP_ID_REVISION_GET(chip_id) == 0x0 || CHIP_ID_REVISION_GET(chip_id) == 0x1)) {
- /* for ROME 1.0, 3 banks are switched to IRAM */
- AR_DEBUG_PRINTF(ATH_DEBUG_WARN, ("chip ver=0x%x, chip rev=0x%x\n", CHIP_ID_VERSION_GET(chip_id), CHIP_ID_REVISION_GET(chip_id)));
- banks_switched = 3;
- }
- ealloc_value |= ((banks_switched << HI_EARLY_ALLOC_IRAM_BANKS_SHIFT) & HI_EARLY_ALLOC_IRAM_BANKS_MASK);
- }
+ if (CHIP_ID_VERSION_GET(chip_id) == 0xD) {
+ if ((CHIP_ID_REVISION_GET(chip_id) == 0x0) || (CHIP_ID_REVISION_GET(chip_id) == 0x1)) {
+ /* for ROME 1.0/1.1, 3 banks are switched to IRAM */
+ banks_switched = 3;
+ }
+ else if ((CHIP_ID_REVISION_GET(chip_id) == 0x2) || (CHIP_ID_REVISION_GET(chip_id) == 0x4)) {
+ /* for ROME 1.3, 2 banks are switched to IRAM */
+ banks_switched = 2;
+ }
+ }
+ ealloc_value |= ((banks_switched << HI_EARLY_ALLOC_IRAM_BANKS_SHIFT) & HI_EARLY_ALLOC_IRAM_BANKS_MASK);
+ }
rv = HIFDiagWriteAccess(sc->hif_device, ealloc_targ_addr, ealloc_value);
if (rv != A_OK) {
AR_DEBUG_PRINTF(ATH_DEBUG_INFO, ("ath: HIF_PCIDeviceProbed set early alloc val (%d)\n", rv));