oweals/u-boot.git
4 years agolib: crypto: add public key utility
AKASHI Takahiro [Wed, 13 Nov 2019 00:44:58 +0000 (09:44 +0900)]
lib: crypto: add public key utility

Imported from linux kernel v5.3:
 asymmetric-type.h with changes marked as __UBOOT__
 asymmetric_type.c with changes marked as __UBOOT__
 public_key.h with changes marked as __UBOOT__
 public_key.c with changes marked as __UBOOT__

Signed-off-by: AKASHI Takahiro <takahiro.akashi@linaro.org>
4 years agolib: add oid registry utility
AKASHI Takahiro [Wed, 13 Nov 2019 00:44:57 +0000 (09:44 +0900)]
lib: add oid registry utility

Imported from linux kernel v5.3:
 build_OID_registry without changes
 oid_registry.h without changes
 oid_registry.c with changes marked as __UBOOT__

Signed-off-by: AKASHI Takahiro <takahiro.akashi@linaro.org>
4 years agodoc: add README for asn1 compiler and decoder
AKASHI Takahiro [Wed, 13 Nov 2019 00:44:56 +0000 (09:44 +0900)]
doc: add README for asn1 compiler and decoder

This document gives a brief description about ASN1 compiler as well as
ASN1 decoder.

Signed-off-by: AKASHI Takahiro <takahiro.akashi@linaro.org>
4 years agolib: add asn1 decoder
AKASHI Takahiro [Wed, 13 Nov 2019 00:44:55 +0000 (09:44 +0900)]
lib: add asn1 decoder

Imported from linux kernel v5.3:
 lib/asn1_decoder.c with changes marked as __UBOOT__

Signed-off-by: AKASHI Takahiro <takahiro.akashi@linaro.org>
4 years agoMakefile: add build script for asn1 parsers
AKASHI Takahiro [Wed, 13 Nov 2019 00:44:54 +0000 (09:44 +0900)]
Makefile: add build script for asn1 parsers

This rule will be used to build x509 and pkcs7 parsers.

Signed-off-by: AKASHI Takahiro <takahiro.akashi@linaro.org>
4 years agocmd: add asn1_compiler
AKASHI Takahiro [Wed, 13 Nov 2019 00:44:53 +0000 (09:44 +0900)]
cmd: add asn1_compiler

Imported from linux kernel v5.3:
 asn1.h without changes
 asn1_ber_bytecode.h without changes
 asn1_decoder.h without changes
 asn1_compiler.c without changes

This host command will be used to create a ASN1 parser, for example,
for pkcs7 messages or x509 certificates. More specifically, it will
generate *byte code* which will be interpreted by asn1 decoder library.

Signed-off-by: AKASHI Takahiro <takahiro.akashi@linaro.org>
Reviewed-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
4 years agolinux/time.h: include vsprintf.h
AKASHI Takahiro [Wed, 13 Nov 2019 00:44:52 +0000 (09:44 +0900)]
linux/time.h: include vsprintf.h

Without this commit, time.h possibly causes a build error as
asctime_r() uses sprintf().

Signed-off-by: AKASHI Takahiro <takahiro.akashi@linaro.org>
4 years agoinclude: kernel.h: include printk.h
AKASHI Takahiro [Wed, 13 Nov 2019 00:44:51 +0000 (09:44 +0900)]
include: kernel.h: include printk.h

Adding "printk.h" will help improve portability from linux kernel
code (in my case, lib/asn1_decoder.c and others) where printf and
pr_* variant functions are used.

Signed-off-by: AKASHI Takahiro <takahiro.akashi@linaro.org>
4 years agolib: add mktime64() for linux compatibility
AKASHI Takahiro [Wed, 13 Nov 2019 00:44:50 +0000 (09:44 +0900)]
lib: add mktime64() for linux compatibility

This function will be used  in lib/crypto/x509_cert_parser.c, which
will also be imported from linux code in a later commit.

Signed-off-by: AKASHI Takahiro <takahiro.akashi@linaro.org>
4 years agortc: move date.c from drivers/rtc/ to lib/
AKASHI Takahiro [Wed, 13 Nov 2019 00:44:49 +0000 (09:44 +0900)]
rtc: move date.c from drivers/rtc/ to lib/

In the next commit, rtc_mktime(), for compatibility with linux, will be
implemented using rtc_mktime(), which is no longer drivers/rtc specific.
So move this file under lib/.

Signed-off-by: AKASHI Takahiro <takahiro.akashi@linaro.org>
4 years agortc.h: add struct udevice declaration
AKASHI Takahiro [Wed, 13 Nov 2019 00:44:48 +0000 (09:44 +0900)]
rtc.h: add struct udevice declaration

Without this change, including rtc.h solely will cause a build error.

Signed-off-by: AKASHI Takahiro <takahiro.akashi@linaro.org>
4 years agolinux_compat: move kmemdup() from ubifs.c to linux_compat.c
AKASHI Takahiro [Wed, 13 Nov 2019 00:44:47 +0000 (09:44 +0900)]
linux_compat: move kmemdup() from ubifs.c to linux_compat.c

linux_compat.c is the best place for kmemdup(), which is currenly used
only in ubifs.c, but will also be used when other kernel files
(in my case, lib/crypto/x509_cert_parser.c and pkcs7_parser.c) will be
imported. So just move it.

Signed-off-by: AKASHI Takahiro <takahiro.akashi@linaro.org>
Reviewed-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
4 years agocmd: pxe: Fix checkpatch WARNING/CHECK
Patrice Chotard [Mon, 25 Nov 2019 08:07:41 +0000 (09:07 +0100)]
cmd: pxe: Fix checkpatch WARNING/CHECK

Fix checkpatch WARNING and CHECK issues

Signed-off-by: Patrice Chotard <patrice.chotard@st.com>
4 years agocmd: sysboot: Fix checkpatch WARNING/CHECK
Patrice Chotard [Mon, 25 Nov 2019 08:07:40 +0000 (09:07 +0100)]
cmd: sysboot: Fix checkpatch WARNING/CHECK

Fix checkpatch WARNING and CHECK issues

Signed-off-by: Patrice Chotard <patrice.chotard@st.com>
4 years agocmd: pxe_utils: Fix checkpatch WARNING/CHECK
Patrice Chotard [Mon, 25 Nov 2019 08:07:39 +0000 (09:07 +0100)]
cmd: pxe_utils: Fix checkpatch WARNING/CHECK

Fix checkpatch WARNING and CHECK issues

Signed-off-by: Patrice Chotard <patrice.chotard@st.com>
4 years agocmd: sysboot: Create a sysboot command dedicated file
Patrice Chotard [Mon, 25 Nov 2019 08:07:38 +0000 (09:07 +0100)]
cmd: sysboot: Create a sysboot command dedicated file

Extract all sysboot command related code from pxe.c to new sysboot.c
Update Kconfig to insure that DISTRO_DEFAULT select new CMD_SYSBOOT
command.

Signed-off-by: Patrice Chotard <patrice.chotard@st.com>
4 years agocmd: Prepare sysboot command independence
Patrice Chotard [Mon, 25 Nov 2019 08:07:37 +0000 (09:07 +0100)]
cmd: Prepare sysboot command independence

As sysboot and pxe commands are sharing piece of code, migrate this
common code into a new file pxe_utils.c to prepare sysboot command
code extraction from pxe.c

Signed-off-by: Patrice Chotard <patrice.chotard@st.com>
4 years agocmd: Migrate from_env() from pxe.c to nvedit.c
Patrice Chotard [Mon, 25 Nov 2019 08:07:36 +0000 (09:07 +0100)]
cmd: Migrate from_env() from pxe.c to nvedit.c

Migrate from_env() from pxe.c to nvedit.c as it's not pxe specific.

Signed-off-by: Patrice Chotard <patrice.chotard@st.com>
4 years agoMerge tag 'u-boot-rockchip-20191206' of https://gitlab.denx.de/u-boot/custodians...
Tom Rini [Fri, 6 Dec 2019 15:35:18 +0000 (10:35 -0500)]
Merge tag 'u-boot-rockchip-20191206' of https://gitlab.denx.de/u-boot/custodians/u-boot-rockchip

- rockchip pwm driver update to support all the SoCs
- RK3308 GMAC and pinctrl support
- More UART interface support on PX30 and pmugrf reg fix
- Fixup on misc for eth_addr/serial#
- Other updates on variant SoCs

4 years agoRevert "spl: fix entry_point equal to load_addr"
Tom Rini [Fri, 6 Dec 2019 14:56:03 +0000 (09:56 -0500)]
Revert "spl: fix entry_point equal to load_addr"

Due to the (seemingly bogus) assumption of a default
CONFIG_SYS_UBOOT_START value we will revert this change for now and
evaluate it again for the next release along with changes to
CONFIG_SYS_UBOOT_START.

This reverts commit d3e97b53c1f2464f4898226de7d89abf242e4aa8.

Signed-off-by: Tom Rini <trini@konsulko.com>
4 years agoMerge branch '2019-12-05-master-imports'
Tom Rini [Thu, 5 Dec 2019 21:37:36 +0000 (16:37 -0500)]
Merge branch '2019-12-05-master-imports'

- Assorted omapl138_lcdk / da850-evm fixes
- FAT fix, add another pytest as well for FAT.
- Assorted general fixes

4 years agorockchip: allow loading larger kernels
Ben Wolsieffer [Tue, 3 Dec 2019 05:40:05 +0000 (00:40 -0500)]
rockchip: allow loading larger kernels

Recent versions of the Linux kernel with many options enabled have
grown large enough to overwrite the beginning of the initrd. For
example, the kernel I use on my Rock64 and RockPro64 is 34.1 MiB,
while only 31.5 MiB are available between kernel_addr_r and
ramdisk_addr_r.

This patch moves ramdisk_addr_r up by 32 MiB on the RK3328 and RK3399,
allowing for much larger kernels.

Signed-off-by: Ben Wolsieffer <benwolsieffer@gmail.com>
Reviewed-by: Kever Yang <kever.yang@rock-chips.com>
4 years agorockchip: rk3328: rock64: enable CONFIG_MISC_INIT_R
Ben Wolsieffer [Tue, 3 Dec 2019 05:24:31 +0000 (00:24 -0500)]
rockchip: rk3328: rock64: enable CONFIG_MISC_INIT_R

This enables reading of the cpuid and a static MAC address.

Signed-off-by: Ben Wolsieffer <benwolsieffer@gmail.com>
Reviewed-by: Kever Yang <kever.yang@rock-chips.com>
4 years agopinctrl: rockchip: Add pinctrl support for rk3308
David Wu [Tue, 3 Dec 2019 11:26:50 +0000 (19:26 +0800)]
pinctrl: rockchip: Add pinctrl support for rk3308

An iomux register contains 8 pins, each of which is represented
by 2 bits, but the register offset is 0x8.

For example, GRF_GPIO0A_IOMUX offset is 0x0, but GRF_GPIO0B_IOMUX
offset is 0x8, the offset 0x4 is reserved.

So add a type IOMUX_8WIDTH_2BIT to calculate offset.

Signed-off-by: David Wu <david.wu@rock-chips.com>
Reviewed-by: Kever Yang <kever.yang@rock-chips.com>
4 years agoarm: rockchip: rk3308: Initialize the iomux configuration
David Wu [Tue, 3 Dec 2019 11:02:50 +0000 (19:02 +0800)]
arm: rockchip: rk3308: Initialize the iomux configuration

When we want to use plus pinctrl feature, we need to enable
them at spl.

Signed-off-by: David Wu <david.wu@rock-chips.com>
Reviewed-by: Kever Yang <kever.yang@rock-chips.com>
4 years agopwm: rk_pwm: Make PWM driver to support all Rockchip Socs
David Wu [Tue, 3 Dec 2019 09:49:53 +0000 (17:49 +0800)]
pwm: rk_pwm: Make PWM driver to support all Rockchip Socs

This PWM driver can be used to support pwm functions
for on all Rockchip Socs.

The previous chips than RK3288 did not support polarity,
and register layout was different from the RK3288 PWM.

The RK3288 keep the current functions.

RK3328 and the chips after it, which can support hardware lock,
configure duty, period and polarity at next same period, to
prevent the intermediate temporary state.

Signed-off-by: David Wu <david.wu@rock-chips.com>
Reviewed-by: Kever Yang <kever.yang@rock-chips.com>
4 years agodts: rk3308: Enable ethernet function supported for Firefly ROC_RK3308_CC
David Wu [Tue, 26 Nov 2019 01:39:51 +0000 (09:39 +0800)]
dts: rk3308: Enable ethernet function supported for Firefly ROC_RK3308_CC

The Firefly ROC_RK3308_CC use ref_clock of input mode,
and rmii pins of m1 group.

Signed-off-by: David Wu <david.wu@rock-chips.com>
Reviewed-by: Kever Yang <kever.yang@rock-chips.com>
4 years agoarm: dts: Add mac node for rk3308 at dtsi level
David Wu [Tue, 26 Nov 2019 01:39:50 +0000 (09:39 +0800)]
arm: dts: Add mac node for rk3308 at dtsi level

The rk3308 only support RMII mode, and if it is output clock
mode, better to use ref_clk pin with drive strength 12ma.

Signed-off-by: David Wu <david.wu@rock-chips.com>
Reviewed-by: Kever Yang <kever.yang@rock-chips.com>
4 years agonet: gmac_rockchip: Add support for rk3308
David Wu [Tue, 26 Nov 2019 01:39:49 +0000 (09:39 +0800)]
net: gmac_rockchip: Add support for rk3308

Add the glue code to allow the rk3308 variant of the Rockchip gmac
to provide network functionality.

Signed-off-by: David Wu <david.wu@rock-chips.com>
Reviewed-by: Kever Yang <kever.yang@rock-chips.com>
4 years agorockchip: config: add support for firefly-px30 board
Kever Yang [Mon, 2 Dec 2019 07:58:17 +0000 (15:58 +0800)]
rockchip: config: add support for firefly-px30 board

This is a core board named Core-PX30-JD4 with a mainboard from Firefly,
name it as firefly-px30 for now.
This board can re-use the dts of PX30, the only difference is the UART IO,
the firefly use UART2 M1 while evb use UART2 M0.

Signed-off-by: Kever Yang <kever.yang@rock-chips.com>
4 years agorockchip: misc: protect serial# from getting overwritten
Heiko Stuebner [Fri, 29 Nov 2019 15:40:43 +0000 (16:40 +0100)]
rockchip: misc: protect serial# from getting overwritten

serial# is one of the vendor properties and thus protected from being
overwritten if already set. If env_set is called anyway this result in
some nasty warnings, so check for presence before trying that.

In the same direction check for the presence of cpuid# and compare it
to the actual hardware and emit a warning if they don't match.

Signed-off-by: Heiko Stuebner <heiko.stuebner@theobroma-systems.com>
Reviewed-by: Kever Yang <kever.yang@rock-chips.com>
4 years agorockchip: misc: don't fail if eth_addr already set
Heiko Stuebner [Fri, 29 Nov 2019 15:40:42 +0000 (16:40 +0100)]
rockchip: misc: don't fail if eth_addr already set

rockchip_setup_macaddr() runs from an initcall, so returning an error
code will make that initcall fail thus breaking the boot process.

And if an ethernet address is already set this is definitly not a
cause for that, so just return success in that case.

Fixes: 04825384999f ("rockchip: rk3399: derive ethaddr from cpuid");
Signed-off-by: Heiko Stuebner <heiko.stuebner@theobroma-systems.com>
Reviewed-by: Kever Yang <kever.yang@rock-chips.com>
4 years agorockchip: px30: Add support for using UART3 as debug UART
Paul Kocialkowski [Thu, 28 Nov 2019 14:27:52 +0000 (15:27 +0100)]
rockchip: px30: Add support for using UART3 as debug UART

Some generic PX30 SoMs found in the wild use UART3 as their debug output
instead of UART2 (used for MMC) and UART5.

Make it possible to use UART3 as early debug output, with the associated
clock and pinmux configuration. Two sets of output pins are supported (M0/M1).

Future users should also note that the pinmux default in the dts is to use
the M1 pins while the Kconfig option takes M0 as a default.

Signed-off-by: Paul Kocialkowski <paul.kocialkowski@bootlin.com>
Reviewed-by: Kever Yang <kever.yang@rock-chips.com>
Reviewed-by: Heiko Stuebner <heiko.stuebner@theobroma-systems.com>
4 years agorockchip: px30: Rename CONFIG_DEBUG_UART2_CHANNEL to CONFIG_DEBUG_UART_CHANNEL
Paul Kocialkowski [Thu, 28 Nov 2019 14:27:51 +0000 (15:27 +0100)]
rockchip: px30: Rename CONFIG_DEBUG_UART2_CHANNEL to CONFIG_DEBUG_UART_CHANNEL

UART3 also has two sets of pins that can be selected.

Rename the config option to a common name, to allow it to be used for both
UART2 and UART3.

Signed-off-by: Paul Kocialkowski <paul.kocialkowski@bootlin.com>
Reviewed-by: Kever Yang <kever.yang@rock-chips.com>
4 years agorockchip: px30: Fixup PMUGRF registers layout order
Paul Kocialkowski [Thu, 28 Nov 2019 14:27:50 +0000 (15:27 +0100)]
rockchip: px30: Fixup PMUGRF registers layout order

According to the PX30 TRM, the iomux registers come first, before the pull
and strength control registers.

Signed-off-by: Paul Kocialkowski <paul.kocialkowski@bootlin.com>
Reviewed-by: Kever Yang <kever.yang@rock-chips.com>
Reviewed-by: Heiko Stuebner <heiko.stuebner@theobroma-systems.com>
4 years agorockchip: evb-px5: disable NET
Andy Yan [Tue, 26 Nov 2019 13:15:40 +0000 (21:15 +0800)]
rockchip: evb-px5: disable NET

PX5 evb has no ETH port, so disable it.

Signed-off-by: Andy Yan <andy.yan@rock-chips.com>
Reviewed-by: Kever Yang <kever.yang@rock-chips.com>
4 years agorockchip: px5: enable spl-fifo-mode for emmc for px5-evb
Andy Yan [Tue, 26 Nov 2019 13:15:39 +0000 (21:15 +0800)]
rockchip: px5: enable spl-fifo-mode for emmc for px5-evb

We need load some parts of ATF to sram, but rockchip
dwmmc controllers can't do dma to non-ddr addresses
space, so set the mmc controller into fifo mode in spl.

Signed-off-by: Andy Yan <andy.yan@rock-chips.com>
Reviewed-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
Reviewed-by: Kever Yang <kever.yang@rock-chips.com>
4 years agorockchip: rk3308: enable spl-fifo-mode for emmc
Andy Yan [Tue, 26 Nov 2019 13:15:38 +0000 (21:15 +0800)]
rockchip: rk3308: enable spl-fifo-mode for emmc

We need load some parts of ATF to sram, but rockchip
dwmmc controllers can't do dma to non-ddr addresses
space, so set the mmc controller into fifo mode in spl.

And show my best respect to Heiko's work for this solution.

Signed-off-by: Andy Yan <andy.yan@rock-chips.com>
Reviewed-by: Kever Yang <kever.yang@rock-chips.com>
4 years agodoc: rockchip: Update build instruction for rk3308
Andy Yan [Tue, 26 Nov 2019 13:15:37 +0000 (21:15 +0800)]
doc: rockchip: Update build instruction for rk3308

After commit d8765e2422cd ("Enable building of u-boot.itb
on Rockchip platform"), u-boot.itb will automatically
generated by "make all" command, manually command
"make u-boot.itb" is no longer needed.

Signed-off-by: Andy Yan <andy.yan@rock-chips.com>
Reviewed-by: Kever Yang <kever.yang@rock-chips.com>
4 years agoARM: omapl138_lcdk: Shrink code size by building with Thumb
Adam Ford [Sun, 10 Nov 2019 12:33:40 +0000 (06:33 -0600)]
ARM: omapl138_lcdk: Shrink code size by building with Thumb

SPL has limited available resources, and the performance between
ARM and Thumb isn't that significant.

This patch builds using Thumb instruction set to reduce the code
size by nearly 6K.

Original:
   text    data     bss     dec     hex filename
  26526    4004    1376   31906    7ca2 spl/u-boot-spl

Thumb:

   text    data     bss     dec     hex filename
  20232    4004    1376   25612    640c spl/u-boot-spl

Signed-off-by: Adam Ford <aford173@gmail.com>
Tested-by: Bartosz Golaszewski <bgolaszewski@baylibre.com>
Reviewed-by: Bartosz Golaszewski <bgolaszewski@baylibre.com>
4 years agoFix typo in macros, "FIRMEWARE" -> "FIRMWARE"
Thomas Hebb [Sun, 10 Nov 2019 16:23:15 +0000 (08:23 -0800)]
Fix typo in macros, "FIRMEWARE" -> "FIRMWARE"

Signed-off-by: Thomas Hebb <tommyhebb@gmail.com>
4 years agoARM: da850-evm: Disable SYS_MMCSD_RAW_MODE_USE_SECTOR
Adam Ford [Wed, 13 Nov 2019 13:42:00 +0000 (07:42 -0600)]
ARM: da850-evm: Disable SYS_MMCSD_RAW_MODE_USE_SECTOR

The da850-evm doesn't have the boot pins configured in a way
to make MMC/SD booting an option, and MMC/SD support is not
enabled in SPL.  Therefore, there is no need to support raw mode
mmc/sd support in SPL.

This patch disables CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR

Signed-off-by: Adam Ford <aford173@gmail.com>
4 years agospl: fix entry_point equal to load_addr
Giulio Benetti [Mon, 25 Nov 2019 16:18:20 +0000 (17:18 +0100)]
spl: fix entry_point equal to load_addr

At the moment entry_point is set to image_get_load(header) that sets it
to "load address" instead of "entry point", assuming entry_point is
equal to load_addr, but it's not true. Then load_addr is set to
"entry_point - header_size", but this is wrong too since load_addr is
not an entry point.

So use image_get_ep() for entry_point assignment and image_get_load()
for load_addr assignment.

Signed-off-by: Giulio Benetti <giulio.benetti@benettiengineering.com>
4 years agotest/py: test_fs: add tests for creating/deleting many files
AKASHI Takahiro [Tue, 26 Nov 2019 08:28:49 +0000 (17:28 +0900)]
test/py: test_fs: add tests for creating/deleting many files

# This is actually a resent patch of
# [1] https://lists.denx.de/pipermail/u-boot/2019-May/369170.html

Two test cases are added under test_fs_ext:
    test case 10: for root directory
    test case 11: for non-root directory

Those will verify a behavior fixed by the commits related to
root directory
("fs: fat: allocate a new cluster for root directory of fat32" and
"fs: fat: flush a directory cluster properly"), and focus on
handling long-file-name directory entries under a directory.

Signed-off-by: AKASHI Takahiro <takahiro.akashi@linaro.org>
4 years agofs: fat: handle deleted directory entries correctly
AKASHI Takahiro [Tue, 26 Nov 2019 08:29:31 +0000 (17:29 +0900)]
fs: fat: handle deleted directory entries correctly

Unlink test for FAT file system seems to fail at test_unlink2.
(When I added this test, I haven't seen any errors though.)
for example,
===8<===
fs_obj_unlink = ['fat', '/home/akashi/tmp/uboot_sandbox_test/128MB.fat32.img']

    def test_unlink2(self, u_boot_console, fs_obj_unlink):
        """
        Test Case 2 - delete many files
        """
        fs_type,fs_img = fs_obj_unlink
        with u_boot_console.log.section('Test Case 2 - unlink (many)'):
            output = u_boot_console.run_command('host bind 0 %s' % fs_img)

            for i in range(0, 20):
                output = u_boot_console.run_command_list([
                    '%srm host 0:0 dir2/0123456789abcdef%02x' % (fs_type, i),
                    '%sls host 0:0 dir2/0123456789abcdef%02x' % (fs_type, i)])
                assert('' == ''.join(output))

            output = u_boot_console.run_command(
                '%sls host 0:0 dir2' % fs_type)
>           assert('0 file(s), 2 dir(s)' in output)
E           AssertionError: assert '0 file(s), 2 dir(s)' in '            ./\r\r\n            ../\r\r\n        0   0123456789abcdef11\r\r\n\r\r\n1 file(s), 2 dir(s)'

test/py/tests/test_fs/test_unlink.py:52: AssertionError
===>8===

This can happen when fat_itr_next() wrongly detects an already-
deleted directory entry.

File deletion, which was added in the commit f8240ce95d64 ("fs: fat:
support unlink"), is implemented by marking its entry for a short name
with DELETED_FLAG, but related entry slots for a long file name are kept
unmodified. (So entries will never be actually deleted from media.)

To handle this case correctly, an additional check for a directory slot
will be needed in fat_itr_next().

In addition, I added extra comments about long file name and short file
name format in FAT file system. Although they are not directly related
to the issue, I hope it will be helpful for better understandings
in general.

Signed-off-by: AKASHI Takahiro <takahiro.akashi@linaro.org>
4 years agodrivers: optee: rpmb: fix returning CID to TEE
Jorge Ramirez-Ortiz [Tue, 26 Nov 2019 16:19:34 +0000 (17:19 +0100)]
drivers: optee: rpmb: fix returning CID to TEE

The mmc CID value is one of the input parameters used to provision the
RPMB key. The trusted execution environment expects this value to be
specified in big endian format.

Before this fix, on little endian systems, the value returned by the
linux kernel mmc driver differed from the one returned by u-boot.
This meant that if linux provisioned the RPMB key, u-boot would not
have access to the partition (and the other way around).

Signed-off-by: Jorge Ramirez-Ortiz <jorge@foundries.io>
Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org>
4 years agocmd: cp: add missing map_sysmem
Philippe Reynes [Mon, 2 Dec 2019 16:33:22 +0000 (17:33 +0100)]
cmd: cp: add missing map_sysmem

The command cp fails on sandbox because the address is used
directly. To fix this issue, we call the function map_sysmem
to translate the address.

Signed-off-by: Philippe Reynes <philippe.reynes@softathome.com>
4 years agoiminfo: add missing map_sysmem
Philippe Reynes [Mon, 2 Dec 2019 14:45:50 +0000 (15:45 +0100)]
iminfo: add missing map_sysmem

The command iminfo fails on sandbox because the address
is used directly. To fix this issue, we call the function
map_sysmem to translate the address.

Signed-off-by: Philippe Reynes <philippe.reynes@softathome.com>
4 years agospl: Introduce SPL_DM_GPIO Kconfig define
Lukasz Majewski [Mon, 2 Dec 2019 09:24:16 +0000 (10:24 +0100)]
spl: Introduce SPL_DM_GPIO Kconfig define

This define indicates if DM_GPIO shall be supported in SPL. This allows
proper operation of DM converted GPIO drivers in SPL, which use
boards.

Signed-off-by: Lukasz Majewski <lukma@denx.de>
4 years agodrivers: pci: ignore disabled devices
Michael Walle [Sun, 1 Dec 2019 16:45:18 +0000 (17:45 +0100)]
drivers: pci: ignore disabled devices

PCI devices may be disabled in the device tree. Devices which are probed
by the device tree handle the "status" property and are skipped if
disabled. Devices which are probed by the PCI enumeration don't check
that property. Fix it.

Signed-off-by: Michael Walle <michael@walle.cc>
Reviewed-by: Alex Marginean <alexandru.marginean@nxp.com>
Tested-by: Alex Marginean <alexandru.marginean@nxp.com>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
4 years agoMerge git://git.denx.de/u-boot-sh
Tom Rini [Wed, 4 Dec 2019 23:10:04 +0000 (18:10 -0500)]
Merge git://git.denx.de/u-boot-sh

- Convert some R-Car Gen3 platforms to DM_SPI{,_FLASH}

4 years agoconfigs: Resync with savedefconfig
Tom Rini [Wed, 4 Dec 2019 22:18:38 +0000 (17:18 -0500)]
configs: Resync with savedefconfig

Rsync all defconfig files using moveconfig.py

Signed-off-by: Tom Rini <trini@konsulko.com>
4 years agoMerge branch '2019-10-27-mtd-cleanup'
Tom Rini [Wed, 4 Dec 2019 22:13:35 +0000 (17:13 -0500)]
Merge branch '2019-10-27-mtd-cleanup'

- Merge the series to clean up our MTD Kconfig and Makefile logic

4 years agomtd: Makefile: deep cleanup
Miquel Raynal [Fri, 25 Oct 2019 17:39:31 +0000 (19:39 +0200)]
mtd: Makefile: deep cleanup

Move MTD-related lines out of the root Makefile. Put them in their
respective directories. Enclose some of these new lines to skip them
when building the SPL. MTD core files and some MTD device drivers are
compiled in a mtd.o object and included in the final object only if
MTD support is required (there are two different symbols for that, one
for U-Boot and one for the SPL).

Now that all defconfigs have been fixed, we can stop the logic where
enabling a command selects the core files to compile. This logic is
broken since selecting a symbol with a 'depends on' will not enforce
this secondary dependency.

Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com>
4 years agocmd: make MTD commands depend on MTD
Miquel Raynal [Fri, 25 Oct 2019 17:39:30 +0000 (19:39 +0200)]
cmd: make MTD commands depend on MTD

Defconfigs have been fixed, now we can add proper dependencies in
Kconfig. SPI FLASH is still not dependent on MTD (deeper rework needed).

Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com>
4 years agocmd: nand/sf: isolate legacy code
Miquel Raynal [Fri, 25 Oct 2019 17:39:29 +0000 (19:39 +0200)]
cmd: nand/sf: isolate legacy code

The 'sf' command is not supposed to rely on the MTD stack, but both
'sf' and 'nand' commands use helpers located in mtd_uboot.c. Despite
their location, these functions do not depend at all on the MTD
stack.

This file (drivers/mtd/mtd_uboot.c) is only compiled if CONFIG_MTD is
selected, which is inconsistent with the current situation. Solve this
by moving these three functions (which are only used by the above two
commands) out of mtd_uboot.c and put them in a C file only compiled
with cmd/sf.c and cmd/nand.c.

Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com>
[trini: Don't export get_part function now]
Signed-off-by: Tom Rini <trini@konsulko.com>
4 years agocmd: mtdparts: Kconfig: join mtdparts command entry with its options
Miquel Raynal [Thu, 3 Oct 2019 17:50:25 +0000 (19:50 +0200)]
cmd: mtdparts: Kconfig: join mtdparts command entry with its options

Move the Kconfig entry of the option right after the entry of the
mtdparts command.

Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com>
4 years agomtd: spi: SPI_FLASH_MTD depends on MTD
Miquel Raynal [Thu, 3 Oct 2019 17:50:24 +0000 (19:50 +0200)]
mtd: spi: SPI_FLASH_MTD depends on MTD

It is already the case that all defconfigs with SPI_FLASH_MTD also
declare using MTD, but let's make this consistent and enforce it in
Kconfig. Most of the time SPI_FLASH_MTD is used in conjunction with
UBI, which already depends on MTD.

Suggested-by: Vignesh R <vigneshr@ti.com>
Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com>
4 years agodfu: add dependency on the raw NAND core
Miquel Raynal [Thu, 3 Oct 2019 17:50:22 +0000 (19:50 +0200)]
dfu: add dependency on the raw NAND core

CONFIG_DFU_NAND needs the raw NAND core being compiled.

Also fix the colibri_vf defconfig to reflect this dependency.

Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com>
Reviewed-by: Boris Brezillon <boris.brezillon@bootlin.com>
4 years agomtd: nand: add includes in NAND core to avoid warnings
Miquel Raynal [Thu, 3 Oct 2019 17:50:21 +0000 (19:50 +0200)]
mtd: nand: add includes in NAND core to avoid warnings

Because of the include's game, when some files are compiled for a SPI
NAND device, no warning appears. But when it is for a raw NAND device,
GCC complains. Fix these warning by including <common.h>.

Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com>
Reviewed-by: Boris Brezillon <boris.brezillon@bootlin.com>
4 years agoconfigs: ls104x/ls108x/ls208x: Build the raw NAND core with TFABOOT
Miquel Raynal [Thu, 3 Oct 2019 17:50:20 +0000 (19:50 +0200)]
configs: ls104x/ls108x/ls208x: Build the raw NAND core with TFABOOT

Enabling TFABOOT configuration will compile-in a call to nand_read in
the boot sequence. Handle the situation by also selecting officially
the raw NAND core in this case.

Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com>
4 years agoconfigs: socfpga: mcvevk: Remove useless UBI infos
Miquel Raynal [Thu, 3 Oct 2019 17:50:19 +0000 (19:50 +0200)]
configs: socfpga: mcvevk: Remove useless UBI infos

There is no flash on this board, there is no reason to define MTD
environment variables nor UBI. Drop them from the configuration file.

Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com>
Reviewed-by: Wolfgang Grandegger <wg@aries-embedded.de>
4 years agoconfigs: remove MTD support from bcm11130 and M54418TWR defconfigs
Miquel Raynal [Thu, 3 Oct 2019 17:50:18 +0000 (19:50 +0200)]
configs: remove MTD support from bcm11130 and M54418TWR defconfigs

While the right Kconfig entries were selected, because of the missing
CMD_NAND symbol the raw NAND core was never compiled. Remove it from
the defconfigs otherwise the build will fail.

Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com>
[trini: Also do this on bcm11130_nand]
Signed-off-by: Tom Rini <trini@konsulko.com>
4 years agoconfigs: remove raw NAND core from k2g defconfigs
Miquel Raynal [Thu, 3 Oct 2019 17:50:17 +0000 (19:50 +0200)]
configs: remove raw NAND core from k2g defconfigs

Due to previous Makefile organization, the raw NAND subdirectory was
not compiled in if CMD_NAND was not enabled. Because the Denali driver
does not compile with these boards (undefined environment offset),
remove the dependency within the defconfig over the controller driver
(was ignored anyway in the past).

Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com>
4 years agoconfigs: move CONFIG_MTD in defconfigs when set in arch includes
Miquel Raynal [Thu, 3 Oct 2019 17:50:16 +0000 (19:50 +0200)]
configs: move CONFIG_MTD in defconfigs when set in arch includes

Let's be consistent and always declare CONFIG_MTD from the defconfig
file when needed.

Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com>
Reviewed-by: Boris Brezillon <boris.brezillon@bootlin.com>
4 years agomtd: ensure MTD is compiled when CMD_MTDPARTS is selected
Miquel Raynal [Thu, 3 Oct 2019 17:50:15 +0000 (19:50 +0200)]
mtd: ensure MTD is compiled when CMD_MTDPARTS is selected

MTD support must be enabled when using mtdparts. Indeed, functions
like get_mtd_info(), get_mtd_device() and put_mtd_device() are in
drivers/mtd/mtd_uboot.c and are built only with CONFIG_MTD.

Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com>
Reviewed-by: Boris Brezillon <boris.brezillon@bootlin.com>
4 years agomtd: ensure CMD_NAND is compiled when its options are selected
Miquel Raynal [Thu, 3 Oct 2019 17:50:14 +0000 (19:50 +0200)]
mtd: ensure CMD_NAND is compiled when its options are selected

In some files, options of CMD_NAND are selected but not the command
itself. Fix this inconsistency.

Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com>
Reviewed-by: Boris Brezillon <boris.brezillon@bootlin.com>
4 years agomtd: ensure MTD_RAW_NAND is compiled when ENV_IS_IN_NAND is selected
Miquel Raynal [Thu, 3 Oct 2019 17:50:13 +0000 (19:50 +0200)]
mtd: ensure MTD_RAW_NAND is compiled when ENV_IS_IN_NAND is selected

Raw NAND support must be enabled when the environment is in NAND.

Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com>
Reviewed-by: Boris Brezillon <boris.brezillon@bootlin.com>
4 years agomtd: ensure UBI is compiled when ENV_IS_IN_UBI is selected
Miquel Raynal [Thu, 3 Oct 2019 17:50:12 +0000 (19:50 +0200)]
mtd: ensure UBI is compiled when ENV_IS_IN_UBI is selected

UBI must be enabled when the environment is in UBI.

Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com>
Reviewed-by: Boris Brezillon <boris.brezillon@bootlin.com>
4 years agomtd: ensure UBI is compiled when using fastmap
Miquel Raynal [Thu, 3 Oct 2019 17:50:09 +0000 (19:50 +0200)]
mtd: ensure UBI is compiled when using fastmap

UBI must be enabled when using fastmap, reflect this is defconfigs.

Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com>
Reviewed-by: Boris Brezillon <boris.brezillon@bootlin.com>
4 years agomtd: ensure MTD is compiled when there is a SPI NOR flash using MTD
Miquel Raynal [Thu, 3 Oct 2019 17:50:08 +0000 (19:50 +0200)]
mtd: ensure MTD is compiled when there is a SPI NOR flash using MTD

MTD must be enabled when there is a SPI NOR flash using the
SPI_FLASH_MTD config entry.

Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com>
Reviewed-by: Boris Brezillon <boris.brezillon@bootlin.com>
4 years agomtd: ensure MTD/the raw NAND core are compiled when there is a NAND flash
Miquel Raynal [Thu, 3 Oct 2019 17:50:07 +0000 (19:50 +0200)]
mtd: ensure MTD/the raw NAND core are compiled when there is a NAND flash

Both symbols must be enabled when there is a raw NAND driver
selected. Also enable them when CONFIG_CMD_NAND is selected to avoid
breaking things when we'll further rework the MTD dependency
description.

Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com>
Reviewed-by: Boris Brezillon <boris.brezillon@bootlin.com>
[trini: Rebase and migrate a few more boards here]
Signed-off-by: Tom Rini <trini@konsulko.com>
4 years agoARM: rmobile: Convert M2N Gose to DM_SPI{,_FLASH}
Marek Vasut [Sat, 30 Nov 2019 20:50:48 +0000 (21:50 +0100)]
ARM: rmobile: Convert M2N Gose to DM_SPI{,_FLASH}

Enable DM_SPI and DM_SPI_FLASH in U-Boot on M2N Gose.

Signed-off-by: Marek Vasut <marek.vasut+renesas@gmail.com>
Cc: Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
4 years agoARM: rmobile: Convert M2W Koelsch to DM_SPI{,_FLASH}
Marek Vasut [Sat, 30 Nov 2019 20:48:33 +0000 (21:48 +0100)]
ARM: rmobile: Convert M2W Koelsch to DM_SPI{,_FLASH}

Enable DM_SPI and DM_SPI_FLASH in U-Boot on M2W Koelsch.

Signed-off-by: Marek Vasut <marek.vasut+renesas@gmail.com>
Cc: Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
4 years agoARM: rmobile: Convert H2 Lager to DM_SPI{,_FLASH}
Marek Vasut [Sat, 30 Nov 2019 20:45:25 +0000 (21:45 +0100)]
ARM: rmobile: Convert H2 Lager to DM_SPI{,_FLASH}

Enable DM_SPI and DM_SPI_FLASH in U-Boot on H2 Lager.

Signed-off-by: Marek Vasut <marek.vasut+renesas@gmail.com>
Cc: Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
4 years agomtd: rename CONFIG_MTD_DEVICE -> CONFIG_MTD
Miquel Raynal [Thu, 3 Oct 2019 17:50:05 +0000 (19:50 +0200)]
mtd: rename CONFIG_MTD_DEVICE -> CONFIG_MTD

Like in Linux, just use CONFIG_MTD to compile the MTD stack.

Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com>
Reviewed-by: Boris Brezillon <boris.brezillon@bootlin.com>
4 years agomtd: rename CONFIG_MTD -> CONFIG_DM_MTD
Miquel Raynal [Thu, 3 Oct 2019 17:50:04 +0000 (19:50 +0200)]
mtd: rename CONFIG_MTD -> CONFIG_DM_MTD

CONFIG_MTD must be reserved for the MTD core. Like any other
subsystem, prefix the symbol by DM when it comes to DM support.

Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com>
Reviewed-by: Boris Brezillon <boris.brezillon@bootlin.com>
[trini: Add Kconfig files]
Signed-off-by: Tom Rini <trini@konsulko.com>
4 years agomtd: rename CONFIG_NAND -> CONFIG_MTD_RAW_NAND
Miquel Raynal [Thu, 3 Oct 2019 17:50:03 +0000 (19:50 +0200)]
mtd: rename CONFIG_NAND -> CONFIG_MTD_RAW_NAND

Add more clarity by changing the Kconfig entry name.

Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com>
[trini: Re-run migration, update a few more cases]
Signed-off-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Boris Brezillon <boris.brezillon@bootlin.com>
4 years agoMerge tag 'efi-2020-01-rc5' of https://gitlab.denx.de/u-boot/custodians/u-boot-efi
Tom Rini [Tue, 3 Dec 2019 23:12:58 +0000 (18:12 -0500)]
Merge tag 'efi-2020-01-rc5' of https://gitlab.denx.de/u-boot/custodians/u-boot-efi

Pull request for UEFI sub-system for efi-2020-01-rc5

A type error in the implementation of the efidebug command is fixed.

4 years agoMerge tag 'dm-pull-3dec19' of https://gitlab.denx.de/u-boot/custodians/u-boot-dm
Tom Rini [Tue, 3 Dec 2019 23:12:04 +0000 (18:12 -0500)]
Merge tag 'dm-pull-3dec19' of https://gitlab.denx.de/u-boot/custodians/u-boot-dm

Fix stdout-path handling

4 years agoMerge branch '2019-12-03-master-imports'
Tom Rini [Tue, 3 Dec 2019 23:10:17 +0000 (18:10 -0500)]
Merge branch '2019-12-03-master-imports'

- omapl138_lcdk fixes
- MediaTek MT8518 support
- VxWorks standard DTB support
- Assorted bug fixes

4 years agocmd: efidebug: fix a build error in show_efi_boot_opt()
AKASHI Takahiro [Tue, 26 Nov 2019 01:11:22 +0000 (10:11 +0900)]
cmd: efidebug: fix a build error in show_efi_boot_opt()

I detected the following error in sandbox with Clang on Travis CI:
    +cmd/efidebug.c:703:15: error: result of comparison of constant
     9223372036854775822 with expression of type 'int' is always false
     [-Werror,-Wtautological-constant-out-of-range-compare]
    +        else if (ret == EFI_NOT_FOUND)
    +                 ~~~ ^  ~~~~~~~~~~~~~

Simply changing a type of 'ret' to efi_status_t will fix this error.

Signed-off-by: AKASHI Takahiro <takahiro.akashi@linaro.org>
Reviewed-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
4 years agoarm64: zynqmp: Point zcu216 defconfig to correct dts file
Michal Simek [Mon, 25 Nov 2019 09:28:45 +0000 (10:28 +0100)]
arm64: zynqmp: Point zcu216 defconfig to correct dts file

Defconfig is pointing to incorrect DT file which needs to be fix.

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
4 years agoARM: MediaTek: add basic support for MT8518 boards
mingming lee [Thu, 7 Nov 2019 11:28:44 +0000 (19:28 +0800)]
ARM: MediaTek: add basic support for MT8518 boards

This adds a general board file based on MT8518 SoCs from MediaTek.

Apart from the generic parts (cpu) we add some low level init codes
and initialize the early clocks.

This commit is adding the basic boot support for the MT8518 eMMC board.

Signed-off-by: mingming lee <mingming.lee@mediatek.com>
[trini: Migrate env location to defconfig, set ENV_IS_IN_MMC]
Signeed-off-by: Tom Rini <trini@konsulko.com>
4 years agopinctrl: add driver for MT8518
mingming lee [Thu, 7 Nov 2019 11:28:43 +0000 (19:28 +0800)]
pinctrl: add driver for MT8518

Add Pinctrl driver for MediaTek MT8518 SoC.

Signed-off-by: mingming lee <mingming.lee@mediatek.com>
4 years agommc: mtk-sd: Adjust the mmc tuning flow
mingming lee [Thu, 7 Nov 2019 11:28:42 +0000 (19:28 +0800)]
mmc: mtk-sd: Adjust the mmc tuning flow

1.Support cmd response and data tuning together.
2.Support hs400 cmd responese tuning.

Signed-off-by: mingming lee <mingming.lee@mediatek.com>
4 years agoclk: mediatek: add driver for MT8518
mingming lee [Thu, 7 Nov 2019 11:28:41 +0000 (19:28 +0800)]
clk: mediatek: add driver for MT8518

Add clock driver for MediaTek MT8518 SoC.

Signed-off-by: mingming lee <mingming.lee@mediatek.com>
4 years agoARM: MediaTek: Add support for MediaTek MT8518 SoC
mingming lee [Thu, 7 Nov 2019 11:28:40 +0000 (19:28 +0800)]
ARM: MediaTek: Add support for MediaTek MT8518 SoC

Add support for MediaTek MT8518 SoC. This include the file
that will initialize the SoC after boot and its device tree.

Signed-off-by: mingming lee <mingming.lee@mediatek.com>
4 years agoregmap: Fix potential memory leaks
Faiz Abbas [Mon, 11 Nov 2019 09:59:05 +0000 (15:29 +0530)]
regmap: Fix potential memory leaks

Free allocated memory in case of an error in regmap_init_mem() and
regmap_init_mem_index().

Signed-off-by: Faiz Abbas <faiz_abbas@ti.com>
4 years agonet: cpsw: Add NULL pointer check
Faiz Abbas [Mon, 11 Nov 2019 09:52:56 +0000 (15:22 +0530)]
net: cpsw: Add NULL pointer check

Add null pointer check to take care of out of memory errors.

Signed-off-by: Faiz Abbas <faiz_abbas@ti.com>
Reviewed-by: Grygorii Strashko <grygorii.strashko@ti.com>
4 years agospl: ymodem: Fix loading of fit image
Lokesh Vutla [Thu, 14 Nov 2019 13:03:30 +0000 (18:33 +0530)]
spl: ymodem: Fix loading of fit image

spl ymodem driver always assumes that 1 BUF_SIZE is read in one stream.
This might not be true when image is not padded to BUF_SIZE and the last
sector that gets loaded will be < BUF_SIZE. Drop this assumption and use
the actual size that is loaded.

Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com>
4 years agommc: davinci: fix mmc boot in SPL
Bartosz Golaszewski [Thu, 14 Nov 2019 15:10:31 +0000 (16:10 +0100)]
mmc: davinci: fix mmc boot in SPL

The MMC boot is currently broken on omapl138-lcdk after enabling the
driver model in SPL. The main problem is the driver's bind callback not
being called after probe in SPL (even with the DM_FLAG_PRE_RELOC flag
specified).

While a proper fix is still being worked on, this hacky changeset at
least fixes the MMC boot on this platform by calling mmc_bind()
manually from probe().

Signed-off-by: Bartosz Golaszewski <bgolaszewski@baylibre.com>
4 years agoboard: omapl138_lcdk: add the mmc device to SPL
Bartosz Golaszewski [Thu, 14 Nov 2019 15:10:30 +0000 (16:10 +0100)]
board: omapl138_lcdk: add the mmc device to SPL

We don't have full device-tree support in SPL yet - add an appropriate
U_BOOT_DEVICE() to the board file.

Signed-off-by: Bartosz Golaszewski <bgolaszewski@baylibre.com>
4 years agommc: davinci: drop struct davinci_mmc_plat
Bartosz Golaszewski [Thu, 14 Nov 2019 15:10:29 +0000 (16:10 +0100)]
mmc: davinci: drop struct davinci_mmc_plat

struct mmc_config & struct mmc don't need to be exported over platform
data, but can instead be private in the driver.

Remove struct davinci_mmc_plat.

Signed-off-by: Bartosz Golaszewski <bgolaszewski@baylibre.com>
4 years agommc: davinci: drop support for ti,dm6441-mmc
Bartosz Golaszewski [Thu, 14 Nov 2019 15:10:28 +0000 (16:10 +0100)]
mmc: davinci: drop support for ti,dm6441-mmc

The DM family of DaVinci SoCs is no longer supported. Drop the
irrelevant code from the driver.

Signed-off-by: Bartosz Golaszewski <bgolaszewski@baylibre.com>
4 years agoARM: omapl138_lcdk: Allow early init to start instruction cache
Adam Ford [Sun, 10 Nov 2019 16:17:58 +0000 (10:17 -0600)]
ARM: omapl138_lcdk: Allow early init to start instruction cache

Currently the omapl138_lcdk has SKIP_LOWLEVEL_INIT set.
The README states there is a variation of this for the ARM926EJ-S
which allows the board to just skip the call to lowlevel_init()
and do the normal CP15 init which enables the instruction cache.

On the da850evm, this was shown to improve startup time.

This patch switches SKIP_LOWLEVEL_INIT to SKIP_LOWLEVEL_INIT_ONLY
thus, enabling the cache.

Signed-off-by: Adam Ford <aford173@gmail.com>
Tested-by: Bartosz Golaszewski <bgolaszewski@baylibre.com>
Reviewed-by: Bartosz Golaszewski <bgolaszewski@baylibre.com>
4 years agoARM: omapl138_lcdk: Enable SPL_DM_SEQ_ALIAS and SPL_OF_TRANSLATE
Adam Ford [Sun, 10 Nov 2019 14:01:33 +0000 (08:01 -0600)]
ARM: omapl138_lcdk: Enable SPL_DM_SEQ_ALIAS and SPL_OF_TRANSLATE

In order to further prepare for full device tree support in SPL,
this patch enables both SPL_DM_SEQ_ALIAS and SPL_OF_TRANSLATE.
Both of these are already enabled in U-Boot, so SPL will have
the same functionality

Signed-off-by: Adam Ford <aford173@gmail.com>
Tested-by: Bartosz Golaszewski <bgolaszewski@baylibre.com>
Reviewed-by: Bartosz Golaszewski <bgolaszewski@baylibre.com>
4 years agoARM: omapl138_lcdk: Increase malloc pool before relocation
Adam Ford [Sun, 10 Nov 2019 14:01:32 +0000 (08:01 -0600)]
ARM: omapl138_lcdk: Increase malloc pool before relocation

Driver model requires a malloc pool to allocate memory before
relocations to operate serial and some other devices.  This patch
increases the pool size to 2K.

Signed-off-by: Adam Ford <aford173@gmail.com>
Tested-by: Bartosz Golaszewski <bgolaszewski@baylibre.com>
Reviewed-by: Bartosz Golaszewski <bgolaszewski@baylibre.com>
4 years agoARM: omapl138_lcdk: Separate BSS in SPL
Adam Ford [Sun, 10 Nov 2019 14:01:31 +0000 (08:01 -0600)]
ARM: omapl138_lcdk: Separate BSS in SPL

In preparation to use full device tree support, SPL can separate
BSS from text region.

This patch enables SPL_SEPARATE_BSS.

Signed-off-by: Adam Ford <aford173@gmail.com>
Tested-by: Bartosz Golaszewski <bgolaszewski@baylibre.com>
Reviewed-by: Bartosz Golaszewski <bgolaszewski@baylibre.com>
4 years agocmd: pxe: Fix bootm argument count
Abhishek Shah [Tue, 19 Nov 2019 00:41:49 +0000 (16:41 -0800)]
cmd: pxe: Fix bootm argument count

pxe command parses the init ramfs address(through initrd lable in
pxe config file), but is not passing it to bootm command as argument
as bootm_argc count is not increased.

Signed-off-by: Abhishek Shah <abhishek.shah@broadcom.com>
Signed-off-by: Vladimir Olovyannikov <vladimir.olovyannikov@broadcom.com>
Reviewed-by: Simon Glass <sjg@chromium.org>