Commit Graph

50111 Commits

Author SHA1 Message Date
Ye Li 9388275e14 MLK-20919 imx8: ahab: Add command to close the chip
Add a new command "ahab_close" to close the chip from NXP closed lifecycle
state to OEM closed state. If the sample is not NXP closed, the command
will fail.

Signed-off-by: Ye Li <ye.li@nxp.com>
Reviewed-by: Peng Fan <peng.fan@nxp.com>
(cherry picked from commit 771b824728caa59eebf2c3547b2e4296a08ee705)
2019-02-13 01:31:36 -08:00
Li Jun ac350411c7 MLK-20909 usb: dwc3: gadget: use usb_endpoint_maxp for req length
As endpoint.maxpackt is set at init for super speed, we can't use it
for USB2 connection, we need use the right max packet length according
to connection speed.

Signed-off-by: Li Jun <jun.li@nxp.com>
(cherry picked from commit 9c6bb3684649b4ae6f0275b5ad3799ea5c8f32df)
2019-02-13 01:31:23 -08:00
Ye Li aad2dd8b58 MLK-20886-12: imx8qxp_mek: Enable i2c and i2c mux virtual drivers
Update the defconfig files for imx8qxp MEK to enable i2c and
i2c mux virtual drivers.

Signed-off-by: Ye Li <ye.li@nxp.com>
Acked-by: Peng Fan <peng.fan@nxp.com>
(cherry picked from commit f2d75f7925108d4cc89c8cd4f1d9f735803c8ad1)
2019-02-12 06:56:32 -08:00
Ye Li 466c923102 MLK-20886-11: imx8qxp_mek: Remove GPIO1_1 for IO Expander reset
Since we have asked SCFW to do this job to avoid issues in partition
reboot, remove relevant codes.

Signed-off-by: Ye Li <ye.li@nxp.com>
(cherry picked from commit 8128566e843d76720cdc5c3e075fa303e401132f)
2019-02-12 06:56:32 -08:00
Ye Li 2795341aaa MLK-20886-10 imx8-power-domain: Check resource partition in probing the PD
If the resource is not owned by current partition, we can't power on/off
it, so we'd better return probe failure.

Signed-off-by: Ye Li <ye.li@nxp.com>
(cherry picked from commit 327115c1d490d35afd94ae416ad91bebd595cfe2)
2019-02-12 06:56:32 -08:00
Ye Li 4d4715081c MLK-20886-9 pinctrl-scu: Check the pad partition before set pinmux
If a pad is not owned by current partition we should not set its
pinmux.

Signed-off-by: Ye Li <ye.li@nxp.com>
(cherry picked from commit 547636514f8ae8b456f2351bc84cb7fb7b5fa3f3)
2019-02-12 06:56:32 -08:00
Ye Li bc49134b47 MLK-20886-8 DTS: imx8qxp_mek: Update for virtual i2c and i2c mux driver
Add compatible strings and properties to i2c1 node for using virtual
i2c and i2c mux drivers

Signed-off-by: Ye Li <ye.li@nxp.com>
(cherry picked from commit 9dbdbec24b2d0cd67d16cf93034b3ab60bb312bc)
2019-02-12 06:56:31 -08:00
Ye Li 70fa29c716 MLK-20886-7 DTS: imx8qm/qxp: Add MU8 and MU9 nodes
We use MU8 and MU9 to communicate with M4_0 and M4_1 in u-boot. Add
relevant nodes for the MU driver.

Signed-off-by: Ye Li <ye.li@nxp.com>
(cherry picked from commit b06674a91991fe3bfe5a2f6000195cb8546c72a6)
2019-02-12 06:56:31 -08:00
Ye Li c882f43aef MLK-20886-6 imx8qm/qxp: Implement runtime i2c driver binding
When a i2c device is binding with drivers, we check whether current
partition ownes the resource. If not owned, the binding to local lpi2c
driver will fail, otherwise binding to virtual i2c driver will fail.

Signed-off-by: Ye Li <ye.li@nxp.com>
(cherry picked from commit 81dd157fd0ba476c994e95a63515cb65164f1e87)
2019-02-12 06:56:31 -08:00
Ye Li caada879d1 MLK-20886-5 imx8qm/qxp: Implement VService function and buffer pagetable
Override the board_imx_vservice_find_mu for finding MU device for
virtual devices. The matching logic is if the M4_0 partition ownes
the resource of the device, we select MU8 for this Vservice channel.
Otherwise, if the M4_1 partition ownes the resource, we select MU9.

We reuse the kernel RPMSG Vring buffer for VService buffer, because it is
shared between OS partition and M4 partition. The pagetable is needed for
this region, since it is not in memregs of OS partition.

board_imx_vservice_get_buffer is also overriden is this patch to divide
VService buffer for MU8 and MU9.

Signed-off-by: Ye Li <ye.li@nxp.com>
(cherry picked from commit 4358b4cdfc4752822066d480dd1c10086c211be7)
2019-02-12 06:56:31 -08:00
Ye Li 169dd006cb MLK-20886-4 lpi2c: Provide override binding function
We provide override binding function, so the ARCH level can use it
to determine if it is ok to bind with lpi2c driver.

Signed-off-by: Ye Li <ye.li@nxp.com>
(cherry picked from commit b19418270a3d532eacb1069606fa2ab100e04601)
2019-02-12 06:56:31 -08:00
Ye Li 09ffd8d155 MLK-20886-3 i2c: Add virtual i2c and virtual i2c mux drivers
Add virtual i2c driver which replies on the VService to send SRTM i2c
messages with M4.
For each output on i2c mux, M4 side abstracts a i2c bus with special bus
id. The virtual i2c mux follows basic mux design, but uses dedicated flag
to pass the abstract bus id for the mux output to virtual i2c driver.

Virtual i2c and virtual i2c mux will bind nodes with compatible string
"fsl,imx-virt-i2c" and "fsl,imx-virt-i2c-mux".

To support binding local i2c driver or virtual i2c driver at runtime. We
provides a override function for the driver bind. ARCH level is responsible
to implement it.

Signed-off-by: Ye Li <ye.li@nxp.com>
(cherry picked from commit 25095e9f0d9816c22da97945b66439dfa277aa2b)
2019-02-12 06:56:30 -08:00
Ye Li 4db12a78ff MLK-20886-2 imx: Add Virtual service glue layer
We use a glue layer to link the low level MU driver and virtual drivers.
This glue layer is named to virtual service (iMX VService). Virtual service
provides unified interfaces for setup connection with M4, get message buffer
and send/receive message, etc.

Multiple virtual drivers (i2c, gpio, etc)
             |
         iMX Vservice
             |
       imx_mu_m4 driver

For each virtual device, by default, the Vservice uses the device node property
"fsl,vservice-mu" to specify the MU node handler. A override function is also provided,
so te ARCH level can define its rule. We will use the override function for dynamically
select MU on 8QM/QXP.

Signed-off-by: Ye Li <ye.li@nxp.com>
(cherry picked from commit 4d872794cae55ffb654a55646bbf231e8d864e13)
2019-02-12 06:56:30 -08:00
Ye Li b5c9636a96 MLK-20886-1 misc: MU: Add MU driver to communicate with M4
Add a common iMX MU driver in misc uclass to communicate with M4.
The MU message format is defined to use 4 words as below, the driver
will use all 4 TR/RR in MU to pass one message

|WORD 0     | WORD 1      | WORD 2          | WORD 3         |
|SEQ        | TYPE        | PAYLOAD ADDRESS | PAYLOAD LENGTH |

 - SEQ:
   A sequence id starts from 0 and increases for each request message

 - TYPE:
   0x1:  Request.  Message sent from AP will set to this value.
   0x2:  Response. Message responded from M4 set to this value.
   0x3:  MU A side is ready.
   0x4:  MU B side is ready.

 - PAYLOAD ADDRESS:
   A pointer to the memory address where the uplayer message is stored

 - PAYLOAD LENGTH:
   The uplayer message length

Signed-off-by: Ye Li <ye.li@nxp.com>
(cherry picked from commit aba0e51cc397e1d98be950f9c15619de06ebf782)
2019-02-12 06:56:21 -08:00
Ye Li d903cd890d MLK-20887 usb: gadget: Fix controller index in UMS
The usb mass storage (f_mass_storage.c) uses fixed usb index 0,
this causes problem while CDNS3 USB controller index is 1.
Modify the API of fsg to pass the controller index.

Signed-off-by: Ye Li <ye.li@nxp.com>
Reviewed-by: Jun Li <jun.li@nxp.com>
2019-02-11 00:06:37 -08:00
Ye Li a726a0c38b MLK-20902 imx8mm_evk: Change VDD_DRAM to 0.975v
According to latest datasheet IMX8MMCEC_Rev_0, the typical voltage
of VDD_DRAM for 1.5GHz DDR clock is 0.95v. Because BD71847MWV PMIC
does not support 0.95v output. We change the voltage to 0.975v as
the note in datasheet mentioned it is acceptable and supported.

Signed-off-by: Ye Li <ye.li@nxp.com>
Reviewed-by: Bai Ping <ping.bai@nxp.com>
2019-02-10 22:01:15 -08:00
Ye Li 2f3e58c8e9 MLK-20901 imx8: Sync SCFW API to latest
Sync the SCFW API to latest commit below:

    commit 0721a2af721fca45e9d7e9b673b669ffab9aca7f
    Author: Glen Wienecke <glen.wienecke@nxp.com>
    Date:   Sun Feb 10 19:16:56 2019 -0600

    SCF-296:  Partition reboot should not reset FSPI/OCRAM if in use
    - Update ss_rsrc_reset to return BUSY error if FSPI/OCRAM in use
    - Update pm_update_ridx to skip power transition if FSPI/OCRAM in use
    - For user_mode update requests, reflect mode achieved after pm_update_ridx
    - Add PM SVC call to get active mode (user_mode not accurate during transitions)
    - Undo some MISRA updates that changed ss_rsrc_reset to void function

    Signed-off-by: Glen Wienecke <glen.wienecke@nxp.com>

Signed-off-by: Ye Li <ye.li@nxp.com>
Acked-by: Peng Fan <peng.fan@nxp.com>
2019-02-10 22:00:02 -08:00
Utkarsh Gupta a9fdc0e4ef MLK-20787: imx: hab: Display All HAB events via hab_status command
Add ability for hab_status command to show All HAB events and not just
HAB failure events

Signed-off-by: Utkarsh Gupta <utkarsh.gupta@nxp.com>
Reviewed-by: Ye Li <ye.li@nxp.com>
2019-02-05 15:59:07 -06:00
Ji Luo fd421f74db MA-14051 Enable trusty for imx8q xen
Open configs to add trusty os support for imx8q xen
build. The rpmb keyslot package must be checked and
copied to secure memory before trusty os boot.

Change-Id: I66201783fa8439f2685377c10f257f064057dcfa
Signed-off-by: Ji Luo <ji.luo@nxp.com>
2019-01-31 12:41:00 +08:00
Ye Li 33a2b5d57a MLK-20884-2 imx8qm/qxp: Use new SCFW APIs for SECO
Since misc_seco APIs are deprecated in SCFW, need switch to new
APIs.

Signed-off-by: Ye Li <ye.li@nxp.com>
Acked-by: Peng Fan <peng.fan@nxp.com>
2019-01-30 18:28:56 -08:00
Ye Li bacee7266d MLK-20884-1 imx8qm/qxp: Update SCFW API to latest commit
Update SCFW API to below commit which has deprecated APIs with
misc_seco prefix.

commit 30b8f67097d65c6e22f218b106aeafdc636aece3
Author: Chuck Cannon <chuck.cannon@nxp.com>
Date:   Fri Jan 25 15:24:55 2019 -0600

    SCF-60: MISRA fixes.

    Signed-off-by: Chuck Cannon <chuck.cannon@nxp.com>

Signed-off-by: Ye Li <ye.li@nxp.com>
2019-01-30 05:42:23 -08:00
Ye Li f435435f2e MLK-20798 imx8: spl: Fix container header parser issue
Current container parser only load 0x400 as container header size.
However, the signature block in container header may exceed 0x400 size,
when using certificate or 4096bits RSA keys to sign image, so we
have to load the entire header according to container length field.
Otherwise the container authentication will fail

Signed-off-by: Ye Li <ye.li@nxp.com>
Reviewed-by: Peng Fan <peng.fan@nxp.com>
2019-01-30 05:01:52 -08:00
Ye Li abef8ce6c2 MLK-20796 imx8qm_mek: Remove base board reset
SCFW has taken to reset the base board by deasserting BB_PER_RST_B(SCU_GPIO0_01) on
imx8QM MEK board, and has removed the SC_R_BOARD_R1 functionality.
So We don't need to explicitly use SC_R_BOARD_R1, delete the codes from u-boot.

Signed-off-by: Ye Li <ye.li@nxp.com>
2019-01-24 19:21:38 -08:00
Ye Li 2f8269b3d8 MLK-20794-3 imx8qxp_arm2: Using CONFIG_DEFAULT_FDT_FILE for kernel FDT
Since different ARM2/Validation boards use different kernel FDT, configure
them to CONFIG_DEFAULT_FDT_FILE in defconfig

Signed-off-by: Ye Li <ye.li@nxp.com>
Reviewed-by: Peng Fan <peng.fan@nxp.com>
2019-01-24 18:38:07 -08:00
Ye Li 9eea203022 MLK-20794-2 imx8qxp_arm2: Add support for 17x17 validation boards
There are two new validation boards: LPDDR4 board (30123) and DDR3L board (30010)
for imx8x family 17x17 chips. These two boards have same design except the DDR.
Since SCFW is resposible for DDR initialization, U-boot could use one build to
cover two boards.
The 8DX 17x17 DDR3L ARM2 has been added into u-boot before, so we rename the config
CONFIG_TARGET_IMX8DX_DDR3_ARM2 to CONFIG_TARGET_IMX8X_17X17_VAL to cover DDR3L and
LPDDR4.

Considering 8DX and 8QXP 17x17 may solder to the boards, we create two defconfig:
one for DX and another for 8qxp to share with the CONFIG_TARGET_IMX8X_17X17_VAL
but with different FDTs.

Signed-off-by: Ye Li <ye.li@nxp.com>
2019-01-24 18:38:07 -08:00
Ye Li da636e4b8e MLK-20794-1 imx8: Change kernel FDT updating for fused parts
Before booting kernel, we check all nodes in kernel FDT whether they
are owned in our partition. If it is not owned, we will disable it in FDT.

For fused iMX8X 17x17 parts, like DC0 is disabled, SCFW only disable SC_R_DC_0,
other sub-modules in DC0 SS are still assign to our partition. Since DC0 is fused,
we actually can't access these sub-modules.

This patch changes the algorithm to check resources along the power domain tree to the
top node of that SS power domain. If any resource in the PD tree is not owned, we will
disable the peripheral node.
For example, the i2c0_mipi_lvds1 peripheral node, according to power domain tree,
we checks resources: SC_R_MIPI_1_I2C_0  -->  SC_R_MIPI_1  --> SC_R_DC_0. When SC_R_DC_0
is not owned, we will disable the i2c0_mipi_lvds1 peripheral node from FDT.

Signed-off-by: Ye Li <ye.li@nxp.com>
2019-01-24 18:38:07 -08:00
Luo Ji accea7eb04 MA-13980 [Auto] Reboot when slot is marked as unbootable
For dual bootloader, slot selection is made at spl stage, go to
fastboot when current slot is marked as unbootable in AVB will
give the user a chance to recover current slot with fastboot
commands. But in this scenario, the device can't switch to another
bootable slot automatically when a slot is marked as unbootable.

Reboot the board when current slot is marked as unbootable to make the
slot switch happen in spl.

Test: Slot switch to 'b' automatically when 'a' is marked as unbootable
      on imx8qxp_mek.

Change-Id: I94237965970d0c17ed564cf76e08d353f7b9c047
Signed-off-by: Luo Ji <ji.luo@nxp.com>
2019-01-24 12:13:50 +08:00
Ye Li e448aa707c MLK-20760-2 imx8qm_arm2: Align initrd env with other imx8qm/qxp boards
The imx8qm_arm2 has duplcated settings for initrd_addr and initrd_high,
and needs to change initrd_addr to 0x83100000 to align with other imx8
boards.

Signed-off-by: Ye Li <ye.li@nxp.com>
Reviewed-by: Peng Fan <peng.fan@nxp.com>
2019-01-22 05:40:26 -08:00
Ye Li 2a092ea07e MLK-20760-1 mx6/7: Fix memory overlap between initrd and optee
On most of mx6 and mx7 platforms, we set the initrd address to 0x3800000
offset from DRAM base. However, the optee address is 0x4000000 offset from
DRAM base. So it will cause memory overlap when using initramfs and optee at
same time, for example using uuu to boot into kernel.

To fix the conflict, we set initrd address to 0x6680000 offset from DRAM base,
because OPTEE needs reserve 32MB memory from 0x4000000 offset to 0x6000000 offset.

Signed-off-by: Ye Li <ye.li@nxp.com>
2019-01-22 01:03:41 -08:00
Ye Li 9dada8a697 MLK-20784-2 imx8mm: Load fuse for TMU TCALIV and TASR
On iMX8MM, the default value of TMU registers TCALIV and TASR need
be loaded from fuse. HW won't do this, it expect SW loads them before
using TMU.

Signed-off-by: Ye Li <ye.li@nxp.com>
Reviewed-by: Bai Ping <ping.bai@nxp.com>
2019-01-21 19:36:21 -08:00
Ye Li 1a66350d1b MLK-20784-1 TMU: Add a interface for TMU arch level initialization
Since imx8mm TMU needs to load some registers from fuse, this is arch
dependent operation and may vary on different platforms. So add
a interface for arch level initialization.

Signed-off-by: Ye Li <ye.li@nxp.com>
2019-01-21 19:36:21 -08:00
Luo Ji a9bf75b337 MA-13969 Fix CAAM build warnings
Fix some warinings as "defined but not used [-Wunused-function]".
for CAAM.

Test: Build and boot on imx8qm_mek.

Change-Id: I632257615a237ca2de96937e121e7a4bcab415ce
Signed-off-by: Luo Ji <ji.luo@nxp.com>
2019-01-21 17:50:48 +08:00
Ye Li 71f5000023 MLK-20783 imx8mm: spl: Change VDD_SOC to typical value 0.85V
According to the latest datasheet, software is expected to program
the VDD_SOC voltage to the typical value 0.85V prior to the first
DRAM memory access. At default the VDD_SOC is 0.8V from PMIC BUCK1,
so we have to change it to 0.85V in SPL.

Signed-off-by: Ye Li <ye.li@nxp.com>
Tested-by: Anson Huang <Anson.Huang@nxp.com>
2019-01-21 00:41:40 -08:00
Ye Li adb2db588c MLK-20781-4 mx7ulp_evk: Enable new mipi panel RM68200_WXGA
Enable the new mipi panel driver and add parameters to board codes.
We enable the RM68200_WXGA as default panel, users can set "panel"
environment variable to switch to different panel.

Signed-off-by: Ye Li <ye.li@nxp.com>
Reviewed-by: Fancy Fang <chen.fang@nxp.com>
2019-01-21 00:41:40 -08:00
Ye Li fcd5fac9eb MLK-20781-3 mx7ulp: clock: adjust LCDIF pixclock algorithm
Since LCDIF does not have a dedicated PLL as its source, we have to
find a best frequency closed to the target frequency. The previous
method is finding a closed clock with actual frequency higher than target.
But this causes problem to DSI PHY clock which uses target frequency to
calculate its clock parameters.  When the actaul pixclock is higher,
it may violates the requirement between DSI PHY clock and LCDIF pixclock clock.
clk_byte_freq >= dpi_pclk_freq * DPI_pixel_size / ( 8 * (cfg_num_lanes + 1))

So we'd better selecting a LCDIF clock not exceed the target frequency.

Signed-off-by: Ye Li <ye.li@nxp.com>
2019-01-21 00:41:40 -08:00
Ye Li d84ddab71e MLK-20781-2 video: dsi_northwest: Change the DSI PHY clock settings
The previous driver uses a hard coded value which generates the DSI
PHY clock can fit HX8363 WVGA screen. But when switching to new WXGA
screen which needs higher pixclock and higher DSI PHY clock, the
hard coded parameters can't work.
Change to follow kernel codes to find the best value of CM, CN, CO
parameters for DSI PHY clock to meet pixclock requirement.

Signed-off-by: Ye Li <ye.li@nxp.com>
2019-01-21 00:41:40 -08:00
Ye Li 0d68c30cfa MLK-20781-1 video: Add new mipi DSI panel RM68200_WXGA driver
mx7ulp EVK B will use two mipi dsi panels, the new panel RM68200_WXGA
supports WXGA resolution.

Signed-off-by: Ye Li <ye.li@nxp.com>
2019-01-21 00:41:40 -08:00
Ji Luo a5ab0289c7 MA-13964 imx8q: Kick the CAAM JR before kicking the SMMU
Kick the CAAM JR3 before kicking the SMMU, so SMMU error
won't affect CAAM functions.

Test: build and boot on imx8qxp_mek.

Change-Id: Iaa9a6084f226f81a087aac1eced93e8785861113
Signed-off-by: Ji Luo <ji.luo@nxp.com>
2019-01-18 18:30:29 +08:00
Flynn xu a6792ed6e5 MLK-20775: imx8qm/qxp: change xenlinux_addr to avoid memory conflict
When booting M4 with alt_config enabled, M4 will reserve 128MB for
video framebuffer from 0x88000000 to its partition, but Dom0 linux
loading address is 0x85000000, which will cause confict, so change
xenlinux_addr from 0x85000000 to 0x92000000.

Signed-off-by: Flynn xu <flynn.xu@nxp.com>
Reviewed-by: Peng Fan <peng.fan@nxp.com>
2019-01-18 20:01:43 -05:00
Ji Luo 1594150dba MA-13940 [Auto] imx8q: Enable dual bootloader
Open configs to enable dual bootloader feature for
imx8q Android Auto.

Test: Build and boot on imx8q.

Change-Id: I99da2ee6b87efd201e16df1046188ae86cab1466
Signed-off-by: Ji Luo <ji.luo@nxp.com>
2019-01-18 12:07:21 +08:00
Ji Luo 71562aae3b MA-13938 [Android] imx8q: Support dual bootloader feature
Support dual bootloader feature for imx8q which uses the
container format. Move the A/B slot select and verify to
SPL stage, the bootloader rollback index will be stored
at the last 8K bytes of eMMC rpmb storage.

Test: Boot and rbindex verify pass on imx8q.

Change-Id: I0a48210f65984a083037a0cd3f9558951029ed7d
Signed-off-by: Ji Luo <ji.luo@nxp.com>
2019-01-18 12:07:21 +08:00
Ji Luo 1614541095 MA-13937 Enable CAAM for imx8q
The CAAM driver in u-boot will use JR0 by default, but for
imx8q, both JR0 and JR1 are assigned to SECO and  A core
should never access them.
Power on the JR3 in this patchset and use it to complete
the CAAM operations for imx8q.

Test: CAAM self test cases pass for imx8q.

Change-Id: Ie3d77d1f2910e7f4c257c797c12b5c8a30ad936a
Signed-off-by: Ji Luo <ji.luo@nxp.com>
2019-01-18 12:07:21 +08:00
Ji Luo 2a7d6b51d7 MA-13936 Add CAAM self test
Add CAAM RNG generating and BLOB encap/decap
self test cases.

Test: Test cases pass on imx8qm_mek/imx6qp_sabresd.

Change-Id: I538f7b1581b36df83a3006ac133ca9e7b57ab4f0
Signed-off-by: Ji Luo <ji.luo@nxp.com>
2019-01-18 12:07:21 +08:00
Ye Li d520e1c606 MLK-20758 mx7: Add new command for tamper pin
Add new u-boot command "imx_tamper" to configure and check the tamper pins.
The codes are used for reference and test. So command is disabled at default,
user can enable it by adding CONFIG_IMX_TAMPER=y to defconfig

The iMX7D has 10 tamper pins those can be used for SNVS tamper detection.

Tamper 9 pin is NVCC_DRAM power switch for LPSR by default.
It must be fused to tamper function by command
=> fuse prog -y 1 3 0x80000000
Otherwise, SNVS power consumption would be high

When tamper is detected, CPU can't enter/stay in SNVS mode,
the tamper must be cleared and disabled before enter SNVS.

Signed-off-by: Ye Li <ye.li@nxp.com>
Signed-off-by: Shaojun Wang <shaojun.wang@nxp.com>
Acked-by: Peng Fan <peng.fan@nxp.com>
2019-01-16 22:32:42 -08:00
Ye Li edc9581d87 MLK-20664-4 mtd: mxc_nand: Enable flash BBT
Current MXC NAND driver uses memory BBT, it will create memory BBT in each
booting by searching bad blocks.

This patch enables the flash BBT, so the NAND driver can read back Bad block
table on the flash chip to create memory BBT.

Signed-off-by: Ye Li <ye.li@nxp.com>
Acked-by: Peng Fan <peng.fan@nxp.com>
2019-01-16 02:23:57 -08:00
Ye Li 48d58d07b9 MLK-20664-3 imx8m: Enable redundant offset for SPL NAND FIT
The new uuu will change to burn entire boot image to nandfit mtdpart not
only the FIT image. We enable REDUND offset configuration here, so that SPL will
try to find FIT header at two locations: the begin of nandfit mtdpart and
the 0x57c00 offset of nandfit mtdpart. This helps to be compatible with both
old and new uuu.

Signed-off-by: Ye Li <ye.li@nxp.com>
2019-01-16 02:17:43 -08:00
Ye Li ca7ebfcf07 MLK-20664-2 imx8/imx8m: Disable the SPL RAW image support
The RAW image support must be disabled, otherwise a RAW image can be used
to bypass FIT image.

Signed-off-by: Ye Li <ye.li@nxp.com>
2019-01-16 02:17:43 -08:00
Ye Li 4b2850ccfd MLK-20664-1 imx8qxp: spl: Enable SPL container support for NAND
Add the NAND support to SPL container parser and enable it for imx8qxp arm2
nand reworked board.
The SPL NAND will read from nandfit mtdpart (128MB offset) to parsing the entire
boot image and get the 3rd container from it. This requires burning tool (uuu)
to program the entire boot image into nandfit.

Signed-off-by: Ye Li <ye.li@nxp.com>
2019-01-16 02:17:43 -08:00
Ye Li cf2acc5b7c MLK-18942-2 imx8: ahab: Add ahab_status command
Add new u-boot command "ahab_status" to display seco events
and current lifecycle. It parses the seco event only for authenticating
container command, so that user can know the authentication failure.

Signed-off-by: Ye Li <ye.li@nxp.com>
Acked-by: Peng Fan <peng.fan@nxp.com>
2019-01-14 23:51:49 -08:00
Ye Li 30eb1b2443 MLK-18942-1 imx8: Update SCFW API to latest version
Update SCFW API from below SCFW commit which provides
the API to get seco events

    commit 50355d4b11b089be8fc1bc13afa7da001b081a44
    Author: Chuck Cannon <chuck.cannon@nxp.com>
    Date:   Mon Jan 14 12:30:42 2019 -0600

    SCF-275: Fix monitor error on command 'event'.

    Signed-off-by: Chuck Cannon <chuck.cannon@nxp.com>

Signed-off-by: Ye Li <ye.li@nxp.com>
2019-01-14 21:32:25 -08:00