28 Feb, 2015

5 commits


26 Feb, 2015

3 commits


25 Feb, 2015

14 commits

  • This is still a non-generic board.

    Signed-off-by: Masahiro Yamada
    Cc: Chan-Taek Park
    Acked-by: Marek Vasut

    Masahiro Yamada
     
  • These are still non-generic boards.

    Signed-off-by: Masahiro Yamada
    Cc: Greg Ungerer
    Acked-by: Marek Vasut

    Masahiro Yamada
     
  • This is still a non-generic board.

    Signed-off-by: Masahiro Yamada
    Cc: Matthias Weisser
    Acked-by: Marek Vasut

    Masahiro Yamada
     
  • Now CONFIG_SPL_BUILD is not defined in Kconfig, so
    "!depends on SPL_BUILD" and "if !SPL_BUILD" are redundant.

    Signed-off-by: Masahiro Yamada

    Masahiro Yamada
     
  • When Kconfig for U-boot was examined, one of the biggest issues was
    how to support multiple images (Normal, SPL, TPL). There were
    actually two options, "single .config" and "multiple .config".
    After some discussions and thought experiments, I chose the latter,
    i.e. to create ".config", "spl/.config", "tpl/.config" for Normal,
    SPL, TPL, respectively.

    It is true that the "multiple .config" strategy provided us the
    maximum flexibility and helped to avoid duplicating CONFIGs among
    Normal, SPL, TPL, but I have noticed some fatal problems:

    [1] It is impossible to share CONFIG options across the images.
    If you change the configuration of Main image, you often have to
    adjust some SPL configurations correspondingly. Currently, we
    cannot handle the dependencies between them. It means one of the
    biggest advantages of Kconfig is lost.

    [2] It is too painful to change both ".config" and "spl/.config".
    Sunxi guys started to work around this problem by creating a new
    configuration target. Commit cbdd9a9737cc (sunxi: kconfig: Add
    %_felconfig rule to enable FEL build of sunxi platforms.) added
    "make *_felconfig" to enable CONFIG_SPL_FEL on both images.
    Changing the configuration of multiple images in one command is a
    generic demand. The current implementation cannot propose any
    good solution about this.

    [3] Kconfig files are getting ugly and difficult to understand.
    Commit b724bd7d6349 (dm: Kconfig: Move CONFIG_SYS_MALLOC_F_LEN to
    Kconfig) has sprinkled "if !SPL_BUILD" over the Kconfig files.

    [4] The build system got more complicated than it should be.
    To adjust Linux-originated Kconfig to U-Boot, the helper script
    "scripts/multiconfig.sh" was introduced. Writing a complicated
    text processor is a shell script sometimes caused problems.

    Now I believe the "single .config" will serve us better. With it,
    all the problems above would go away. Instead, we will have to add
    some CONFIG_SPL_* (and CONFIG_TPL_*) options such as CONFIG_SPL_DM,
    but we will not have much. Anyway, this is what we do now in
    scripts/Makefile.spl.

    I admit my mistake with my apology and this commit switches to the
    single .config configuration.

    It is not so difficult to do that:

    - Remove unnecessary processings from scripts/multiconfig.sh
    This file will remain for a while to support the current defconfig
    format. It will be removed after more cleanups are done.

    - Adjust some makefiles and Kconfigs

    - Add some entries to include/config_uncmd_spl.h and the new file
    scripts/Makefile.uncmd_spl. Some CONFIG options that are not
    supported on SPL must be disabled because one .config is shared
    between SPL and U-Boot proper going forward. I know this is not
    a beautiful solution and I think we can do better, but let's see
    how much we will have to describe them.

    - update doc/README.kconfig

    More cleaning up patches will follow this.

    Signed-off-by: Masahiro Yamada
    Reviewed-by: Simon Glass

    Masahiro Yamada
     
  • Add support of the DDR mode for eSDHC driver.
    Enable it for i.MX6 SoC family only.

    Signed-off-by: Volodymyr Riazantsev
    Reviewed-by: York Sun

    Volodymyr Riazantsev
     
  • The patch adds Freescale Layerscape PCIe driver and provides
    up to 4 controllers support.

    Signed-off-by: Minghuan Lian
    Reviewed-by: York Sun

    Minghuan Lian
     
  • Upgrade Manage Complex (MC) flib API to 0.5.2. Rename directory
    fsl_mc to fsl-mc. Change the fsl-mc node in Linux device tree
    from "fsl,dprcr" to "fsl-mc". Print MC version info when
    appropriate.

    Signed-off-by: J. German Rivera
    Signed-off-by: Lijun Pan
    Reviewed-by: York Sun

    J. German Rivera
     
  • Add sync of refresh for multiple DDR controllers. DDRC initialization
    needs to complete first. Code is re-ordered to keep refresh close.

    Signed-off-by: York Sun

    York Sun
     
  • wwt_bg should match rrt_bg. It was a typo in driver.

    Signed-off-by: York Sun

    York Sun
     
  • Controller number is passed for function calls to support individual
    DDR clock, depending on SoC implementation. It is backward compatible
    with exising platforms. Multiple clocks have been verifyed on LS2085A
    emulator.

    Signed-off-by: York Sun

    York Sun
     
  • Erratum A008514 workround requires writing register eddrtqcr1 with
    value 0x63b20002.

    Signed-off-by: York Sun

    York Sun
     
  • Erratum A008336 requires setting EDDRTQCR1[2] in DDRC DCSR space
    for 64-bit DDR controllers.

    Signed-off-by: York Sun

    York Sun
     
  • On ZeBu emulator, CAS to preamble overrides need to be set to
    satisfy the timing. This only impact platforms with CONFIG_EMU.

    These should be set before MEM_EN is set.

    Signed-off-by: York Sun

    York Sun
     

24 Feb, 2015

8 commits

  • Tom Rini
     
  • Fix bus width switching from 8-bit mode down to 4-bit or 1-bit modes on
    Samsung SoCs using SDHCI_QUIRK_USE_WIDE8. These SoCs report controller
    version 2.0 yet they support 8-bit bus widths. If 8-bit mode was
    previously enabled and then an operation like "mmc dev" caused a switch
    back down to 4-bit or 1-bit mode, WIDE8 was left set, causing failures.

    This problem was manifested by "mmc dev" timing out.

    Signed-off-by: Matt Reimer

    Matt Reimer
     
  • Depending on the boot priority, the eMMC/SD cards,
    can be initialized with the same numbers for each boot.

    To be sure which mmc device is SD and which is eMMC,
    this info is printed by 'mmc list' command, when
    the init is done.

    Signed-off-by: Przemyslaw Marczak
    Cc: Pantelis Antoniou

    Przemyslaw Marczak
     
  • Before this commit, the mmc devices were always registered
    in the same order. So dwmmc channel 0 was registered as mmc 0,
    channel 1 as mmc 1, etc.
    In case of possibility to boot from more then one device,
    the CONFIG_SYS_MMC_ENV_DEV should always point to right mmc device.

    This can be achieved by init boot device as first, so it will be
    always registered as mmc 0. Thanks to this, the 'saveenv' command
    will work fine for all mmc boot devices.

    Exynos based boards usually uses mmc host channels configuration:
    - 0, or 0+1 for 8 bit - as a default boot device (usually eMMC)
    - 2 for 4bit - as an optional boot device (usually SD card slot)

    And usually the boot order is defined by OM pin configuration,
    which can be changed in a few ways, eg.
    - Odroid U3 - eMMC card insertion -> first boot from eMMC
    - Odroid X2/XU3 - boot priority jumper

    By this commit, Exynos dwmmc driver will check the OM pin configuration,
    and then try to init the boot device and register it as mmc 0.

    Signed-off-by: Przemyslaw Marczak
    Cc: Minkyu Kang
    Cc: Jaehoon Chung
    Cc: Pantelis Antoniou
    Cc: Simon Glass
    Cc: Akshay Saraswat

    Przemyslaw Marczak
     
  • High Capacity (e)MMC cards work fine on sun4i / sun5i, and not having this
    capability set causes u-boot to not recognize the eMMC on an Utoo P66 A13
    tablet, so always set it thereby fixing this.

    Signed-off-by: Hans de Goede
    Acked-by: Ian Campbell

    Hans de Goede
     
  • Clksel value is exynos specific value.
    It removed "clksel_val" into dwmci_host and created the
    "dwmci_exynos_priv_data" structure for exynos specific data.

    Signed-off-by: Jaehoon Chung

    Jaehoon Chung
     
  • "clksel_val" is assigned to property of mmc or defined value.
    But it doesn't write at initial sequence.
    There is a reason that get the wrong source-clock value.
    This patch fixed it.

    Signed-off-by: Jaehoon Chung

    Jaehoon Chung
     
  • If mode is not DDR-mode, then it needs to clear it.

    Signed-off-by: Jaehoon Chung

    Jaehoon Chung
     

22 Feb, 2015

1 commit


21 Feb, 2015

2 commits

  • Sending out 5V when there is a charger connected to the otg port is not a
    good idea, so check for this and error out.

    Note this commit currently breaks otg support on the q8h tablets, as we need
    to do some magic with the pmic there to get vbus info, this is deliberate
    (better safe then sorry), fixing this is on my TODO list.

    Signed-off-by: Hans de Goede
    Acked-by: Ian Campbell

    Hans de Goede
     
  • High Capacity (e)MMC cards work fine on sun4i / sun5i, and not having this
    capability set causes u-boot to not recognize the eMMC on an Utoo P66 A13
    tablet, so always set it thereby fixing this.

    Signed-off-by: Hans de Goede
    Acked-by: Ian Campbell

    Hans de Goede
     

20 Feb, 2015

2 commits


19 Feb, 2015

5 commits

  • Add debug UART functions to permit ns16550 to provide an early debug UART.
    Try to avoid using the stack so that this can be called from assembler before
    a stack is set up (at least on ARM and PowerPC).

    Signed-off-by: Simon Glass

    Simon Glass
     
  • For the debug UART we need to be able to provide any parameters before
    driver model is set up. Add parameters to the low-level access functions
    to make this possible.

    Signed-off-by: Simon Glass

    Simon Glass
     
  • This came up in a discussion on the mailing list here:

    https://patchwork.ozlabs.org/patch/384613/

    My concerns at the time were:
    - it doesn't need to be written in assembler
    - it doesn't need to be ARM-specific

    This patch provides a possible alternative. It works by allowing any serial
    driver to export one init function and provide a putc() function. These
    can be used to output debug data before the real serial driver is available.

    This implementation does not depend on driver model, and it is possible for
    it to operate without a stack on some architectures (e.g. PowerPC, ARM). It
    provides the same features as the ARM-specific debug.S but with more UART
    and architecture support.

    Signed-off-by: Simon Glass

    Simon Glass
     
  • Make this option available in Kconfig and clean up the board that uses it.
    Note there is also an entry in exynos5-common.h but this affects multiple
    boards and should be dropped as part of the Samsung I2C migration to
    driver model.

    Signed-off-by: Simon Glass

    Simon Glass
     
  • Since both I2C and SPI are converted to Kconfig, we can convert cros_ec
    to Kconfig for these buses.

    LPC will need to wait until driver mode PCI is available.

    Signed-off-by: Simon Glass

    Simon Glass