| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
| |
Change-Id: I52ea26a5e1625b8e880b6dba9a301ba7f7bed71a
Signed-off-by: Dongjin Kim <tobetter@gmail.com>
|
|
|
|
| |
Fix to use Github URL of '/rkbin'"
|
|
|
|
|
| |
Change-Id: I3434af54aafa6814e7a792e5e9a5554aa04f68a9
Signed-off-by: Dongjin Kim <tobetter@gmail.com>
|
|
|
|
|
| |
Signed-off-by: Dongjin Kim <tobetter@gmail.com>
Change-Id: Ic0bf78193e724af166ed6c1d16abf9165d2f8cee
|
|
|
|
|
| |
Signed-off-by: Dongjin Kim <tobetter@gmail.com>
Change-Id: I0115b2b88333e9ba6a8bd97daa5b48a0a6a0eeea
|
|
|
|
|
|
|
|
| |
The value of 'panel' stores a device tree overlay file for a DSI panel,
so load it and apply to a kernel device tree.
Signed-off-by: Dongjin Kim <tobetter@gmail.com>
Change-Id: I2020f7048a2bdd38da5cfa472dc11acb1bca2c66
|
|
|
|
|
|
|
|
|
| |
In order to use an environment value at early stage in U-Boot procedure,
specifically earlier than a kernel device tree blob is proceed, the
environment value must be loaded and imported.
Signed-off-by: Dongjin Kim <tobetter@gmail.com>
Change-Id: I147b2b37f3d1706e22a27083549eff7a8815064e
|
|
|
|
|
|
|
|
|
|
| |
This reverts commit 3bdef7e642ae558d0e61ce26438d10b55b26ec9c.
This commit blocks to boot from SD card, since it won't check it
partition type properly and treats it's always EFI partition type.
Change-Id: Ic5ae4fe70fdd61addc5cd8dfdb782928535fabea
Signed-off-by: Dongjin Kim <tobetter@gmail.com>
|
|
|
|
|
|
|
|
| |
Currently, we have only ODROID-M1 based on RK3568 so use "m1" and change
it for others if we have more variant models.
Signed-off-by: Dongjin Kim <tobetter@gmail.com>
Change-Id: I4acacc1d7d6364bade8787de3097d0d270a5e7e3
|
|
|
|
|
|
|
|
|
| |
A default boot splash image can be stored in a partition of SPI flash
memory, but maybe good to load from MMC for testing or larger splash
image than the partition size in SPI flash memory.
Signed-off-by: Dongjin Kim <tobetter@gmail.com>
Change-Id: If17010d550be48a72b449cd11e9c5c71a27ae217
|
|
|
|
|
|
|
|
|
| |
This patch is to intiate SPI flash memory with default bus and cs on
booting, this is only necessary when U-Boot blob is loaded from MMC
device.
Signed-off-by: Dongjin Kim <tobetter@gmail.com>
Change-Id: I430ad1d9669329abf4e9acaf4dd2c81fce4b5530
|
|
|
|
|
|
|
|
|
| |
This patch is to load U-Boot blob from eMMC or SD card when it has a
partition named 'uboot', this helps to use custom U-Boot blob or debug
it rather than load from or reflash SPI flash memory.
Signed-off-by: Dongjin Kim <tobetter@gmail.com>
Change-Id: I934cd139146eb9226ad2e757be8dde4ab38212be
|
|
|
|
|
| |
Signed-off-by: Dongjin Kim <tobetter@gmail.com>
Change-Id: I2d640db0e6de2efbf78289c486c0d9380164e621
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
When a device tree have a bool property 'disable-vop2-fixup', U-Boot
wont' apply a device tree fixup for a display device.
chosen {
disable-vop2-fixup;
...
};
Signed-off-by: Dongjin Kim <tobetter@gmail.com>
Change-Id: I728b6b45799e5ca690693fa074df8fea1f9f65c2
|
|
|
|
|
|
|
| |
ODROID-M1 does not use Rockchip's vendor partition.
Signed-off-by: Dongjin Kim <tobetter@gmail.com>
Change-Id: Ica3ec5a945a4ecb7f9b640de55eb370402875526
|
|
|
|
|
|
|
|
|
|
|
| |
is enabled"
This reverts commit 123c920622cc462fd3a11abea7b9647b03f48497.
This commit is to initiated MMC hardwares when the kernel device tree is
loaded, MMC is not initiated when booting from SPI flash memory.
Change-Id: I3a37644e89a57a1ed96579f7626ebd9e14f0f3f4
|
|
|
|
|
|
|
|
|
|
|
| |
This reverts commit 33273e09fd8c70f30afe5da51578283c35910fd7.
This patch is to use MMC device from kernel device tree rather than
U-Boot. After device tree for kernel is loaded, the phandle of the pin
controls for MMC refers to U-Boot one and failed to initiated them when
booting from SPI flash memory.
Change-Id: I3fb82ac64bd8942da6da12f90c7d83f82bfc9644
|
|
|
|
|
| |
Signed-off-by: Dongjin Kim <tobetter@gmail.com>
Change-Id: I5917556711cf2d0761567d6ced91992f9759a1d5
|
|
|
|
|
|
|
|
| |
After applying the device tree from Kernel, not built-in one,
SPI flash memory is mapped to different bus and this causes to access
environmemnt in SPI flash memory due to failure creating MTD device.
Change-Id: Ie6047b288093357f09e39fa01c2c02a61d75fe4b
|
|
|
|
|
|
|
|
|
|
| |
This reverts commit d87d52756a1f979d3d3d5ddeba9e873f2889dd6b.
This patch is to use the unchanged 'bootargs' from U-Boot environment to
the device tree, since Rockchip's patch replaces or merges with
something else with given sources.
Change-Id: I70187f1112c87867d0eb306920346f35d6e966f4
|
|
|
|
|
|
|
|
|
| |
This patch is to load the default splash image from a dedicated
partition in SPI flash memory and use it for a default U-Boot logo
image after putting into resource pool.
Change-Id: I640b9db5c841ef5dfbb73e72590342b20de4a691
Signed-off-by: Dongjin Kim <tobetter@gmail.com>
|
|
|
|
|
| |
Signed-off-by: Dongjin Kim <tobetter@gmail.com>
Change-Id: Idfa765d9dfd6943cf2704844d5153d0363b174a0
|
|
|
|
|
|
|
|
|
| |
Fix to add missing header file for Android image when booting from SPI
device.
FIX to "[57504d998f rockchip: spl: support get boot mode]"
Change-Id: I84abef71b5f797ce9e994e350df9c37a0dcfee7d
|
|
|
|
|
|
|
|
| |
If emmc rst_n function is not enabled, must execute this command in the u-boot shell.
=> mmc rst-function 0 1
Signed-off-by: ckkim <changkon12@gmail.com>
Change-Id: I21a6ac376032cc2b7b699c889bc78d8f58301488
|
|
|
|
|
|
|
|
|
| |
- The odroid placed boot.scr file to the fat fs partition. But -bootable
argument doesn't count this. So fat partition can't work with this args.
So Removed this option to use distro_bootcmd.
Change-Id: Ia42abbe62dc59687ddccacb9c25c6892f92a360c
Signed-off-by: Luke Go <sangch.go@gmail.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This patch is to resolve two issues:
1) Compile error
cmd/bmp.c: In function ‘gunzip_bmp’:
cmd/bmp.c:61:31: error: cast from pointer to integer of different size [-Werror=pointer-to-int-cast]
bmp = (struct bmp_image *)((((unsigned int)dst + 1) & ~3) + 2);
^
cmd/bmp.c:61:8: error: cast to pointer from integer of different size [-Werror=int-to-pointer-cast]
bmp = (struct bmp_image *)((((unsigned int)dst + 1) & ~3) + 2);
^
2) Return lenght of decompressed buffer to given arguemnt 'lenp' when
decompression is success.
Signed-off-by: Dongjin Kim <tobetter@gmail.com>
Change-Id: I485ab72186f7130997fb6d0793c3b805efaa8b17
|
|
|
|
|
|
|
|
|
|
|
| |
- The rockchip load dtb file from resource image. but the odroid board
load dtb file from the other methods like loading from dtb partition.
- So Avoid rockchip's loading method. Before loading rockchip's resource
image, check fdt header and avoid it.
Change-Id: I2072b2a70939772c06e0319ccd07a21c89c73cce
Signed-off-by: Luke Go <sangch.go@gmail.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Perform the following updates:
- Relocate the commit id from the file to the description of U-Boot
commit. The AOSP commit is c784ce50e8c10eaf70e1f97e24e8324aef45faf5.
This is done to avoid stale references in the file itself. The
reasoning is in https://patchwork.ozlabs.org/patch/1098056/#2170209.
- Minimize the diff to AOSP, to decrease the effort of the next AOSP
backports. The background can be found in:
https://patchwork.ozlabs.org/patch/1080394/#2168454.
- Guard the static_assert() calls by #ifndef __UBOOT__ ... #endif,
to avoid compilation failures of files including the header.
Signed-off-by: Eugeniu Rosca <erosca@de.adit-jv.com>
Reviewed-by: Sam Protsenko <semen.protsenko@linaro.org>
Reviewed-by: Simon Glass <sjg@chromium.org>
Change-Id: I48de5bc6d3c44fa27d7874ea60c5bdced3acce84
|
|
|
|
|
|
|
|
| |
- Rockchip used their's bootloader_message structures instead of
original bootloader_message structures. This commit replaced it to
original stuffs.
Change-Id: I094622d4866287b6e5de1d2805319eb6fffc5aff
|
|
|
|
|
|
|
|
| |
- On the rockchip chip, boot device discriptor is fixed on boot time.
But ODROID-M1 have to change the boot device discriptor. So add new
command to change boot device discriptor, 'setbootdev'.
Change-Id: I60065e0e69503c03b32f52de1d2f4ec515e1381f
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
These have been reported by Simon in [1] and fixed in [2].
However, since [1] has already been pushed to u-boot/master, the
improvements incorporated in [2] are now extracted and resubmitted.
The changes are in the area of coding style and best practices:
* s/field/fieldp/, s/size/sizep/, to convey that the variables return
an output to the caller
* s/err_1/err_read_fail/, s/err_2/err_too_small/, to be more descriptive
* Made sure 'static int do_bcb_load' appears on the same line
* Placed a `/*` on top of multi-line comment
[1] https://patchwork.ozlabs.org/patch/1104244/#2200259
[2] https://patchwork.ozlabs.org/cover/1128661/
("[v4,0/4] Add 'bcb' command to read/modify/write Android BCB")
Fixes: db7b7a05b267 ("cmd: Add 'bcb' command to read/modify/write BCB fields")
Reported-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Eugeniu Rosca <erosca@de.adit-jv.com>
Reviewed-by: Sam Protsenko <semen.protsenko@linaro.org>
Change-Id: I400d868ee437eff2773d2328b20adad5034f142f
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Quote from https://patchwork.ozlabs.org/patch/1104244/#2210814:
----------8<-----------
strncmp() is chosen for the sake of paranoid/defensive programming.
Indeed, strncmp() is not really needed when comparing a variable
with a string literal. We expect strcmp() to behave safely even if the
string variable is not NUL-terminated.
In the same scenario, Linux v5.2-rc7 uses both strcmp() and strncmp(),
but the frequency of strcmp() is higher:
$ git --version
git version 2.22.0
$ (Linux 5.2-rc7) git grep -En 'strncmp\([^"]*"[[:alnum:]]+"' | wc -l
1066
$ (Linux 5.2-rc7) git grep -En 'strcmp\([^"]*"[[:alnum:]]+"' | wc -l
1968
A quick "strcmp vs strncmp" object size test shows that strcmp()
generates smaller memory footprint (gcc-8, x86_64):
$ (U-Boot) size cmd/bcb-strncmp.o cmd/bcb-strcmp.o
text data bss dec hex filename
3373 400 2048 5821 16bd cmd/bcb-strncmp.o
3314 400 2048 5762 1682 cmd/bcb-strcmp.o
So, overall, I agree to use strcmp() whenever variables are compared
with string literals.
----------8<-----------
Fixes: db7b7a05b267 ("cmd: Add 'bcb' command to read/modify/write BCB fields")
Reported-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Eugeniu Rosca <erosca@de.adit-jv.com>
Reviewed-by: Sam Protsenko <semen.protsenko@linaro.org>
Reviewed-by: Igor Opaniuk <igor.opaniuk@gmail.com>
Change-Id: Icda2c3e9b01821398f1dc8471d7584bb36e4bedd
|
|
|
|
|
|
|
|
|
|
|
| |
Fix warning V1037 reported by PVS-Studio Static Analyzer:
Two or more case-branches perform the same actions. Check lines: 49, 53
Fixes: db7b7a05b267 ("cmd: Add 'bcb' command to read/modify/write BCB fields")
Signed-off-by: Eugeniu Rosca <erosca@de.adit-jv.com>
Reviewed-by: Igor Opaniuk <igor.opaniuk@gmail.com>
Reviewed-by: Sam Protsenko <semen.protsenko@linaro.org>
Change-Id: Iccbd0208ac69eb181e8412cbdfb53fb896be7064
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
'Bootloader Control Block' (BCB) is a well established term/acronym in
the Android namespace which refers to a location in a dedicated raw
(i.e. FS-unaware) flash (e.g. eMMC) partition, usually called "misc",
which is used as media for exchanging messages between Android userspace
(particularly recovery [1]) and an Android-capable bootloader.
On higher level, this allows implementing a subset of Android Bootloader
Requirements [2], amongst which is the Android-specific bootloader
flow [3]. Regardless how the latter is implemented in U-Boot ([3] being
the most memorable example), reading/writing/dumping the BCB fields in
the development process from inside the U-Boot is a convenient feature.
Hence, make it available to the users.
Some usage examples of the new command recorded on R-Car H3ULCB-KF
('>>>' is an overlay on top of the original console output):
=> bcb
bcb - Load/set/clear/test/dump/store Android BCB fields
Usage:
bcb load <dev> <part> - load BCB from mmc <dev>:<part>
bcb set <field> <val> - set BCB <field> to <val>
bcb clear [<field>] - clear BCB <field> or all fields
bcb test <field> <op> <val> - test BCB <field> against <val>
bcb dump <field> - dump BCB <field>
bcb store - store BCB back to mmc
Legend:
<dev> - MMC device index containing the BCB partition
<part> - MMC partition index or name containing the BCB
<field> - one of {command,status,recovery,stage,reserved}
<op> - the binary operator used in 'bcb test':
'=' returns true if <val> matches the string stored in <field>
'~' returns true if <val> matches a subset of <field>'s string
<val> - string/text provided as input to bcb {set,test}
NOTE: any ':' character in <val> will be replaced by line feed
during 'bcb set' and used as separator by upper layers
=> bcb dump command
Error: Please, load BCB first!
>>> Users must specify mmc device and partition before any other call
=> bcb load 1 misc
=> bcb load 1 1
>>> The two calls are equivalent (assuming "misc" has index 1)
=> bcb dump command
00000000: 62 6f 6f 74 6f 6e 63 65 2d 73 68 65 6c 6c 00 72 bootonce-shell.r
00000010: 79 00 72 00 00 00 00 00 00 00 00 00 00 00 00 00 y.r.............
>>> The output is in binary/string format for convenience
>>> The output size matches the size of inspected BCB field
>>> (32 bytes in case of 'command')
=> bcb test command = bootonce-shell && echo true
true
=> bcb test command = bootonce-shell- && echo true
=> bcb test command = bootonce-shel && echo true
>>> The '=' operator returns 'true' on perfect match
=> bcb test command ~ bootonce-shel && echo true
true
=> bcb test command ~ bootonce-shell && echo true
true
>>> The '~' operator returns 'true' on substring match
=> bcb set command recovery
=> bcb dump command
00000000: 72 65 63 6f 76 65 72 79 00 73 68 65 6c 6c 00 72 recovery.shell.r
00000010: 79 00 72 00 00 00 00 00 00 00 00 00 00 00 00 00 y.r.............
>>> The new value is NULL-terminated and stored in the BCB field
=> bcb set recovery "msg1:msg2:msg3"
=> bcb dump recovery
00000040: 6d 73 67 31 0a 6d 73 67 32 0a 6d 73 67 33 00 00 msg1.msg2.msg3..
00000050: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
00000060: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
>>> --- snip ---
>>> Every ':' is replaced by line-feed '\n' (0xA). The latter is used
>>> as separator between individual commands by Android userspace
=> bcb store
>>> Flush/store the BCB structure to MMC
[1] https://android.googlesource.com/platform/bootable/recovery
[2] https://source.android.com/devices/bootloader
[3] https://patchwork.ozlabs.org/patch/746835/
("[U-Boot,5/6] Initial support for the Android Bootloader flow")
Signed-off-by: Eugeniu Rosca <erosca@de.adit-jv.com>
Change-Id: I0b994d6c7c4d3709ae6615924ac97995d6534a23
|
|
|
|
|
|
|
|
|
|
| |
$ git submodule init
$ git submodule update
$ ./make.sh
Signed-off-by: Dongjin Kim <tobetter@gmail.com>
Signed-off-by: Luke go <sangch.go@gmail.com>
Change-Id: If9e02fbf73b2f81f461e78ccb738b81bf6c65f2e
|
|
|
|
|
| |
Signed-off-by: Dongjin Kim <tobetter@gmail.com>
Change-Id: I01a6b35cd8d0ad95d2d216f6ca5d84dbd101cbcb
|
|
|
|
|
|
| |
This reverts commit 11a331d232dea79e25443776ebc3044cbe91d259.
Change-Id: Ida526013969076e5a0792883271ba021d2479608
|
|
|
|
|
| |
Signed-off-by: Dongjin Kim <tobetter@gmail.com>
Change-Id: I2a9b9a8f6b7b5349e24f6daea9ecad7d6d7260e2
|
|
|
|
|
|
|
|
| |
$ export CROSS_COMPILE=/path/of/your/toolchain/bin/aarch-linux-gnu-
$ ./make.sh
Signed-off-by: Dongjin Kim <tobetter@gmail.com>
Change-Id: I904624e252fea62bda0ec466ed8fbf63731455e2
|
|
|
|
|
| |
Change-Id: I17f7798cf7f51c10bd3527d095fac57c69538784
Signed-off-by: Jon Lin <jon.lin@rock-chips.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
1. use more generic way for psci/syscon-reboot sysreset, fixes compile error:
......
drivers/built-in.o: In function `sysreset_walk':
drivers/sysreset/sysreset-uclass.c:49: undefined reference to `_u_boot_list_2_driver_2_psci_sysreset'
drivers/built-in.o: In function `reboot':
drivers/sysreset/sysreset-uclass.c:102: undefined reference to `_u_boot_list_2_driver_2_sysreset_syscon_reboot'
......
2. use psci/syscon-reboot sysreset only in U-Boot proper, excluding SPL/TPL/USBPLUG.
Signed-off-by: Joseph Chen <chenjh@rock-chips.com>
Change-Id: I6908e7e2d7e5143643be3f0cab90cd6009cde254
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
On rk356x platform usbplug mode, we found it occurs SError
when rockusb download.
Issue dump:
.....
Serial: raw, 0xfe660000
dwmmc@fe2b0000: 1, dwmmc@fe2c0000: 2, sdhci@fe310000: 0
Bootdev: mmc 0
RKUSB: LUN 0, dev 0, hwpart 0, sector 0x0, count 0x3a3e000
\"Error" handler, esr 0xbe000011
* Reason: Exception from SError interrupt
* PC = 0000000000013c68
* LR = 0000000000010f7c
.....
fixes:
(617c1bec46 arm: v7/v8: Enable SError/Asynchronous external abort for TPL/SPL/U-Boot)
Signed-off-by: Joseph Chen <chenjh@rock-chips.com>
Change-Id: I6270bd0a8afdd998ac09242f21598cc8acd200ca
|
|
|
|
|
| |
Change-Id: I351704ef104742d50cb39997db2fda181cf866b6
Signed-off-by: Hisping Lin <hisping.lin@rock-chips.com>
|
|
|
|
|
| |
Change-Id: I9332a33b6412452c83170c7390126c4f4be8b9d3
Signed-off-by: Jon Lin <jon.lin@rock-chips.com>
|
|
|
|
|
|
|
|
|
|
|
| |
The rk3308b and rk3308bs nand flash id has two group iomuxs.
The maskrom only config the iomux register in the low address,
but the kernel routing to the another one, so configure it in
spl early to avoid losing the flash iomux.
Change-Id: I95381a8bad9a2f91decb89cd509a9b1977e90186
Signed-off-by: Jon Lin <jon.lin@rock-chips.com>
|
|
|
|
|
|
|
|
| |
Fix warning:
"[Firmware Bug]: Kernel image misaligned at boot, please fix your bootloader!"
Signed-off-by: Joseph Chen <chenjh@rock-chips.com>
Change-Id: Ib9e8b7924a413dbd289e37bd52140b8b995d09bd
|
|
|
|
|
| |
Signed-off-by: Joseph Chen <chenjh@rock-chips.com>
Change-Id: Id2735cd4224a0aa04fac2d208757e104ba8e82b0
|
|
|
|
|
| |
Signed-off-by: Joseph Chen <chenjh@rock-chips.com>
Change-Id: I19ee818cc821ddbfd9563c6539725070cb01c633
|
|
|
|
|
| |
Signed-off-by: Joseph Chen <chenjh@rock-chips.com>
Change-Id: Ie08aa77fa8f1c45538dde9e19ab42f71f0d44e8b
|
|
|
|
|
|
|
| |
The IDB header was changed from rk356x.
Signed-off-by: Joseph Chen <chenjh@rock-chips.com>
Change-Id: I8ac50adfe06da76f725b484681b76faeeb06d907
|