11 Feb, 2018

2 commits


06 Feb, 2018

1 commit

  • cmd/Makefile has:

    ifdef CONFIG_FPGA
    obj-$(CONFIG_CMD_FPGA) += fpga.o
    endif

    which means that if CONFIG_FPGA is not set, CONFIG_CMD_FPGA silently
    does nothing. Let's remove that Makefile conditional and instead express
    this equivalent dependency in Kconfig, so a lot of redundant

    # CONFIG_CMD_FPGA is not set

    can be removed from board defconfigs that don't actually have an FPGA.

    Signed-off-by: Tuomas Tynkkynen

    Tuomas Tynkkynen
     

29 Jan, 2018

1 commit

  • The bcm283x family of SoCs have a GPIO controller that also acts as
    pinctrl controller.

    This patch introduces a new pinctrl driver that can actually properly mux
    devices into their device tree defined pin states and is now the primary
    owner of the gpio device. The previous GPIO driver gets moved into a
    subdevice of the pinctrl driver, bound to the same OF node.

    That way whenever a device asks for pinctrl support, it gets it
    automatically from the pinctrl driver and GPIO support is still available
    in the normal command line phase.

    Signed-off-by: Alexander Graf

    Alexander Graf
     

11 Oct, 2017

1 commit

  • Having this as a 'default y' is rather annoying because it doesn't
    actually compile unless other options are defined in the board header:

    ../cmd/bootm.c: In function 'do_imls_nor':
    ../cmd/bootm.c:330:7: error: 'CONFIG_SYS_MAX_FLASH_BANKS' undeclared (first use in this function); did you mean 'CONFIG_SYS_MAX_FLASH_SECT'?
    i < CONFIG_SYS_MAX_FLASH_BANKS; ++i, ++info) {

    Make it 'default n' so people who develop new boards that start from a
    blank defconfig have one less compilation failure to debug.

    Signed-off-by: Tuomas Tynkkynen

    Tuomas Tynkkynen
     

27 Sep, 2017

1 commit


08 Sep, 2017

3 commits


07 Sep, 2017

1 commit

  • This reverts commit 25877d4e4c45451c5398aec3de50e0d5befe0e9f.

    This is a workaround for Raspberry Pi boot failures seen when passing on
    the device tree provided by the Raspberry Pi firmware at boot. Without
    CONFIG_OF_EMBED, we just get stuck at "Starting kernel ..." when we try
    to boot Linux with this device tree.

    Signed-off-by: Paul Barker
    Cc: Simon Glass
    Tested-by: Jonathan Gray
    Reviewed-by: Simon Glass

    Paul Barker
     

02 Sep, 2017

1 commit

  • This syncs all of the currently Kconfig'd symbols out of the headers and
    into the defconfig files. This has two exceptions, first am335x_evm
    needs to be converted to DM in SPL and then it can stop undef'ing
    CONFIG_DM_USB. Leaving this as-is results in a build failure, and
    without work, run time failure. The other case is am43xx_evm.h and in
    turn am43xx_evm_usbhost_boot. The problem here is that we need DWC3 USB
    host mode in SPL, but still desire to have gadget mode in U-Boot proper.

    Signed-off-by: Tom Rini

    Tom Rini
     

28 Aug, 2017

1 commit


27 Aug, 2017

1 commit


15 Aug, 2017

1 commit


31 Jul, 2017

1 commit


11 Jul, 2017

1 commit


10 Jul, 2017

1 commit


07 Jul, 2017

1 commit


10 May, 2017

5 commits


01 May, 2017

1 commit


30 Dec, 2016

2 commits

  • While I moved the options, I also renamed them so that they are all
    prefixed with MMC_SDHCI_.

    This commit was created in the following steps.

    [1] Rename with the following command
    find . -name .git -prune -o ! -path ./scripts/config_whitelist.txt \
    -type f -print | xargs sed -i -e '
    s/CONFIG_MMC_SDMA/CONFIG_MMC_SDHCI_SDMA/g
    s/CONFIG_BCM2835_SDHCI/CONFIG_MMC_SDHCI_BCM2835/g
    s/CONFIG_KONA_SDHCI/CONFIG_MMC_SDHCI_KONA/g
    s/CONFIG_MV_SDHCI/CONFIG_MMC_SDHCI_MV/g
    s/CONFIG_S5P_SDHCI/CONFIG_MMC_SDHCI_S5P/g
    s/CONFIG_SPEAR_SDHCI/CONFIG_MMC_SDHCI_SPEAR/g
    '

    [2] create the Kconfig entries in drivers/mmc/Kconfig

    [3] Move the options by the following command
    tools/moveconfig.py -y MMC_SDHCI_SDMA MMC_SDHCI_BCM2835 \
    MMC_SDHCI_KONA MMC_SDHCI_MV MMC_SDHCI_S5P MMC_SDHCI_SPEAR

    [4] Sort drivers/mmc/Makefile for readability

    Signed-off-by: Masahiro Yamada
    Reviewed-by: Tom Rini
    Reviewed-by: Jaehoon Chung

    Masahiro Yamada
     
  • Move CONFIG_SDHCI to Kconfig and rename it to CONFIG_MMC_SDHCI.
    My motivation for the rename is, ultimately, to make all the MMC
    options prefixed with MMC_ and SDHCI options with MMC_SDHCI_,
    like Linux.

    This commit was created as follows:

    [1] Rename the config option with the following command:
    find . -name .git -prune -o ! -path ./scripts/config_whitelist.txt \
    -type f -print | xargs sed -i -e 's/CONFIG_SDHCI/CONFIG_MMC_SDHCI/g'

    [2] create the entry for MMC_SDHCI in drivers/mmc/Kconfig

    [3] run "tools/moveconfig.py -y MMC_SDHCI"

    [4] add "depends on MMC_SDHCI" to existing SDHCI driver entries

    Signed-off-by: Masahiro Yamada
    Reviewed-by: Tom Rini
    Reviewed-by: Jaehoon Chung

    Masahiro Yamada
     

04 Dec, 2016

1 commit

  • A number of platforms had been using the distro default feature before
    it was moved to Kconfig but did not enable the new Kconfig option when
    it was enabled. This caused a regression in terms of features and this
    introduces breakage when more things move to Kconfig.

    Signed-off-by: Tom Rini

    Tom Rini
     

29 Nov, 2016

1 commit


24 Oct, 2016

3 commits


12 Oct, 2016

2 commits


10 Sep, 2016

1 commit


09 Sep, 2016

1 commit


07 Sep, 2016

1 commit

  • On the raspberry pi, you can disable the serial port to gain dynamic frequency
    scaling which can get handy at times.

    However, in such a configuration the serial controller gets its rx queue filled
    up with zero bytes which then happily get transmitted on to whoever calls
    getc() today.

    This patch adds detection logic for that case by checking whether the RX pin is
    mapped to GPIO15 and disables the mini uart if it is not mapped properly.

    That way we can leave the driver enabled in the tree and can determine during
    runtime whether serial is usable or not, having a single binary that allows for
    uart and non-uart operation.

    Signed-off-by: Alexander Graf
    Acked-by: Stephen Warren
    Reviewed-by: Simon Glass

    Alexander Graf
     

26 Apr, 2016

3 commits


02 Apr, 2016

1 commit

  • The Raspberry Pi 3 contains a BCM2837 SoC. The BCM2837 is a BCM2836 with
    the CPU complex swapped out for a quad-core ARMv8. This can operate in 32-
    or 64-bit mode. 32-bit mode is the current default selected by the
    VideoCore firmware on the Raspberry Pi 3. This patch adds a 32-bit port of
    U-Boot for the Raspberry Pi 3.

    >From U-Boot's perspective, the only delta between the RPi 2 and RPi 3 is a
    change in usage of the SoC UARTs. On all previous Pis, the PL011 was the
    only UART in use. The Raspberry Pi 3 adds a Bluetooth module which uses a
    UART to connect to the SoC. By default, the PL011 is used for this purpose
    since it has larger FIFOs than the other "mini" UART. However, this can
    be configured via the VideoCore firmware's config.txt file. This patch
    hard-codes use of the mini UART in the RPi 3 port. If your system uses the
    PL011 UART for the console even on the RPi 3, please use the RPi 2 U-Boot
    port instead. A future change might determine which UART to use at
    run-time, thus allowing the RPi 2 and RPi 3 (32-bit) ports to be squashed
    together.

    The mini UART has some limitations. One externally visible issue in the
    BCM2837 integration is that the UART divides the SoC's "core clock" to
    generate the baud rate. The core clock is typically variable, and under
    control of the VideoCore firmware for thermal management reasons. If the
    VC FW does modify the core clock rate, UART communication will be
    corrupted since the baud rate will vary from the expected value. This was
    not an issue for the PL011 UART, since it is fed by a fixed 3MHz clock. To
    work around this, the VideoCore firmware can be told not to modify the SoC
    core clock. However, the only way this can happen and be thermally safe is
    to limit the core clock to a low/minimum frequency. This leaves
    performance on the table for use-cases that don't care about a UART
    console. Consequently, use of the mini UART console must be explicitly
    requested by entering the following line into config.txt:

    enable_uart=1

    A recent version of the VC firmware is required to ensure that the mini
    UART is fully and correctly initialized by the VC FW; at least
    firmware.git 046effa13ebc "firmware: arm_loader: emmc clock depends on
    core clock See: https://github.com/raspberrypi/firmware/issues/572".

    Signed-off-by: Stephen Warren
    Reviewed-by: Tom Rini

    Stephen Warren