The u-boot of i.MX6ULL chip needs header data.The update_nand.c will
add header data when writing into NAND flash.
These code reference from Digi ccimx6ul.
Add fastboot and recovery mode support for mx6qarm
Signed-off-by: Adrian Alonso <adrian.alonso@nxp.com>
(Cherry picked from commit 505e899ce582118da28ca1f4487ce7f179225bd7)
Adjust ahb/axi clock root podf dividers to be divided by 1
to allow ahb/axi clock root to be 24Mhz when sourced
from osc_clk.
Signed-off-by: Adrian Alonso <adrian.alonso@nxp.com>
(Cherry picked from commit 9e80234c823d6a2a0d9e10ab4c4c605bf646bd22)
VGEN3 and VGEN5 have been fused the right value in PF0100 on i.mx6qp board,
so software didn't need to change their voltage output anymore. Otherwise,
VGEN3 will be wrongly updated from 1.8v to 2.8v.
Signed-off-by: Robin Gong <yibin.gong@nxp.com>
(cherry picked from commit 6f7f185664a401f03f6ce6c81b996c1f27fdbe73)
Update the LPDDR2 script to 1.2 rev with delay line settings changed.
File:
IMX6ULL_9X9_LPDDR2_400MHz_16bit_V1.2.inc
https://nxp1.sharepoint.com/teams/123/IMX6ULL/SitePages/Documents.aspx
Changes:
Update Delay Line Settings based on the delay line calibration results of more boards.
MMDC_MPRDDLCTL = 0x40403439
MMDC_MPWRDLCTL = 0X4040342D
Test:
One 9x9 EVK board pass stress memtester.
Signed-off-by: Ye Li <ye.li@nxp.com>
Add two build configs for i.MX6ULL 9X9 EVK. And update lpddr2 script
for the board to version 1.0.
DDR script:
IMX6ULL_9X9_LPDDR2_400MHz_16bit_V1.0.inc
Changes:
Initial version
Test:
Passed memtester overnight test on 1 board.
Signed-off-by: Ye Li <ye.li@nxp.com>
We found a issue in PLL6 ENET that changing the bit[1:0] DIV_SELECT for ENET
ref clock will impact the SATA ref 100Mhz clock. If SATA is initialized before
this changing, SATA read/write can't work after it. And we have to re-init SATA.
The issue can reproduce on both i.MX6DQP and i.MX6DQ. IC investigation is ongoing.
This patch is an work around that moves the ENET clock setting
(enable_fec_anatop_clock) from ethernet init to board_init which is prior
than SATA initialization. So there is no PLL6 change after SATA init.
Signed-off-by: Ye Li <ye.li@nxp.com>
Add configs and board level codes for i.MX6ULL 14x14 EVK. Very similar
board from i.MX6UL EVK. I2C, UART, USB, QSPI, SD, ENET and LCD are ok
to work.
The codes for i.MX6ULL 9x9 EVK is kept. We will add 9x9 build target when
it is needed.
The DDR3 script is using version 1.2:
File: EVK_IMX6ULL_DDR3L_400MHz_512MB_16bit_V1.2_NewDRAM.inc
Test: 3 boards passed memtester.
Build target:
mx6ull_14x14_evk_defconfig
Signed-off-by: Ye Li <ye.li@nxp.com>
File:
IMX6ULL_DDR3L_400MHz_1GB_16bit_V2.2.inc
Changes:
Change MMDC_MDMISC.WALAT to 1
setmem /32 0x021B0018 = 0x00211740
Test:
Passed memtester on two mx6ull ddr3 arm2 boards
Signed-off-by: Ye Li <ye.li@nxp.com>
LCD_PWR_EN controls the G pin of Q13 PMOS which needs low voltage to connect
D to S for outputting LCD 3.3V. If LCD_PWR_EN is high, we measured the LCD 3v3
is actually 1.2V.
Signed-off-by: Ye Li <ye.li@nxp.com>
(cherry picked from commit 28eb616b6c49de492cc0cdb3ad5b618bed77960f)
add new NAND config for i.MX6UL 14x14 EVK board, and disable USDHC2 when
NAND enabled due to pin conflict.
Signed-off-by: Han Xu <han.xu@nxp.com>
(cherry picked from commit 81e175bcc07792fab6010761daf6576bd600edda)
In u-boot, i.MX6QP sabresd board uses 125Mhz ref clock from PHY,
While kernel uses the clock from internal PLL by setting GPR5 bit 9.
When doing warm reset in kernel, the GPR regigster is not reset, so
the clock source still is the PLL. This causes ENET in u-boot can't work.
In this patch, we change the u-boot to use internal PLL to align with
kernel for i.MX6QP. This also fixes the ENET issue after kernel warm reset.
Signed-off-by: Ye Li <ye.li@nxp.com>
On i.MX7D lpddr3, retention mode exit flow should restore
more registers to make sure the ddr controller and ddr phy
settings restored properly, otherwise, some of the boards
can NOT pass memtester after retention mode exited.
For LPSR mode, ddr resume flow is same as retention mode,
just adjust it accordingly.
Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
i.MX7D TO1.2 removes the DDR PADs retention mode setting
in IOMUXC GPR, it is same as TO1.0, so only apply the
IOMUXC GPR setting for TO1.1.
Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
Since the CD pin of SD2 is DNP on the mx6ull arm2 board, this will cause
SD2 access problem even the card is inserted. Hard code the CD result to
1 to assume the card is always on.
The SD driver will return other errors if the card does not exist.
Signed-off-by: Ye Li <ye.li@nxp.com>
(cherry picked from commit 47efe2fda62297ab1da8594828cd7bd928ecbda7)
1. Bind the macro CONFIG_MX6ULL_DDR3_ARM2_EMMC_REWORK to eMMC 8 bits rework, which
conflicts with QSPIA and NAND, that we have to disable them at same time.
2. Bind the macro CONFIG_MX6ULL_DDR3_ARM2_QSPIB_REWORK to QSPI B port rework, which
conflicts with SD2 and NAND, that we have to disable them at same time.
3. Fix a typo issue of CONFIG_MX6ULL_DDR3_ARM2_EMMC_REWORK
4. Enable QSPI support for default SD boot case.
Signed-off-by: Ye Li <ye.li@nxp.com>
(cherry picked from commit 00f36b3e9445ff47ed68262ef2d656e410cd8fcd)
Fix build error for Plugin
"Can't stat board/freescale/mx6ul_14x14_ddr3_arm2/plugin.bin: Bad file descriptor"
Signed-off-by: Peng Fan <peng.fan@nxp.com>
(cherry picked from commit 95860f1213c038ef2e5900d1874ff5398ac0be2a)
Support mx6ull ddr3 arm2 board.
DDR script version 1.1. Passed memtester on 3 boards.
Take mx6ul 14x14 ddr3 arm2 as reference.
Note:
LCD/NAND/ECSPI not tested, need hardware rework.
Signed-off-by: Peng Fan <peng.fan@nxp.com>
(cherry picked from commit 584050b98c)
Q901 is PMOS, LCD_nPWREN should be at low voltage then output is 3V3.
If LCD_nPWREN is high, output is 2.4V which is not correct.
Signed-off-by: Peng Fan <peng.fan@nxp.com>
Fix 74LV OE gpio index. pinmux is correct, but gpio index
is wrong, so gpio output will not have effect, since we
use wrong GPIO5_IO18, but not correct GPIO5_IO8.
And at the end of the initialization of 74lv init, should
keep OE voltage level at LOW, but not high.
Signed-off-by: Peng Fan <peng.fan@nxp.com>
Enable the configurations CONFIG_MODULE_FUSE and CONFIG_OF_SYSTEM_SETUP for
module fuse check. And modify board level codes for SD, FEC and EIM.
Signed-off-by: Ye Li <ye.li@nxp.com>
Setup MMDC in two channel fixed mode
Initialize dram banks for two channel fixed mode
DRAM bank = 0x00000000
-> start = 0x10000000
-> size = 0x20000000
DRAM bank = 0x00000001
-> start = 0x80000000
-> size = 0x20000000
Signed-off-by: Adrian Alonso <adrian.alonso@nxp.com>
Since DDR enter retention mode after kernel enter DSM mode, we have to exit DDR
retention mode before uboot boot, so add this in DCD and plugin code.
Signed-off-by: Robin Gong <yibin.gong@nxp.com>
(cherry picked from commit 62248ef80d)
When using watchdog timeout in kernel, the reset does not output the
WDOG_B signal, so the power supply won't be reset. To solve the problem,
we enable it in u-boot.
Signed-off-by: Ye Li <ye.li@nxp.com>
When using watchdog timeout in kernel, the reset does not output the
WDOG_B signal, so the power supply won't be reset. To solve the problem,
we enable it in u-boot.
Signed-off-by: Ye Li <ye.li@nxp.com>