23 Mar, 2018

3 commits

  • Currently it's not possible to build i.MX6SL EVK with CONFIG_SECURE_BOOT
    enabled:

    In file included from drivers/crypto/fsl/jobdesc.c:12:0:
    drivers/crypto/fsl/jobdesc.c: In function ‘inline_cnstr_jobdesc_blob_dek’:
    include/fsl_sec.h:268:25: error: ‘CAAM_ARB_BASE_ADDR’ undeclared (first
    use in this function)
    #define SEC_MEM_PAGE1 (CAAM_ARB_BASE_ADDR + 0x1000)
    ^
    drivers/crypto/fsl/jobdesc.c:140:21: note: in expansion of macro
    ‘SEC_MEM_PAGE1’
    memcpy((uint32_t *)SEC_MEM_PAGE1, (uint32_t *)plain_txt, in_sz);
    ^
    include/fsl_sec.h:268:25: note: each undeclared identifier is reported only
    once for each function it appears in
    #define SEC_MEM_PAGE1 (CAAM_ARB_BASE_ADDR + 0x1000)
    ^
    drivers/crypto/fsl/jobdesc.c:140:21: note: in expansion of macro
    ‘SEC_MEM_PAGE1’
    memcpy((uint32_t *)SEC_MEM_PAGE1, (uint32_t *)plain_txt, in_sz);
    ^
    scripts/Makefile.build:280: recipe for target 'drivers/crypto/fsl/jobdesc.o'
    failed

    Currently the MX6SL option is selected via CONFIG_SYS_EXTRA_OPTIONS, so
    CONFIG_FSL_CAAM is being wrongly selected by the imx-common Kconfig.
    Select CONFIG_MX6SL via Kconfig to address this issue.

    Signed-off-by: Breno Lima
    Reviewed-by: Ye Li

    Breno Lima
     
  • Since commit 6e1f4d2652e79 ("arm: imx-common: add SECURE_BOOT option
    to Kconfig") it's preferable to select CONFIG_SECURE_BOOT via Kconfig.

    Add ARCH_MX7ULP as a CONFIG_SECURE_BOOT dependency, do not select
    CONFIG_FSL_CAAM since CAAM is not implemented for i.MX7ULP yet.

    Signed-off-by: Breno Lima
    Reviewed-by: Ye Li

    Breno Lima
     
  • Currently is not possible to call HAB API on i.MX7ULP:

    => hab_status

    Secure boot disabled

    System is hanging here.

    The function is_mx8m() is returning true for i.MX7ULP, thus calling
    HAB API with a wrong HAB RVT address.

    Align SoC ID and CPU ID with U-Boot upstream to address this issue:
    http://git.denx.de/?p=u-boot.git;a=commit;h=4fdffb98568651f6581bccb53f5277cb0d2dcdc5

    Signed-off-by: Peng Fan
    Signed-off-by: Breno Lima
    Reviewed-by: Ye Li

    Peng Fan
     

20 Mar, 2018

1 commit


19 Mar, 2018

1 commit


14 Mar, 2018

1 commit


07 Mar, 2018

1 commit

  • SCFW commit (0d43db9 SCF-22: Move SCU controls to SYSTEM.
    Allows AP to use SCU temp sensor) changes system resource name
    from SC_R_SC_PID0 to SC_R_SYSTEM, need to change it accordingly
    to avoid system incorrect system type got from SCFW and cause
    linux kernel booting fail as below:

    Starting kernel ...

    [ 0.000000] Booting Linux on physical CPU 0x0
    [ 0.000000] Linux version 4.9.51-04508-g9caddc6 (anson@anson-OptiPlex-790) (gcc version 4.9.1 20140529 (prerelease) (c8
    [ 0.000000] Boot CPU: AArch64 Processor [410fd034]
    [ 0.000000] earlycon: lpuart32 at MMIO 0x000000005a060000 (options '115200,115200')
    [ 0.000000] bootconsole [lpuart32] enabled
    [ 0.000000] Bad mode in Error handler detected on CPU0, code 0xbf000002 -- SError
    [ 0.000000] Internal error: Oops - bad mode: 0 [#1] PREEMPT SMP
    [ 0.000000] Modules linked in:
    [ 0.000000] CPU: 0 PID: 0 Comm: swapper Not tainted 4.9.51-04508-g9caddc6 #40
    [ 0.000000] Hardware name: Freescale i.MX8QM MEK (DT)
    [ 0.000000] task: ffff000009270780 task.stack: ffff000009260000
    [ 0.000000] PC is at setup_arch+0xf4/0x578
    [ 0.000000] LR is at setup_arch+0xf0/0x578
    [ 0.000000] pc : [] lr : [] pstate: 000000c5
    [ 0.000000] sp : ffff000009263f20
    [ 0.000000] x29: ffff000009263f20 x28: 0000000081350018
    [ 0.000000] x27: 00000000ffe93f58 x26: 0000000000000000
    [ 0.000000] x25: 00000000ffefe110 x24: 0000000000000000
    [ 0.000000] x23: 0000000000000000 x22: ffff000009267000
    [ 0.000000] x21: ffff7dfffe800000 x20: ffff000009284000
    [ 0.000000] x19: ffff000008080000 x18: 0000000000000077
    [ 0.000000] x17: 0000000000002c00 x16: 0000000000001000
    [ 0.000000] x15: ffffffffffffffff x14: 0000000000000000
    [ 0.000000] x13: 0000000000000007 x12: 0000000000000018
    [ 0.000000] x11: 0000000000000007 x10: 0101010101010101
    [ 0.000000] x9 : ffffffffffffffff x8 : 0000000000000008
    [ 0.000000] x7 : 0000000000000007 x6 : 0000008080808080
    [ 0.000000] x5 : 000000000000005f x4 : 0000000000000072
    [ 0.000000] x3 : 0000000000000000 x2 : 0000000000000072
    [ 0.000000] x1 : 0000000000000000 x0 : 0000000000000001

    Signed-off-by: Anson Huang
    Reviewed-by: Ye Li

    Anson Huang
     

28 Feb, 2018

1 commit


13 Feb, 2018

3 commits


25 Jan, 2018

1 commit


22 Jan, 2018

1 commit

  • On i.MX7ULP B0, there is change in NIC clock dividers architecture.
    On A0, the NIC1 BUS and EXT dividers were in a chain with NIC1 DIV, but
    on B0 they are parallel with NIC1 DIV. So now the dividers are independent.
    This patch modifies the scg_nic_get_rate function according to this change.

    Signed-off-by: Ye Li
    Acked-by: Peng Fan

    Ye Li
     

13 Jan, 2018

1 commit


10 Jan, 2018

1 commit


29 Dec, 2017

3 commits


26 Dec, 2017

1 commit


21 Dec, 2017

1 commit

  • Fix build warnings below, because the imx8m_usb_power is not declared

    board/freescale/imx8mq_evk/imx8m_evk.c: In function ‘board_usb_init’:
    board/freescale/imx8mq_evk/imx8m_evk.c:205:2: warning: implicit
    declaration of function ‘imx8m_usb_power’ [-Wimplicit-function-declaration]
    imx8m_usb_power(index, true);
    ^~~~~~~~~~~~~~~

    drivers/usb/host/xhci-imx8m.c: In function ‘xhci_hcd_init’:
    drivers/usb/host/xhci-imx8m.c:123:3: warning: implicit declaration of
    function ‘imx8m_usb_power’ [-Wimplicit-function-declaration]
    imx8m_usb_power(ctr_data[index].usb_id, false);
    ^~~~~~~~~~~~~~~

    Signed-off-by: Ye Li
    Acked-by: Peng Fan

    Ye Li
     

15 Dec, 2017

1 commit


13 Dec, 2017

3 commits


12 Dec, 2017

1 commit


08 Dec, 2017

4 commits


04 Dec, 2017

2 commits

  • Print out atf commit in U-Boot.

    Signed-off-by: Peng Fan

    Peng Fan
     
  • This code was originally developed by Raul Cardenas
    and modified to be applied in U-Boot imx_v2017.03.

    More information about the initial submission can be seen
    in the link below:
    https://lists.denx.de/pipermail/u-boot/2016-February/245273.html

    i.MX7D has an a protection feature for Manufacturing process.
    This feature uses asymmetric encryption to sign and verify
    authenticated software handled between parties. This command
    enables the use of such feature.

    The private key is unique and generated once per device.
    And it is stored in secure memory and only accessible by CAAM.
    Therefore, the public key generation and signature functions
    are the only functions available for the user.

    The manufacturing-protection authentication process can be used to
    authenticate the chip to the OEM's server.

    Command usage:

    Print the public key for the device.
    - mfgprot pubk

    Generates Signature over given data.
    - mfgprot sign

    Signed-off-by: Raul Ulises Cardenas
    Signed-off-by: Breno Lima
    Reviewed-by: Fabio Estevam
    Reviewed-by: Ye Li

    Breno Lima
     

30 Nov, 2017

2 commits


29 Nov, 2017

3 commits


24 Nov, 2017

1 commit


22 Nov, 2017

3 commits