| #
7147732a |
| 09-Apr-2025 |
Govindraj Raja <govindraj.raja@arm.com> |
Merge changes from topic "ti-am62l-mailbox-psci-base-support" into integration
* changes: feat(ti): introduce basic support for the AM62L feat(ti): introduce PSCI Driver for AM62L feat(ti): ad
Merge changes from topic "ti-am62l-mailbox-psci-base-support" into integration
* changes: feat(ti): introduce basic support for the AM62L feat(ti): introduce PSCI Driver for AM62L feat(ti): add support for TI mailbox driver refactor(ti): move out k3/common to ti/common refactor(ti): introduce ti_bl31_setup refactor(ti): add the sec hdr to the ti sci msg refactor(ti): rename the k3_sec_proxy_chan_id refactor(ti): rename the sec_proxy functions refactor(ti): add top level ti_sci transport layer refactor(ti): move TI SCI and sec proxy to drivers
show more ...
|
| #
26605cdd |
| 26-Mar-2025 |
Dhruva Gole <d-gole@ti.com> |
refactor(ti): introduce ti_bl31_setup
There maybe a lot of reuse between platforms for bl31_setup in future which may require us to have a common bl31 setup driver for TI. The ti_bl31_setup is expec
refactor(ti): introduce ti_bl31_setup
There maybe a lot of reuse between platforms for bl31_setup in future which may require us to have a common bl31 setup driver for TI. The ti_bl31_setup is expected to contain all the reusable bits and the soc_bl31_setup can have the custom soc init functionality like the mmap regions and any special sequences needed at device boot While at it, also fix the path of the reference to the kernel doc for booting.
Change-Id: Ie574f08cf3ba75362c45f85306499061ef89c964 Signed-off-by: Dhruva Gole <d-gole@ti.com>
show more ...
|
| #
00f1ec6b |
| 09-Feb-2024 |
Madhukar Pappireddy <madhukar.pappireddy@arm.com> |
Merge changes from topic "revert-ti-dm-workaround" into integration
* changes: Revert "fix(ti): do not take system power reference in bl31_platform_setup()" refactor(ti): remove ti_sci_init func
Merge changes from topic "revert-ti-dm-workaround" into integration
* changes: Revert "fix(ti): do not take system power reference in bl31_platform_setup()" refactor(ti): remove ti_sci_init function fix(k3): increment while reading trail bytes
show more ...
|
| #
a53d1377 |
| 29-Jan-2024 |
Manorit Chawdhry <m-chawdhry@ti.com> |
Revert "fix(ti): do not take system power reference in bl31_platform_setup()"
The workaround that we required to get over the timing issue with our Device Manager is fixed in [0], revert the workaro
Revert "fix(ti): do not take system power reference in bl31_platform_setup()"
The workaround that we required to get over the timing issue with our Device Manager is fixed in [0], revert the workaround as it is no longer required.
[0]: https://git.ti.com/cgit/processor-firmware/ti-linux-firmware/commit?id=9ad862b528112f7bc26d80668fbb9b38521cddf9
This reverts commit 9977948112d732935362a3fe8518e3b2e4b7f6b7. It also adds a check to make this backward compatible.
Change-Id: Icf10f9df9558de1ae7ba6f5f586485111aac4f8d Signed-off-by: Manorit Chawdhry <m-chawdhry@ti.com>
show more ...
|
| #
73d772d8 |
| 29-Jan-2024 |
Manorit Chawdhry <m-chawdhry@ti.com> |
refactor(ti): remove ti_sci_init function
ti_sci_get_revision handles getting the firmware version and ti_sci_init is just a wrapper around it with no added benefit.
Refactor the ti_sci_get_revisio
refactor(ti): remove ti_sci_init function
ti_sci_get_revision handles getting the firmware version and ti_sci_init is just a wrapper around it with no added benefit.
Refactor the ti_sci_get_revision to give the version information and remove ti_sci_init wrapper.
Change-Id: I39184af5b00bedc8b9220533f1ddac3b6672d2f1 Signed-off-by: Manorit Chawdhry <m-chawdhry@ti.com>
show more ...
|
| #
047b328d |
| 27-Oct-2023 |
Madhukar Pappireddy <madhukar.pappireddy@arm.com> |
Merge "fix(ti): align static device region addresses to reduce MMU table count" into integration
|
| #
53a868f6 |
| 25-Oct-2023 |
Andrew Davis <afd@ti.com> |
fix(ti): align static device region addresses to reduce MMU table count
Align our device memory regions to the next highest MMU table level (LV2). This allows the xlat_tables library code to use a s
fix(ti): align static device region addresses to reduce MMU table count
Align our device memory regions to the next highest MMU table level (LV2). This allows the xlat_tables library code to use a single entry in the higher order table, vs having to create a new table for LV3 entries.
This reduces our tables to just 4: 2 LV2 and 1 LV3 plus 1 spare in case alignment changes ever cause one to be split. This saves 24KB of our 128KB total TF-A SRAM (~18%!).
While here, as USE_COHERENT_MEM does not change MAX_XLAT_TABLES but does change our total MAX_MMAP_REGIONS, move that check accordingly.
Signed-off-by: Andrew Davis <afd@ti.com> Change-Id: I4cb8e3b2cc3d05c6c9a84d887dd6ec56bde7a786
show more ...
|
| #
a2ecddde |
| 23-May-2023 |
Madhukar Pappireddy <madhukar.pappireddy@arm.com> |
Merge "fix(ti): remove check for zero value in BL31 boot args" into integration
|
| #
44edd3bd |
| 17-May-2023 |
Andrew Davis <afd@ti.com> |
fix(ti): remove check for zero value in BL31 boot args
The commit 3e14df6f6330 removed clearing of argument registers even when BL31 is the first stage. In that case the registers are left in a rand
fix(ti): remove check for zero value in BL31 boot args
The commit 3e14df6f6330 removed clearing of argument registers even when BL31 is the first stage. In that case the registers are left in a random state. TI platforms check that the arguments have been zero'd in early setup and so all TI platforms are not broken. Not sure why this check was here at all, so simply remove it to fix boot.
Fixes: 3e14df6f6330 ("fix(bl31): avoid clearing of argument registers in RESET_TO_BL31 case") Signed-off-by: Andrew Davis <afd@ti.com> Change-Id: I02bdd16b67fb5facc4c47ec596a42f110a663377
show more ...
|
| #
7a23f053 |
| 13-Mar-2023 |
Madhukar Pappireddy <madhukar.pappireddy@arm.com> |
Merge "fix(ti): do not take system power reference in bl31_platform_setup()" into integration
|
| #
99779481 |
| 07-Mar-2023 |
Andrew Davis <afd@ti.com> |
fix(ti): do not take system power reference in bl31_platform_setup()
Taking a reference at this early stage can cause boot failure if the DM firmware is not fully initialized. Remove this early call
fix(ti): do not take system power reference in bl31_platform_setup()
Taking a reference at this early stage can cause boot failure if the DM firmware is not fully initialized. Remove this early call until the fix in DM firmware is widely available.
Signed-off-by: Andrew Davis <afd@ti.com> Change-Id: Ic9c47ccf1e9a1b9faeb1c7d2665d54cf55ef5396
show more ...
|
| #
01855239 |
| 16-Jan-2023 |
Madhukar Pappireddy <madhukar.pappireddy@arm.com> |
Merge changes from topic "ti-k3-checks-and-refactor" into integration
* changes: fix(ti): fix typo in boot authentication message name refactor(ti): remove empty validate_ns_entrypoint function
Merge changes from topic "ti-k3-checks-and-refactor" into integration
* changes: fix(ti): fix typo in boot authentication message name refactor(ti): remove empty validate_ns_entrypoint function refactor(ti): use console_set_scope() rather than empty function hack refactor(ti): factor out common board code into common files feat(ti): add PSCI system_off support feat(ti): do not handle EAs in EL3 feat(ti): set snoop-delayed exclusive handling on A72 cores feat(ti): disable L2 dataless UniqueClean evictions feat(ti): set L2 cache ECC and and parity on A72 cores feat(ti): set L2 cache data ram latency on A72 cores to 4 cycles
show more ...
|
| #
7c85bfac |
| 16-Nov-2022 |
Andrew Davis <afd@ti.com> |
refactor(ti): use console_set_scope() rather than empty function hack
Signed-off-by: Andrew Davis <afd@ti.com> Change-Id: I62c1215bc02e95a7ea9fa1e2dfa9ef05e204fce1
|
| #
0bdef264 |
| 16-Nov-2022 |
Andrew Davis <afd@ti.com> |
feat(ti): add PSCI system_off support
Send a TI-SCI control message to system firmware to power down the board.
Signed-off-by: Andrew Davis <afd@ti.com> Change-Id: I6b8fa64baa94da078db82fc8e115630c
feat(ti): add PSCI system_off support
Send a TI-SCI control message to system firmware to power down the board.
Signed-off-by: Andrew Davis <afd@ti.com> Change-Id: I6b8fa64baa94da078db82fc8e115630c9f200b3d
show more ...
|
| #
dd6efc9e |
| 30-Apr-2021 |
Manish Pandey <manish.pandey2@arm.com> |
Merge changes I8e67a921,I0dc06072,I5e149063,I962cdfc7,I5c5d0444 into integration
* changes: plat: ti: k3: board: Let explicitly map our SEC_SRAM_BASE to 0x0 plat: ti: k3: board: Lets cast our ma
Merge changes I8e67a921,I0dc06072,I5e149063,I962cdfc7,I5c5d0444 into integration
* changes: plat: ti: k3: board: Let explicitly map our SEC_SRAM_BASE to 0x0 plat: ti: k3: board: Lets cast our macros plat: ti: k3: common: bl31_setup: Use BL31_SIZE instead of computing plat: ti: k3: platform_def.h: Define the correct number of max table entries plat: ti: k3: board: lite: Increase SRAM size to account for additional table
show more ...
|
| #
a2b56476 |
| 26-Mar-2021 |
Nishanth Menon <nm@ti.com> |
plat: ti: k3: common: bl31_setup: Use BL31_SIZE instead of computing
We compute BL31_END - BL31_START on the fly, which is basically BL31_SIZE. Lets just use the BL31_SIZE directly so that we dont c
plat: ti: k3: common: bl31_setup: Use BL31_SIZE instead of computing
We compute BL31_END - BL31_START on the fly, which is basically BL31_SIZE. Lets just use the BL31_SIZE directly so that we dont complicate PIE relocations when actual address is +ve and -ve offsets relative to link address.
Signed-off-by: Nishanth Menon <nm@ti.com> Change-Id: I5e14906381d2d059163800d39798eb39c42da4ec
show more ...
|
| #
c390ecd6 |
| 23-Dec-2020 |
Madhukar Pappireddy <madhukar.pappireddy@arm.com> |
Merge changes I8cd2c1c9,I697711ee,I4a0ec150,I4f8064b9,Ie22cb2a3, ... into integration
* changes: ti: k3: Introduce lite device board support ti: k3: common: sec_proxy: Introduce sec_proxy_lite d
Merge changes I8cd2c1c9,I697711ee,I4a0ec150,I4f8064b9,Ie22cb2a3, ... into integration
* changes: ti: k3: Introduce lite device board support ti: k3: common: sec_proxy: Introduce sec_proxy_lite definition ti: k3: Move USE_COHERENT_MEM only for the generic board ti: k3: drivers: ti_sci: Update ti_sci_msg_req_reboot to include domain ti: k3: common: sec_proxy: Fill non-message data fields with 0x0 ti: k3: common: Make plat_get_syscnt_freq2 check CNT_FID0 GTC reg ti: k3: common: Enable A72 erratum 1319367 ti: k3: common: Enable A53 erratum 1530924 maintainers: Update maintainers for TI port
show more ...
|
| #
6a22d9ea |
| 11-Dec-2020 |
Nishanth Menon <nm@ti.com> |
ti: k3: common: Make plat_get_syscnt_freq2 check CNT_FID0 GTC reg
ARM's generic timer[1] picks up it's graycode from GTC. However, the frequency of the GTC is supposed to be programmed in CNTFID0[2]
ti: k3: common: Make plat_get_syscnt_freq2 check CNT_FID0 GTC reg
ARM's generic timer[1] picks up it's graycode from GTC. However, the frequency of the GTC is supposed to be programmed in CNTFID0[2] register.
In K3, architecture, GTC provides a central time to many parts of the SoC including graycode to the generic timer in the ARMv8 subsystem. However, due to the central nature and the need to enable the counter early in the boot process, the R5 based bootloader enables GTC and programs it's frequency based on central needs of the system. This may not be a constant 200MHz based on the system. The bootloader is supposed to program the FID0 register with the correct frequency it has sourced for GTC from the central system controller, and TF-A is supposed to use that as the frequency for it's local timer.
A mismatch in programmed frequency and what we program for generic timer will, as we can imagine, all kind of weird mayhem.
So, check the CNTFID0 register, if it is 0, warn and use the default frequency to continue the boot process.
While at it, we can also check CNTCR register to provide some basic diagnostics to make sure that we don't have OS folks scratch their heads. Even though this is used during cpu online operations, the cost of this additional check is minimal enough for us not to use #ifdeffery with DEBUG flags.
[1] https://developer.arm.com/documentation/100095/0002/generic-timer/generic-timer-register-summary/aarch64-generic-timer-register-summary [2] https://developer.arm.com/docs/ddi0595/h/external-system-registers/cntfid0 [3] https://developer.arm.com/docs/ddi0595/h/external-system-registers/cntcr
Signed-off-by: Nishanth Menon <nm@ti.com> Change-Id: Ib03e06788580f3540dcb1a11677d0d6d398b2c9f
show more ...
|
| #
591e2b3d |
| 29-Apr-2019 |
Soby Mathew <soby.mathew@arm.com> |
Merge changes from topic "k3-coherency" into integration
* changes: ti: k3: common: Mark sections for AM65x coherency workaround ti: k3: common: Allow USE_COHERENT_MEM for K3 ti: k3: common: F
Merge changes from topic "k3-coherency" into integration
* changes: ti: k3: common: Mark sections for AM65x coherency workaround ti: k3: common: Allow USE_COHERENT_MEM for K3 ti: k3: common: Fix RO data area size calculation ti: k3: common: Remove unused STUB macro
show more ...
|
| #
ebfb0709 |
| 25-Apr-2019 |
Andrew F. Davis <afd@ti.com> |
ti: k3: common: Allow USE_COHERENT_MEM for K3
To make the USE_COHERENT_MEM option work we need to add an entry for the area to our memory map table. Also fixup the alignment here.
Signed-off-by: An
ti: k3: common: Allow USE_COHERENT_MEM for K3
To make the USE_COHERENT_MEM option work we need to add an entry for the area to our memory map table. Also fixup the alignment here.
Signed-off-by: Andrew F. Davis <afd@ti.com> Change-Id: I1c05477a97646ac73846a711bc38d3746628d847
show more ...
|
| #
64752374 |
| 25-Apr-2019 |
Andrew F. Davis <afd@ti.com> |
ti: k3: common: Fix RO data area size calculation
The size of the RO data area was calculated by subtracting the area end address from itself and not the base address due to a typo. Fix this here.
ti: k3: common: Fix RO data area size calculation
The size of the RO data area was calculated by subtracting the area end address from itself and not the base address due to a typo. Fix this here.
Note, this was noticed at a glance thanks to the new aligned formating of this table.
Signed-off-by: Andrew F. Davis <afd@ti.com> Change-Id: I994022ac9fc95dc5e37a420714da76081c61cce7
show more ...
|
| #
568bfb7b |
| 24-Apr-2019 |
Antonio Niño Díaz <antonio.ninodiaz@arm.com> |
Merge changes from topic "k3-cleanups" into integration
* changes: ti: k3: common: Align elements of map region table ti: k3: common: Enable SEPARATE_CODE_AND_RODATA by default ti: k3: common:
Merge changes from topic "k3-cleanups" into integration
* changes: ti: k3: common: Align elements of map region table ti: k3: common: Enable SEPARATE_CODE_AND_RODATA by default ti: k3: common: Remove shared RAM space ti: k3: common: Drop _ADDRESS from K3_USART_BASE to match other defines
show more ...
|
| #
883eab2b |
| 22-Jan-2019 |
Andrew F. Davis <afd@ti.com> |
ti: k3: common: Align elements of map region table
This is only a formatting change but makes it instantly clear how each region is set. This is over 80 chars and the MT_RO are not strictly needed b
ti: k3: common: Align elements of map region table
This is only a formatting change but makes it instantly clear how each region is set. This is over 80 chars and the MT_RO are not strictly needed but this section very important to get right so make readability the priority here.
Signed-off-by: Andrew F. Davis <afd@ti.com> Change-Id: I2432deda05d4502b3478170296b5da43f26ad8e6
show more ...
|
| #
e2dc40a2 |
| 22-Jan-2019 |
Andrew F. Davis <afd@ti.com> |
ti: k3: common: Enable SEPARATE_CODE_AND_RODATA by default
This should be more secure and looks a bit cleaner.
Signed-off-by: Andrew F. Davis <afd@ti.com> Change-Id: Ie5eaf0234b211ba02631cf5eab5faa
ti: k3: common: Enable SEPARATE_CODE_AND_RODATA by default
This should be more secure and looks a bit cleaner.
Signed-off-by: Andrew F. Davis <afd@ti.com> Change-Id: Ie5eaf0234b211ba02631cf5eab5faa1402a34461
show more ...
|
| #
32e29fcb |
| 22-Jan-2019 |
Andrew F. Davis <afd@ti.com> |
ti: k3: common: Remove shared RAM space
We don't use this for anything right now, remove it.
Signed-off-by: Andrew F. Davis <afd@ti.com> Change-Id: I11505d01834f7ff1fdba46fda0acbb3b56fc9b66
|