Cannot set CONFIG_DDR_NODIMM

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Cannot set CONFIG_DDR_NODIMM

813 Views
bezeria
Contributor II

I am using latest flexbuild from https://github.com/NXP/flexbuild

I am modifying `flexbuild/components_lsdk2512/bsp/atf/plat/nxp/soc-lx2160a/lx2160ardb/platform.mk`

to include `CONFIG_DDR_NODIMM := 1`

Afterwards, I am rebuilding atf with `bld atf -m lx2160ardb -b sd` , but I am getting the following error:

Building ATF for lx2160ardb sd boot
cp: cannot stat 'build/lx2160ardb/release/bl2_sd*.pbl': No such file or directory
make[1]: *** [/home/bezeria/repos/flexbuild/src/bsp/atf.mk:107: atf] Error 1
make: *** [Makefile:14: atf] Error 2

0 Kudos
Reply
4 Replies

715 Views
bezeria
Contributor II

I managed to fix the MCLK cycle problem, but I arrived to a new problem of interleaving mode. I am using the default 2 ddr controllers NUM_OF_DDRC . The error is:

NOTICE: BL2: Built : 23:02:58, Feb 28 2026
NOTICE: Fixed DDR Config 1
ERROR: Unknown interleaving modeERROR: Assigning address error

This happens with 2 or 4 DIMM configuration (info.dimm_on_ctlr = DDRC_NUM_DIMM  = 2 or 4)

0 Kudos
Reply

719 Views
bezeria
Contributor II

One problem is fixed when I updated the ddr_get_ddr_params in ddr_init.c

The atf compiles now succesfully, but when I deploy it, I get 

NOTICE: BL2: Built : 18:50:19, Feb 28 2026
NOTICE: Fixed DDR Config 1
ERROR: DDR Clk: MCLK cycle is 625 ps.
ERROR: DDR Clk is faster than DIMM can support.
ERROR: Execution FW failed (error code -5)
ERROR: Calculating DDR PHY registers failed.

The DIMM I am deploying is 2933Mhz (lower than the default 3200Mhz); I have already edited the RCW to lower the DDR controller to 2900 and even 2600. The error still happens.

How can I correctly configure the DDR clock?

0 Kudos
Reply

779 Views
LFGP
NXP TechSupport
NXP TechSupport

Dear @bezeria ,

The LX2160 platform doesn't have support for NODIMM out of the box.

you need to add  your DDR_NODIMM_Custom file to ATF.

Please use the DDRv tool to obtain the ddr_init.c acoording to your needs, then add it to the ATF. 

BR

LFGP

0 Kudos
Reply

769 Views
bezeria
Contributor II

I have the values for CONFIG_DDR_NODIMM for the ATF.

I place them to ddr_init.c then place CONFIG_DDR_NODIMM:=1 to platform.mk, and issue

bld bsp -m lx2160ardb

But I get the error described in the previous post.

 

0 Kudos
Reply
%3CLINGO-SUB%20id%3D%22lingo-sub-2322628%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3ECannot%20set%20CONFIG_DDR_NODIMM%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2322628%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3EI%20am%20using%20latest%20flexbuild%20from%26nbsp%3B%3CA%20href%3D%22https%3A%2F%2Fgithub.com%2FNXP%2Fflexbuild%22%20target%3D%22_blank%22%20rel%3D%22noopener%20nofollow%20noreferrer%22%3Ehttps%3A%2F%2Fgithub.com%2FNXP%2Fflexbuild%3C%2FA%3E%3C%2FP%3E%3CP%3EI%20am%20modifying%20%60flexbuild%2Fcomponents_lsdk2512%2Fbsp%2Fatf%2Fplat%2Fnxp%2Fsoc-lx2160a%2Flx2160ardb%2Fplatform.mk%60%3C%2FP%3E%3CP%3Eto%20include%20%60CONFIG_DDR_NODIMM%20%3A%3D%201%60%3C%2FP%3E%3CP%3EAfterwards%2C%20I%20am%20rebuilding%20atf%20with%20%60bld%20atf%20-m%20lx2160ardb%20-b%20sd%60%20%2C%20but%20I%20am%20getting%20the%20following%20error%3A%3C%2FP%3E%3CP%3EBuilding%20ATF%20for%20lx2160ardb%20sd%20boot%3CBR%20%2F%3Ecp%3A%20cannot%20stat%20'build%2Flx2160ardb%2Frelease%2Fbl2_sd*.pbl'%3A%20No%20such%20file%20or%20directory%3CBR%20%2F%3Emake%5B1%5D%3A%20***%20%5B%2Fhome%2Fbezeria%2Frepos%2Fflexbuild%2Fsrc%2Fbsp%2Fatf.mk%3A107%3A%20atf%5D%20Error%201%3CBR%20%2F%3Emake%3A%20***%20%5BMakefile%3A14%3A%20atf%5D%20Error%202%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2323909%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20Cannot%20set%20CONFIG_DDR_NODIMM%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2323909%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3EDear%26nbsp%3B%3CA%20href%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fuser%2Fviewprofilepage%2Fuser-id%2F256728%22%20target%3D%22_blank%22%3E%40bezeria%3C%2FA%3E%26nbsp%3B%2C%3C%2FP%3E%0A%3CP%3EThe%20LX2160%20platform%20doesn't%20have%20support%20for%20NODIMM%20out%20of%20the%20box.%3C%2FP%3E%0A%3CP%3Eyou%20need%20to%20add%26nbsp%3B%20your%20DDR_NODIMM_Custom%20file%20to%20ATF.%3C%2FP%3E%0A%3CP%3EPlease%20use%20the%20DDRv%20tool%20to%20obtain%20the%20ddr_init.c%20acoording%20to%20your%20needs%2C%20then%20add%20it%20to%20the%20ATF.%26nbsp%3B%3C%2FP%3E%0A%3CP%3EBR%3C%2FP%3E%0A%3CP%3ELFGP%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2323925%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20Cannot%20set%20CONFIG_DDR_NODIMM%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2323925%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3EI%20have%20the%20values%20for%20CONFIG_DDR_NODIMM%20for%20the%20ATF.%3C%2FP%3E%3CP%3EI%20place%20them%20to%20ddr_init.c%20then%20place%20CONFIG_DDR_NODIMM%3A%3D1%20to%20platform.mk%2C%20and%20issue%3C%2FP%3E%3CP%3Ebld%20bsp%20-m%20lx2160ardb%3C%2FP%3E%3CP%3EBut%20I%20get%20the%20error%20described%20in%20the%20previous%20post.%3C%2FP%3E%3CBR%20%2F%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2324724%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20Cannot%20set%20CONFIG_DDR_NODIMM%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2324724%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3EOne%20problem%20is%20fixed%20when%20I%20updated%20the%26nbsp%3Bddr_get_ddr_params%20in%20ddr_init.c%3C%2FP%3E%3CP%3EThe%20atf%20compiles%20now%20succesfully%2C%20but%20when%20I%20deploy%20it%2C%20I%20get%26nbsp%3B%3C%2FP%3E%3CBLOCKQUOTE%3E%3CP%3ENOTICE%3A%20BL2%3A%20Built%20%3A%2018%3A50%3A19%2C%20Feb%2028%202026%3CBR%20%2F%3ENOTICE%3A%20Fixed%20DDR%20Config%201%3CBR%20%2F%3EERROR%3A%20DDR%20Clk%3A%20MCLK%20cycle%20is%20625%20ps.%3CBR%20%2F%3EERROR%3A%20DDR%20Clk%20is%20faster%20than%20DIMM%20can%20support.%3CBR%20%2F%3EERROR%3A%20Execution%20FW%20failed%20(error%20code%20-5)%3CBR%20%2F%3EERROR%3A%20Calculating%20DDR%20PHY%20registers%20failed.%3C%2FP%3E%3C%2FBLOCKQUOTE%3E%3CP%3EThe%20DIMM%20I%20am%20deploying%20is%202933Mhz%20(lower%20than%20the%20default%203200Mhz)%3B%20I%20have%20already%20edited%20the%20RCW%20to%20lower%20the%20DDR%20controller%20to%202900%20and%20even%202600.%20The%20error%20still%20happens.%3C%2FP%3E%3CP%3EHow%20can%20I%20correctly%20configure%20the%20DDR%20clock%3F%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2324729%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20Cannot%20set%20CONFIG_DDR_NODIMM%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2324729%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3EI%20managed%20to%20fix%20the%20MCLK%20cycle%20problem%2C%20but%20I%20arrived%20to%20a%20new%20problem%20of%20interleaving%20mode.%20I%20am%20using%20the%20default%202%20ddr%20controllers%26nbsp%3BNUM_OF_DDRC%20.%20The%20error%20is%3A%3C%2FP%3E%3CBLOCKQUOTE%3E%3CP%3ENOTICE%3A%20BL2%3A%20Built%20%3A%2023%3A02%3A58%2C%20Feb%2028%202026%3CBR%20%2F%3ENOTICE%3A%20Fixed%20DDR%20Config%201%3CBR%20%2F%3EERROR%3A%20Unknown%20interleaving%20modeERROR%3A%20Assigning%20address%20error%3C%2FP%3E%3C%2FBLOCKQUOTE%3E%3CP%3EThis%20happens%20with%202%20or%204%20DIMM%20configuration%20(info.dimm_on_ctlr%20%3D%20DDRC_NUM_DIMM%26nbsp%3B%20%3D%202%20or%204)%3C%2FP%3E%3C%2FLINGO-BODY%3E