[PATCH v5 0/9] Inline ECC Series
Wadim Egorov
w.egorov at phytec.de
Fri Dec 20 07:41:06 CET 2024
Hi Santhosh,
Am 13.12.24 um 17:31 schrieb Santhosh Kumar K:
> Hello,
>
> This series is to:
>
> Add support for Inline ECC in DDR for AM64X, AM62X, AM62AX, AM62PX,
> J721S2 and J784S4 devices.
>
> (1/9) Add ss_cfg reg entry
> (2/9) Enable ECC priming with BIST engine
> (3/9) Add a function to store base address and size of RAM's banks
> in a 64-bit device private data
> (4/9) Setup the ECC region start and range
> (5/9) Enable ECC 1-bit error, 2-bit error and multiple-bit
> error interrupts
> (6/9) Add CONFIG_K3_INLINE_ECC
> (7/9) Remove 'ti,ecc-enable' flag
> (8/9) Set default NR_DRAM_BANKS to 2
> (9/9) Pull Redundant DDR functions to a common location and Fixup
> DDR size when ECC is enabled
>
> Changes since v4:
> 1. Make dram_init and dram_init_banksize weak at mach-k3/ and define at
> board/ti/
> 2. Remove 'ti,ecc-enable' flag
> 3. Minor changes like patch order change (8/8 in v4 to 1/9 in v5),
> use 'u64'
Tested on a phycore-am62x with a 1 and 2 GB variant, so you can have my
Tested-by: Wadim Egorov <w.egorov at phytec.de>
for this series.
>
> v4: https://lore.kernel.org/u-boot/20241021044024.835846-1-s-k6@ti.com/
>
> Changes since v3:
> Pull redundant DDR functions to arch/arm/mach-k3/*
>
> v3: https://lore.kernel.org/all/20240523050430.455201-1-s-k6@ti.com/
>
> Changes since v2:
> Removed 'default n' in Kconfig as that is default setting
>
> v2: https://lore.kernel.org/u-boot/20240510084707.1903133-1-s-k6@ti.com/
>
> Changes since v1:
> Add support for J7* devices.
>
> v1: https://lore.kernel.org/u-boot/20240131060213.1128024-1-s-k6@ti.com/
>
> Test Results: https://gist.github.com/santhosh21/88de920771ed2efa0463a5a367cb8d7b
>
> Thanks and Regards,
> Santhosh.
>
> Georgi Vlaev (1):
> ram: k3-ddrss: Use the DDR controller BIST engine for ECC priming
>
> Neha Malcom Francis (2):
> drivers: ram: Kconfig: Add CONFIG_K3_INLINE_ECC
> arm: mach-k3: Set NR_DRAM_BANKS to 2
>
> Santhosh Kumar K (6):
> arm: dts: k3-*-ddr: Add ss_cfg reg entry
> ram: k3-ddrss: Add k3_ddrss_ddr_bank_base_size_calc() to solve
> 'calculations restricted to 32 bits' issue
> ram: k3-ddrss: Setup ECC region start and range
> ram: k3-ddrss: Enable ECC interrupts
> ram: k3-ddrss: Remove 'ti,ecc-enable' support
> board: ti: Pull redundant DDR functions to a common location and Fixup
> DDR size when ECC is enabled
>
> arch/arm/dts/k3-am62a-ddr.dtsi | 7 +-
> arch/arm/dts/k3-j721s2-ddr.dtsi | 12 +-
> arch/arm/dts/k3-j784s4-ddr.dtsi | 24 ++-
> arch/arm/mach-k3/Kconfig | 3 +
> arch/arm/mach-k3/Makefile | 2 +-
> arch/arm/mach-k3/include/mach/k3-ddr.h | 15 ++
> arch/arm/mach-k3/k3-ddr.c | 72 ++++++++
> board/ti/am62ax/evm.c | 17 +-
> board/ti/am62px/evm.c | 17 +-
> board/ti/am62x/evm.c | 63 +------
> board/ti/am64x/evm.c | 73 +--------
> board/ti/am65x/evm.c | 29 +---
> board/ti/common/Makefile | 1 +
> board/ti/common/k3-ddr.c | 33 ++++
> board/ti/common/k3-ddr.h | 12 ++
> board/ti/j721e/evm.c | 29 +---
> board/ti/j721s2/evm.c | 35 ++--
> board/ti/j784s4/evm.c | 17 +-
> configs/am62ax_evm_a53_defconfig | 1 -
> configs/am62px_evm_a53_defconfig | 1 -
> configs/am62x_evm_a53_defconfig | 1 -
> configs/am62x_evm_r5_defconfig | 1 -
> configs/am64x_evm_a53_defconfig | 1 -
> configs/am64x_evm_r5_defconfig | 1 -
> configs/am65x_evm_a53_defconfig | 1 -
> configs/am65x_evm_r5_defconfig | 1 -
> configs/am65x_evm_r5_usbdfu_defconfig | 1 -
> configs/am65x_evm_r5_usbmsc_defconfig | 1 -
> configs/j7200_evm_a72_defconfig | 1 -
> configs/j721e_evm_a72_defconfig | 1 -
> configs/j721s2_evm_a72_defconfig | 1 -
> configs/j722s_evm_a53_defconfig | 1 -
> configs/j784s4_evm_a72_defconfig | 1 -
> drivers/ram/Kconfig | 10 ++
> drivers/ram/k3-ddrss/k3-ddrss.c | 219 +++++++++++++++++++++----
> 35 files changed, 417 insertions(+), 288 deletions(-)
> create mode 100644 arch/arm/mach-k3/include/mach/k3-ddr.h
> create mode 100644 arch/arm/mach-k3/k3-ddr.c
> create mode 100644 board/ti/common/k3-ddr.c
> create mode 100644 board/ti/common/k3-ddr.h
>
More information about the U-Boot
mailing list