10 Feb, 2020

1 commit


15 Jan, 2020

1 commit

  • Currently the following SPL hang is observed:

    U-Boot SPL 2020.01-rc5-00079-g797eee36a1 (Jan 06 2020 - 11:24:09 -0300)
    Trying to boot from MMC1
    Card did not respond to voltage select!
    spl: mmc init failed with error: -95
    SPL: failed to boot from all boot devices
    ### ERROR ### Please RESET the board ###

    Fix it by moving the eSDHC2 initialization to SPL.

    While at it, since this board uses DM_MMC all the esdhc board
    code can be removed to make the code simpler.

    Signed-off-by: Fabio Estevam

    Fabio Estevam
     

03 Dec, 2019

1 commit


08 Oct, 2019

4 commits


12 Aug, 2019

1 commit


23 Jun, 2019

1 commit


13 Mar, 2019

1 commit


04 Sep, 2018

1 commit


07 May, 2018

1 commit

  • When U-Boot started using SPDX tags we were among the early adopters and
    there weren't a lot of other examples to borrow from. So we picked the
    area of the file that usually had a full license text and replaced it
    with an appropriate SPDX-License-Identifier: entry. Since then, the
    Linux Kernel has adopted SPDX tags and they place it as the very first
    line in a file (except where shebangs are used, then it's second line)
    and with slightly different comment styles than us.

    In part due to community overlap, in part due to better tag visibility
    and in part for other minor reasons, switch over to that style.

    This commit changes all instances where we have a single declared
    license in the tag as both the before and after are identical in tag
    contents. There's also a few places where I found we did not have a tag
    and have introduced one.

    Signed-off-by: Tom Rini

    Tom Rini
     

05 Mar, 2018

1 commit

  • Thomas reported U-Boot failed to build host tools if libfdt-devel
    package is installed because tools include libfdt headers from
    /usr/include/ instead of using internal ones.

    This commit moves the header code:
    include/libfdt.h -> include/linux/libfdt.h
    include/libfdt_env.h -> include/linux/libfdt_env.h

    and replaces include directives:
    #include -> #include
    #include -> #include

    Reported-by: Thomas Petazzoni
    Signed-off-by: Masahiro Yamada

    Masahiro Yamada
     

16 Aug, 2017

1 commit


12 Jul, 2017

1 commit

  • Change is consistent with other SOCs and it is in preparation
    for adding SOMs. SOC's related files are moved from cpu/ to
    mach-imx/.

    This change is also coherent with the structure in kernel.

    Signed-off-by: Stefano Babic

    CC: Fabio Estevam
    CC: Akshay Bhat
    CC: Ken Lin
    CC: Marek Vasut
    CC: Heiko Schocher
    CC: "Sébastien Szymanski"
    CC: Christian Gmeiner
    CC: Stefan Roese
    CC: Patrick Bruenn
    CC: Troy Kisky
    CC: Nikita Kiryanov
    CC: Otavio Salvador
    CC: "Eric Bénard"
    CC: Jagan Teki
    CC: Ye Li
    CC: Peng Fan
    CC: Adrian Alonso
    CC: Alison Wang
    CC: Tim Harvey
    CC: Martin Donnelly
    CC: Marcin Niestroj
    CC: Lukasz Majewski
    CC: Adam Ford
    CC: "Albert ARIBAUD (3ADEV)"
    CC: Boris Brezillon
    CC: Soeren Moch
    CC: Richard Hu
    CC: Wig Cheng
    CC: Vanessa Maegima
    CC: Max Krummenacher
    CC: Stefan Agner
    CC: Markus Niebel
    CC: Breno Lima
    CC: Francesco Montefoschi
    CC: Jaehoon Chung
    CC: Scott Wood
    CC: Joe Hershberger
    CC: Anatolij Gustschin
    CC: Simon Glass
    CC: "Andrew F. Davis"
    CC: "Łukasz Majewski"
    CC: Patrice Chotard
    CC: Nobuhiro Iwamatsu
    CC: Hans de Goede
    CC: Masahiro Yamada
    CC: Stephen Warren
    CC: Andre Przywara
    CC: "Álvaro Fernández Rojas"
    CC: York Sun
    CC: Xiaoliang Yang
    CC: Chen-Yu Tsai
    CC: George McCollister
    CC: Sven Ebenfeld
    CC: Filip Brozovic
    CC: Petr Kulhavy
    CC: Eric Nelson
    CC: Bai Ping
    CC: Anson Huang
    CC: Sanchayan Maity
    CC: Lokesh Vutla
    CC: Patrick Delaunay
    CC: Gary Bisson
    CC: Alexander Graf
    CC: u-boot@lists.denx.de
    Reviewed-by: Fabio Estevam
    Reviewed-by: Christian Gmeiner

    Stefano Babic
     

12 May, 2017

1 commit


16 Dec, 2016

1 commit


07 Sep, 2016

6 commits

  • To be in the safe side we need to enable the CCGR clocks prior
    to calling arch_cpu_init().

    Inspired by Tim Harvey's commit d783c2744f9 ("imx: ventana: fix boot to SD").

    Signed-off-by: Fabio Estevam
    Reviewed-by: Eric Nelson
    Tested-by: Eric Nelson

    Fabio Estevam
     
  • Adjust DDR3 initialization done in SPL by comparing them against
    the NXP DCD table.

    Signed-off-by: Fabio Estevam
    Reviewed-by: Eric Nelson

    Fabio Estevam
     
  • When running a NXP 4.1 kernel with U-Boot mainline on a mx6ul-evk,
    we observe a hang when going into the lowest operational point of cpufreq.

    This hang issue does not happen on the NXP U-Boot version.

    After comparing the SPL DDR initialization against the DCD table
    from NXP U-Boot, the key difference that causes the hang is the
    MDREF register setting:

    DATA 4 0x021B0020 0x00000800

    ,which means:

    REF_SEL = 0 --> Periodic refresh cycle: 64kHz
    REFR = 1 ---> Refresh Rate - 2 refreshes

    So adjust the MDREF initialization for mx6ul_evk accordingly
    to fix the kernel hang issue at low bus frequency.

    Reported-by: Eric Nelson
    Signed-off-by: Fabio Estevam
    Reviewed-by: Eric Nelson

    Fabio Estevam
     
  • Currently MX6 SPL DDR initialization hardcodes the REF_SEL and
    REFR fields of the MDREF register as 1 and 7, respectively for
    DDR3 and 0 and 3 for LPDDR2.

    Looking at the MDREF initialization done via DCD we see that
    boards do need to initialize these fields differently:

    $ git grep 0x021b0020 board/
    board/bachmann/ot1200/mx6q_4x_mt41j128.cfg:DATA 4 0x021b0020 0x00005800
    board/ccv/xpress/imximage.cfg:DATA 4 0x021b0020 0x00000800 /* MMDC0_MDREF */
    board/freescale/mx6qarm2/imximage.cfg:DATA 4 0x021b0020 0x7800
    board/freescale/mx6qarm2/imximage.cfg:DATA 4 0x021b0020 0x00005800
    board/freescale/mx6qarm2/imximage_mx6dl.cfg:DATA 4 0x021b0020 0x00005800
    board/freescale/mx6qarm2/imximage_mx6dl.cfg:DATA 4 0x021b0020 0x00005800
    board/freescale/mx6qsabreauto/imximage.cfg:DATA 4 0x021b0020 0x00005800
    board/freescale/mx6qsabreauto/mx6dl.cfg:DATA 4 0x021b0020 0x00005800
    board/freescale/mx6qsabreauto/mx6qp.cfg:DATA 4 0x021b0020 0x00005800
    board/freescale/mx6sabresd/mx6dlsabresd.cfg:DATA 4 0x021b0020 0x00005800
    board/freescale/mx6sabresd/mx6q_4x_mt41j128.cfg:DATA 4 0x021b0020 0x00005800
    board/freescale/mx6slevk/imximage.cfg:DATA 4 0x021b0020 0x00001800
    board/freescale/mx6sxsabreauto/imximage.cfg:DATA 4 0x021b0020 0x00000800
    board/freescale/mx6sxsabresd/imximage.cfg:DATA 4 0x021b0020 0x00000800
    board/warp/imximage.cfg:DATA 4 0x021b0020 0x00001800

    So introduce a mechanism for users to be able to configure
    REFSEL and REFR fields as needed.

    Keep all the mx6 SPL users in their current REF_SEL and REFR values,
    so no functional changes for the existing users.

    Signed-off-by: Fabio Estevam
    Reviewed-by: Eric Nelson

    Fabio Estevam
     
  • Register LDOGCTL contains only bit 0 as a valid bit, so there is no need
    to do a read-modify-write operation.

    Simplify the code by writing directly to this register.

    Signed-off-by: Fabio Estevam

    Fabio Estevam
     
  • Only a single pad is changed to change sdhc2_dat3 from an
    SDIO pin to and from GPIO4:5, so remove the array and use
    the imx_iomux_v3_setup_pad() routine.

    Signed-off-by: Eric Nelson
    Reviewed-by: Fabio Estevam

    Eric Nelson
     

28 Jul, 2016

1 commit


18 Jun, 2016

3 commits

  • The current pad DSE for QSPI is 60ohm. This setting cause
    too strong drive to clock and data signals. Need to change
    the DSE to 120ohm for better signal quality.

    Signed-off-by: Peng Fan
    Cc: Stefano Babic
    Cc: Fabio Estevam
    Reviewed-by: Fabio Estevam

    Peng Fan
     
  • 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
    Cc: Stefano Babic
    Cc: Fabio Estevam
    Reviewed-by: Fabio Estevam

    Peng Fan
     
  • Fix 74LV OE gpio index. 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 to make 74lv output the correct
    voltage.

    Signed-off-by: Peng Fan
    Cc: Stefano Babic
    Cc: Fabio Estevam
    Reviewed-by: Fabio Estevam

    Peng Fan
     

02 Apr, 2016

1 commit

  • Most of ehci-fsl header describe USB controller
    designed by Chipidea and used by various SoC vendors.

    This patch renames it to a generic header: ehci-ci.h
    Contents of file are not changed (so it contains several
    references to freescale SoCs).

    Signed-off-by: Mateusz Kulikowski
    Acked-by: Marek Vasut
    Tested-by: Simon Glass

    Mateusz Kulikowski
     

02 Mar, 2016

1 commit


06 Feb, 2016

1 commit

  • Correct spelling of "U-Boot" shall be used in all written text
    (documentation, comments in source files etc.).

    Signed-off-by: Bin Meng
    Reviewed-by: Heiko Schocher
    Reviewed-by: Simon Glass
    Reviewed-by: Minkyu Kang

    Bin Meng
     

13 Nov, 2015

2 commits


24 Sep, 2015

1 commit


20 Sep, 2015

3 commits


13 Sep, 2015

3 commits

  • Add a README file to help users getting started with the board.

    Signed-off-by: Fabio Estevam

    Fabio Estevam
     
  • Remove duplicated SYS_SOC Kconfig entry from board Kconfig,
    because we have this entry in arch/arm/cpu/armv7/mx6/Kconfig.

    Signed-off-by: Peng Fan
    Cc: Stefano Babic
    Cc: Heiko Schocher
    Cc: Christian Gmeiner
    Cc: Stefan Roese
    Cc: Troy Kisky
    Cc: Nikita Kiryanov
    Cc: "Eric Bénard"
    Cc: Fabio Estevam
    Cc: Tim Harvey
    Cc: Marek Vasut
    Cc: Markus Niebel
    Cc: Otavio Salvador
    Acked-by: Stefan Roese
    Acked-by: Marek Vasut
    Acked-by: Christian Gmeiner
    Acked-by: Markus Niebel
    Acked-by: Troy Kisky
    Acked-by: Igor Grinberg

    Peng Fan
     
  • This patch is to support mx6ul_9x9_evk board based on mx6ul_14x14_evk,
    the difference between mx6ul 9x9 evk and mx6ul 14x14 evk are:
    1. mx6ul 9x9 evk use pfuze3000, while mx6ul 14x14 evk use DCDC.
    2. mx6ul 9x9 evk supports 256MB LPDDR2, while mx6ul 14x14 evk
    supports 512MB DDR3
    3. mx6ul_9x9_evk use 9x9 package, while mx6ul_14x14_evk use 14x14 package.

    This patch add the following:
    1. Discard PHYS_SDRAM_SIZE from header file, use imx_ddr_size()
    2. Introduce a macro is_mx6ul_9x9_evk using
    CONFIG_IS_ENABLED(TARGET_MX6UL_9X9_EVK) to avoid "#ifdef xxx" in non-SPL
    part. To SPL part, CONFIG_IS_ENABLED(TARGET_MX6UL_9X9_EVK) can not work,
    so still use "#ifdef CONFIG_TARGET_MX6UL_9X9_EVK" to differentiate with
    mx6ul_14x14_evk. And we have no way to dymaically checking this chip
    is 9x9 or 14x14.
    3. mx6ul_9x9_evk use pfuze3000, so enabled POWER related configurations.
    POWER related configurations also effect for mx6ul_14x14_evk. But
    power_init_board implementation using 'if (is_mx6ul_9x9_evk())' to
    do initialization for mx6ul_9x9_evk, and do nothing for mx6ul_14x14_evk.
    4. mx6ul_9x9_evk use lpddr2 with size 256MB, so add related SPL DRAM
    configurations.
    5. Enable CONFIG_ENV_VARS_UBOOT_RUNTIME_CONFIG and setting dtb file
    according to board_rev and board_name.
    6. Add TARGET_MX6UL_9X9_EVK Kconfig entry

    Boot Log:
    U-Boot SPL 2015.10-rc2-00356-g536ce34 (Sep 06 2015 - 12:22:53)
    reading u-boot.img
    reading u-boot.img

    U-Boot 2015.10-rc2-00356-g536ce34 (Sep 06 2015 - 12:22:53 +0800)

    CPU: Freescale i.MX6UL rev1.0 792 MHz (running at 396 MHz)
    CPU: Commercial temperature grade (0C to 95C) at 41C
    Reset cause: POR
    Board: MX6UL 9x9 EVK
    I2C: ready
    DRAM: 256 MiB
    PMIC: PFUZE3000 DEV_ID=0x30 REV_ID=0x11
    MMC: FSL_SDHC: 0, FSL_SDHC: 1
    In: serial
    Out: serial
    Err: serial
    Net: FEC1
    Hit any key to stop autoboot: 0

    Signed-off-by: Peng Fan
    Cc: Stefano Babic

    Peng Fan
     

02 Sep, 2015

1 commit

  • To i.MX6, DDR3 and LPDDR2 is supported, so rename function mx6_dram_cfg
    to mx6_ddr3_cfg and the original mx6_dram_cfg function only is a wrapper.
    The new reimplemented function mx6_dram_cfg only invokes mx6_ddr3_cfg
    when ddr_type is for DDR3. Later we can use ddr_type to initialize
    MMDC for LPDDR2.

    Initialize ddr_type for different boards which enable SPL.

    Signed-off-by: Peng Fan
    Cc: Stefano Babic
    Cc: Tim Harvey
    Cc: Stefan Roese
    Cc: Fabio Estevam
    Reviewed-by: Stefan Roese

    Peng Fan