| e44f86ef | 17-May-2018 |
Varun Wadekar <vwadekar@nvidia.com> |
Tegra: remove weakly defined PSCI platform handlers
This patch removes all the weakly defined PSCI handlers defined per-platform, to improve code coverage numbers and reduce MISRA defects.
Change-I
Tegra: remove weakly defined PSCI platform handlers
This patch removes all the weakly defined PSCI handlers defined per-platform, to improve code coverage numbers and reduce MISRA defects.
Change-Id: I0f9c0caa0a6071d0360d07454b19dcc7340da8c2 Signed-off-by: Varun Wadekar <vwadekar@nvidia.com>
show more ...
|
| 39171cd0 | 17-May-2018 |
Varun Wadekar <vwadekar@nvidia.com> |
Tegra: remove weakly defined platform setup handlers
This patch converts the weakly defined platform setup handlers into actual platform specific handlers to improve code coverage numbers and some M
Tegra: remove weakly defined platform setup handlers
This patch converts the weakly defined platform setup handlers into actual platform specific handlers to improve code coverage numbers and some MISRA defects.
The weakly defined handlers never get executed thus resulting in lower coverage - function, function calls, statements, branches and pairs.
Change-Id: I02f450f66b5754a90d934df4d76eb91459fca5f9 Signed-off-by: Varun Wadekar <vwadekar@nvidia.com>
show more ...
|
| 5f1803f9 | 15-May-2018 |
Varun Wadekar <vwadekar@nvidia.com> |
Tegra: per-SoC DRAM base values
Tegra194 supports upto 64GB of DRAM, whereas the previous SoCs support upto 32GB DRAM. This patch moves the common DRAM base/end macros to individual Tegra SoC header
Tegra: per-SoC DRAM base values
Tegra194 supports upto 64GB of DRAM, whereas the previous SoCs support upto 32GB DRAM. This patch moves the common DRAM base/end macros to individual Tegra SoC headers to fix this anomaly.
Change-Id: I1a9f386b67c2311baab289e726d95cef6954071b Signed-off-by: Varun Wadekar <vwadekar@nvidia.com>
show more ...
|
| ca661a00 | 23-Dec-2019 |
Madhukar Pappireddy <madhukar.pappireddy@arm.com> |
Enable -Wredundant-decls warning check
This flag warns if anything is declared more than once in the same scope, even in cases where multiple declaration is valid and changes nothing.
Consequently,
Enable -Wredundant-decls warning check
This flag warns if anything is declared more than once in the same scope, even in cases where multiple declaration is valid and changes nothing.
Consequently, this patch also fixes the issues reported by this flag. Consider the following two lines of code from two different source files(bl_common.h and bl31_plat_setup.c):
IMPORT_SYM(uintptr_t, __RO_START__, BL_CODE_BASE); IMPORT_SYM(unsigned long, __RO_START__, BL2_RO_BASE);
The IMPORT_SYM macro which actually imports a linker symbol as a C expression. The macro defines the __RO_START__ as an extern variable twice, one for each instance. __RO_START__ symbol is defined by the linker script to mark the start of the Read-Only area of the memory map.
Essentially, the platform code redefines the linker symbol with a different (relevant) name rather than using the standard symbol. A simple solution to fix this issue in the platform code for redundant declarations warning is to remove the second IMPORT_SYM and replace it with following assignment
static const unsigned long BL2_RO_BASE = BL_CODE_BASE;
Change-Id: If4835d1ee462d52b75e5afd2a59b64828707c5aa Signed-off-by: Madhukar Pappireddy <madhukar.pappireddy@arm.com>
show more ...
|
| ffd58cca | 01-Dec-2017 |
Varun Wadekar <vwadekar@nvidia.com> |
Tegra194: enable spe-console functionality
This patch enables the config to switch to the console provided by the SPE firmware.
Change-Id: I5a3bed09ee1e84f958d0925501d1a79fb7f694de Signed-off-by: V
Tegra194: enable spe-console functionality
This patch enables the config to switch to the console provided by the SPE firmware.
Change-Id: I5a3bed09ee1e84f958d0925501d1a79fb7f694de Signed-off-by: Varun Wadekar <vwadekar@nvidia.com>
show more ...
|
| 532df956 | 14-May-2018 |
Varun Wadekar <vwadekar@nvidia.com> |
Tegra194: mce: remove unused NVG functions
This patch removes unused functions from the NVG driver.
* nvg_enable_power_perf_mode * nvg_disable_power_perf_mode * nvg_enable_power_saver_modes * nvg_d
Tegra194: mce: remove unused NVG functions
This patch removes unused functions from the NVG driver.
* nvg_enable_power_perf_mode * nvg_disable_power_perf_mode * nvg_enable_power_saver_modes * nvg_disable_power_saver_modes * nvg_roc_clean_cache * nvg_roc_flush_cache
Change-Id: I0387a40dec35686deaad623a8350de89acfe9393 Signed-off-by: Varun Wadekar <vwadekar@nvidia.com>
show more ...
|
| 54990e37 | 10-Apr-2018 |
Varun Wadekar <vwadekar@nvidia.com> |
Tegra194: support for NVG interface v6.6
This patch updates the NVG interface header file to v6.6.
Change-Id: I2f5df274bf820ba1c5df47d8dcbf7f5f056ff45f Signed-off-by: Varun Wadekar <vwadekar@nvidia
Tegra194: support for NVG interface v6.6
This patch updates the NVG interface header file to v6.6.
Change-Id: I2f5df274bf820ba1c5df47d8dcbf7f5f056ff45f Signed-off-by: Varun Wadekar <vwadekar@nvidia.com>
show more ...
|
| 844e6cc5 | 19-Apr-2018 |
Pritesh Raithatha <praithatha@nvidia.com> |
Tegra194: smmu: add PCIE0R1 mc reg to system suspend save list
PCIE0R1 security and override registers need to be preserved across system suspend. Adding them to system suspend save register list. D
Tegra194: smmu: add PCIE0R1 mc reg to system suspend save list
PCIE0R1 security and override registers need to be preserved across system suspend. Adding them to system suspend save register list. Due to addition of above registers, increasing context save memory by 2 bytes.
Change-Id: I1b3a56aee31f3c11e3edc2fb0a6da146eec1a30d Signed-off-by: Pritesh Raithatha <praithatha@nvidia.com>
show more ...
|
| 4a9026d4 | 03-Apr-2018 |
Varun Wadekar <vwadekar@nvidia.com> |
Tegra194: enable driver for general purpose DMA engine
This patch enables the GPCDMA for all Tegra194 platforms to help accelerate all the memory copy operations.
Change-Id: I8cbec99be6ebe4da742212
Tegra194: enable driver for general purpose DMA engine
This patch enables the GPCDMA for all Tegra194 platforms to help accelerate all the memory copy operations.
Change-Id: I8cbec99be6ebe4da74221245668b321ba9693479 Signed-off-by: Varun Wadekar <vwadekar@nvidia.com>
show more ...
|
| db891f32 | 23-Mar-2018 |
Varun Wadekar <vwadekar@nvidia.com> |
Tegra194: access XUSB_PADCTL registers on Si/FPGA platforms
Many simulation/emulation platforms do not support this hardware block leading to SErrors during register accesses.
This patch conditiona
Tegra194: access XUSB_PADCTL registers on Si/FPGA platforms
Many simulation/emulation platforms do not support this hardware block leading to SErrors during register accesses.
This patch conditionally accesses the registers from this block only on actual Si and FPGA platforms.
Change-Id: Ic22817a8c9f81978ba88c5362bfd734a0040d35d Signed-off-by: Varun Wadekar <vwadekar@nvidia.com>
show more ...
|
| ceb12020 | 23-Jan-2018 |
Varun Wadekar <vwadekar@nvidia.com> |
Tegra194: organize the memory/mmio map to make it linear
This patch organizes the platform memory/mmio map, so that the base addresses for the apertures line up in ascending order. This makes it eas
Tegra194: organize the memory/mmio map to make it linear
This patch organizes the platform memory/mmio map, so that the base addresses for the apertures line up in ascending order. This makes it easier for the xlat_tables_v2 library to create mappings for each mmap_add_region call.
Change-Id: Ie1938ba043820625c9fea904009a3d2ccd29f7b3 Signed-off-by: Varun Wadekar <vwadekar@nvidia.com>
show more ...
|
| 939fd3db | 09-Mar-2018 |
Pritesh Raithatha <praithatha@nvidia.com> |
Tegra194: memctrl: enable mc sid OVERRIDE for PCIE0R1
PCIE0R1 does not program stream IDs, so allow the stream ID to be overriden by the MC.
Change-Id: I4dbd71e1ce24b11e646de421ef68c762818c2667 Sig
Tegra194: memctrl: enable mc sid OVERRIDE for PCIE0R1
PCIE0R1 does not program stream IDs, so allow the stream ID to be overriden by the MC.
Change-Id: I4dbd71e1ce24b11e646de421ef68c762818c2667 Signed-off-by: Pritesh Raithatha <praithatha@nvidia.com>
show more ...
|
| 33a8ba6a | 09-Feb-2018 |
Steven Kao <skao@nvidia.com> |
Tegra194: support for boot params wider than 32-bits
The previous bootloader is not able to pass boot params wider than 32-bits due to an oversight in the scratch register being used. A new secure s
Tegra194: support for boot params wider than 32-bits
The previous bootloader is not able to pass boot params wider than 32-bits due to an oversight in the scratch register being used. A new secure scratch register #75 has been assigned to pass the higher bits.
This patch adds support to parse the higher bits from scratch #75 and use them in calculating the base address for the location of the boot params.
Scratch #75 format ==================== 31:16 - bl31_plat_params high address 15:0 - bl31_params high address
Change-Id: Id53c45f70a9cb370c776ed7c82ad3f2258576a80 Signed-off-by: Steven Kao <skao@nvidia.com>
show more ...
|
| 34a6610a | 07-Mar-2018 |
Puneet Saxena <puneets@nvidia.com> |
Tegra194: memctrl: set reorder depth limit for PCIE blocks
HW bug in third party PCIE IP - PCIE datapath hangs when there are more than 28 outstanding requests on data backbone for x1 controller.
S
Tegra194: memctrl: set reorder depth limit for PCIE blocks
HW bug in third party PCIE IP - PCIE datapath hangs when there are more than 28 outstanding requests on data backbone for x1 controller.
Suggested SW WAR is to limit reorder_depth_limit to 16 for PCIE 1W/2AW/3W clients.
Change-Id: Id5448251c35d2a93f66a8b5835ae4044f5cef067 Signed-off-by: Puneet Saxena <puneets@nvidia.com>
show more ...
|
| eb41fee4 | 01-Mar-2018 |
Pritesh Raithatha <praithatha@nvidia.com> |
Tegra194: memctrl: program MC_TXN_OVERRIDE reg for PTCR, MPCORE and MIU
-PTCR is ISO client so setting it to FORCE_NON_COHERENT. -MPCORER, MPCOREW and MIU0R/W to MIU7R/W clients itself will provide
Tegra194: memctrl: program MC_TXN_OVERRIDE reg for PTCR, MPCORE and MIU
-PTCR is ISO client so setting it to FORCE_NON_COHERENT. -MPCORER, MPCOREW and MIU0R/W to MIU7R/W clients itself will provide ordering so no need to override from mc. -MIU0R/W to MIU7R/W clients registers are not implemented in tegrasim so skipping it for simulation. -All the clients need to set CGID_TAG_ADR to maintain request ordering within a 4K boundary.
Change-Id: Iaa3189a1f3e40fb4cef28be36bc4baeb5ac8f9ca Signed-off-by: Pritesh Raithatha <praithatha@nvidia.com>
show more ...
|
| 90dce0f9 | 08-Feb-2018 |
Pritesh Raithatha <praithatha@nvidia.com> |
Tegra194: memctrl: set CGID_TAG_ADR instead of CGID_TAG_DEFAULT
- All SoC clients should use CGID_TAG_ADR to improve perf - Remove tegra194_txn_override_cfgs array that is not getting used.
Change-
Tegra194: memctrl: set CGID_TAG_ADR instead of CGID_TAG_DEFAULT
- All SoC clients should use CGID_TAG_ADR to improve perf - Remove tegra194_txn_override_cfgs array that is not getting used.
Change-Id: I9130ef5ae8659ed5f9d843ab9a0ecf58b5ce9c74 Signed-off-by: Pritesh Raithatha <praithatha@nvidia.com>
show more ...
|
| 1296da6d | 05-Jan-2018 |
Puneet Saxena <puneets@nvidia.com> |
Tegra194: memctrl: update mss reprogramming as HW PROD settings
Memory clients are divided in to ISO/NonISO/Order/Unordered/Low BW/High BW. Based on the client types, HW team recommends, different m
Tegra194: memctrl: update mss reprogramming as HW PROD settings
Memory clients are divided in to ISO/NonISO/Order/Unordered/Low BW/High BW. Based on the client types, HW team recommends, different memory ordering settings, IO coherency settings and SMMU register settings for optimized performance of the MC clients.
For example ordered ISO clients should be set as strongly ordered and should bypass SCF and directly access MC hence set as FORCE_NON_COHERENT. Like this there are multiple recommendations for all of the MC clients.
This change sets all these MC registers as per HW spec file.
Change-Id: I8a8a0887cd86bf6fe8ac7835df6c888855738cd9 Signed-off-by: Puneet Saxena <puneets@nvidia.com> Signed-off-by: Varun Wadekar <vwadekar@nvidia.com>
show more ...
|
| a0cacc95 | 18-Jan-2018 |
Arto Merilainen <amerilainen@nvidia.com> |
Tegra194: memctrl: Disable PVARDC coalescer
Due to a hardware bug PVA may perform memory transactions which cause coalescer faults. This change works around the issue by disabling coalescer for PVA0
Tegra194: memctrl: Disable PVARDC coalescer
Due to a hardware bug PVA may perform memory transactions which cause coalescer faults. This change works around the issue by disabling coalescer for PVA0RDC and PVA1RDC.
Change-Id: I27d1f6e7bc819fb303dae98079d9277fa346a1d3 Signed-off-by: Arto Merilainen <amerilainen@nvidia.com>
show more ...
|
| 21e22fe3 | 02-Jan-2018 |
Puneet Saxena <puneets@nvidia.com> |
Tegra194: memctrl: force seswr/rd transactions as passsthru & coherent
Force memory transactions from seswr and sesrd as coherent_snoop from no-override. This is necessary as niso clients should use
Tegra194: memctrl: force seswr/rd transactions as passsthru & coherent
Force memory transactions from seswr and sesrd as coherent_snoop from no-override. This is necessary as niso clients should use coherent path.
Presently its set as FORCE_COHERENT_SNOOP. Once SE+TZ is enabled with SMMU, this needs to be replaced by FORCE_COHERENT.
Change-Id: I8b50722de743b9028129b4715769ef93deab73b5 Signed-off-by: Puneet Saxena <puneets@nvidia.com>
show more ...
|
| 1a7a1dcd | 28-Dec-2017 |
Vignesh Radhakrishnan <vigneshr@nvidia.com> |
Tegra194: Request CG7 from last core in cluster
- SC7 requires all the cluster groups to be in CG7 state, else is_sc7_allowed will get denied - As a WAR while requesting CC6, request CG7 as well -
Tegra194: Request CG7 from last core in cluster
- SC7 requires all the cluster groups to be in CG7 state, else is_sc7_allowed will get denied - As a WAR while requesting CC6, request CG7 as well - CG7 request will not be honored if it is not last core in Cluster group - This is just to satisfy MCE for now as CG7 is going to be defeatured
Change-Id: Ibf2f8a365a2e46bd427abd563da772b6b618350f Signed-off-by: Vignesh Radhakrishnan <vigneshr@nvidia.com>
show more ...
|
| d11f5e05 | 03-Jan-2018 |
steven kao <skao@nvidia.com> |
Tegra194: toggle SE clock during context save/restore
This patch adds support to toggle SE clock, using the bpmp_ipc interface, to enable SE context save/restore. The SE sequence mostly gets called
Tegra194: toggle SE clock during context save/restore
This patch adds support to toggle SE clock, using the bpmp_ipc interface, to enable SE context save/restore. The SE sequence mostly gets called during System Suspend/Resume.
Change-Id: I9cee12a9e14861d5e3c8c4f18b4d7f898b6ebfa7 Signed-off-by: steven kao <skao@nvidia.com>
show more ...
|
| fdc8021a | 11-Jan-2020 |
Varun Wadekar <vwadekar@nvidia.com> |
Tegra: bpmp: fix header file paths
This patch fixes the header file paths to include debug.h from the right location.
Signed-off-by: Varun Wadekar <vwadekar@nvidia.com> Change-Id: If303792d2169158f
Tegra: bpmp: fix header file paths
This patch fixes the header file paths to include debug.h from the right location.
Signed-off-by: Varun Wadekar <vwadekar@nvidia.com> Change-Id: If303792d2169158f436ae6aa5b6d7a4f88e28f7b
show more ...
|
| e74c62e7 | 28-Dec-2017 |
Varun Wadekar <vwadekar@nvidia.com> |
Tegra194: platform handler for entering CPU standby state
This patch implements a handler to enter the standby state on Tegra194 platforms. On receiving a CPU_STANDBY state request, the platform han
Tegra194: platform handler for entering CPU standby state
This patch implements a handler to enter the standby state on Tegra194 platforms. On receiving a CPU_STANDBY state request, the platform handler issues TEGRA_NVG_CORE_C6 request to the MCE firmware to take the CPU into the standby state.
Change-Id: I703a96ec12205853ddb3c3871b23e338e1f60687 Signed-off-by: Varun Wadekar <vwadekar@nvidia.com>
show more ...
|
| 221b8e57 | 23-Dec-2017 |
Krishna Reddy <vdumpa@nvidia.com> |
Tegra194: memctrl: force viw and vifalr/w transactions as non-coherent
Force memory transactions from viw and viflar/w as non-coherent from no-override. This is necessary as iso clients shouldn't us
Tegra194: memctrl: force viw and vifalr/w transactions as non-coherent
Force memory transactions from viw and viflar/w as non-coherent from no-override. This is necessary as iso clients shouldn't use coherent path and stage-2 smmu mappings won't mark transactions as non-coherent. For native case, no-override works. But, not for virtualization case.
Change-Id: I1a8fc17787c8d0f8579bdaeeb719084993e27276 Signed-off-by: Krishna Reddy <vdumpa@nvidia.com>
show more ...
|
| 95f68bc4 | 18-Dec-2017 |
Krishna Reddy <vdumpa@nvidia.com> |
Tegra194: memctrl: fix bug in client order id reg value generation
Client order id reset values are incorrectly and'ed with mc_client_order_id macro, which resulted in getting reg value as always ze
Tegra194: memctrl: fix bug in client order id reg value generation
Client order id reset values are incorrectly and'ed with mc_client_order_id macro, which resulted in getting reg value as always zero. Updated mc_client_order_id macro to avoid and'ing outside the macro, to take the reg value and update specific bit field as necessary.
Change-Id: I880be6e4291d7cd58cf70d7c247a4044e57edd9e Signed-off-by: Krishna Reddy <vdumpa@nvidia.com>
show more ...
|