u-boot/board
Stephan Gerhold e2f82f93f8 board: stemmy: Copy atags for booting downstream/vendor kernel
The U-Boot "stemmy" board is mainly intended to simplify booting
mainline Linux on various smartphones from Samsung based on ST-Ericsson
Ux500. While the mainline kernel is working great, there are still some
features missing there. In particular, it is currently not possible to
charge the battery when using the mainline kernel.

This means that it is still necessary to boot the downstream/vendor
kernel from Samsung sometimes to charge the device. That kernel is
ancient, still uses board files + ATAGS instead of device trees and
relies on a strange very long kernel command line hardcoded in the
Samsung bootloader.

Actually, since mainline is booted with device trees there is a very
simple way to make the old downstream kernel work as well: We can
simply take most of the ATAGS passed to U-Boot from the Samsung
bootloader and copy them as-is when booting a kernel without device
tree. That way the long command line and other needed ATAGS are copied
as-is without having to bother with them.

The only exception is the ATAG_INITRD - since the initrd is loaded
by U-Boot, the atag for that should be generated in U-Boot so it points
to the correct address. All other ATAGS are copied as-is and not
generated in U-Boot.

Also use the chance and provide a serial# for U-Boot by parsing the
ATAG_SERIAL that is also passed by the Samsung bootloader.

Signed-off-by: Stephan Gerhold <stephan@gerhold.net>
Reviewed-by: Linus Walleij <linus.walleij@linaro.org>
2021-07-14 16:48:12 -04:00
..
abilis/tb100 reset: Remove addr parameter from reset_cpu() 2021-03-02 14:03:02 -05:00
advantech arm: Remove dms-ba16 board 2021-04-10 07:57:29 -04:00
alliedtelesis ddr: marvell: a38x: add support for twin-die combined memory device 2021-02-26 10:22:29 +01:00
altera Merge branch '2021.04-rc' of https://github.com/lftan/u-boot 2021-01-15 07:55:11 -05:00
amarula/vyasa-rk3288 common: Move serial functions out of common.h 2019-12-02 18:23:11 -05:00
amlogic arm: meson: remove static ethernet link setup 2021-04-06 11:10:29 +02:00
AndesTech riscv: ae350: Switch to use binman to generate u-boot.itb 2021-05-19 17:01:51 +08:00
Arcturus/ucp1020 common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
aries/mcvevk arm: socfpga: Re-add support for Aries MCV SoM and MCVEV[KP] board 2019-05-14 19:52:39 +02:00
aristainetos common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
armadeus/opos6uldev arm: Remove apf27 board 2021-04-10 07:59:35 -04:00
armltd ARM: integrator: Drop PCI support 2021-07-06 14:07:36 -04:00
aspeed configs: aspeed: Add defconfig for AST2600 EVB 2021-01-18 15:23:06 -05:00
astro/mcf5373l common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
atmark-techno/armadillo-800eva reset: Remove addr parameter from reset_cpu() 2021-03-02 14:03:02 -05:00
atmel arm: Remove at91rm9200ek boards 2021-07-07 22:22:42 -04:00
avionic-design common: Drop log.h from common header 2020-05-18 21:19:18 -04:00
beacon ARM: rmobile: Add missing rcar-common/common.c to Beacon RZG2M kit 2021-05-12 21:36:27 +02:00
beckhoff/mx53cx9020 common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
birdland/bav335x arm: Remove bav335x board 2020-07-09 20:58:05 +05:30
bitmain/antminer_s9 xilinx: Introduce board_late_init_xilinx() 2020-04-27 13:57:17 +02:00
bluewater common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
bosch bootstage: Eliminate when not enabled 2021-07-07 10:17:54 -04:00
boundary/nitrogen6x common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
broadcom treewide: Convert macro and uses of __section(foo) to __section("foo") 2021-05-24 14:21:30 -04:00
bticino/mamoj common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
buffalo/lsxl bootstage: Eliminate when not enabled 2021-07-07 10:17:54 -04:00
BuR brxre1: disable video after DM_VIDEO conversion deadline 2021-06-05 10:40:47 +02:00
BuS/eb_cpu5282 eb_cpu5282: Declare diplay_width / display_height as externs 2021-07-07 10:17:54 -04:00
cadence/xtfpga dm: Rename U_BOOT_DEVICE() to U_BOOT_DRVINFO() 2021-01-05 12:26:35 -07:00
calao/usb_a9263 common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
CarMediaLab/flea3 common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
cavium/thunderx reset: Remove addr parameter from reset_cpu() 2021-03-02 14:03:02 -05:00
cei/cei-tk1-som SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
chipspark/popmetal_rk3288 common: Move some board functions out of common.h 2019-12-02 18:25:21 -05:00
cloudengines/pogo_e02 common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
cobra5272 common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
compal/paz00 common: Drop log.h from common header 2020-05-18 21:19:18 -04:00
compulab arm: imx8m: add support for Compulab iot-gate-imx8 (imx8mm-cl-iot-gate) 2021-05-02 12:46:54 +02:00
comtrend SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
congatec imx: support for conga-QMX8 board 2021-06-09 13:34:09 +02:00
coreboot x86: Make coreboot sysinfo available to any x86 board 2021-03-27 13:59:37 +13:00
cortina reset: Remove addr parameter from reset_cpu() 2021-03-02 14:03:02 -05:00
cssi common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
CZ.NIC arm: mvebu: turris_{omnia, mox}: ensure running bootcmd_rescue always works 2021-06-15 07:21:54 +02:00
d-link/dns325 common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
davinci/da8xxevm common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
devboards/dbm-soc1 SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
dfi x86: dfi: dfi-bt700: Remove dead code 2020-09-01 13:38:39 +08:00
dhelectronics board: stm32mp1: correct the property name for eth 2021-06-18 10:09:41 +02:00
ea lpc32xx: ea-lpc3250devkitv2: enable i2c (DM) 2021-07-06 14:12:15 -04:00
ebv/socrates arm: socfpga: socrates: make rtc work 2019-04-25 00:00:49 +02:00
eets/pdu001 common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
efi x86: efi: efi-x86_payload: Remove dead code 2020-09-01 13:38:39 +08:00
egnite/ethernut5 common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
elgin/elgin_rv1108 common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
embest/mx6boards ARM: embestmx6boards: convert mars/riot boards to DM_ETH 2021-04-08 20:29:54 +02:00
emulation efi_loader: capsule: Remove the check for capsule_authentication_enabled environment variable 2021-05-18 12:36:12 +02:00
engicam board: imx8mm: Add Engicam i.Core MX8M Mini C.TOUCH 2.0 2021-05-02 12:46:54 +02:00
esd/meesc ppc: Remove caddy2 / vme8349 boards 2021-07-07 19:52:23 -04:00
firefly common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
freescale ppc: Remove T4160RDB board 2021-07-07 19:52:24 -04:00
friendlyarm dm: i2c: use CONFIG_IS_ENABLED macro for DM_I2C/DM_I2C_GPIO 2021-02-21 06:08:00 +01:00
gardena common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
gateworks imx: ventana: enable dm support for PCI and FEC ethernet 2021-06-09 13:33:35 +02:00
gdsys ppc: Remove controlcenterd boards 2021-04-10 08:04:55 -04:00
ge board: ge: bx50v3: fix crystal bit 2021-05-02 12:46:54 +02:00
geekbuying/geekbox rockchip: rk3368: Migrate to use common board file 2019-07-29 10:27:48 +08:00
google x86: coral: Show memory config and SKU ID on startup 2021-03-27 16:26:48 +13:00
grinn common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
hardkernel/odroid_go2 rockchip: board: add Hardkernel Odroid Go2 board 2020-07-22 20:21:23 +08:00
highbank arm: highbank: Update maintainership 2021-04-20 07:31:12 -04:00
hisilicon reset: Remove addr parameter from reset_cpu() 2021-03-02 14:03:02 -05:00
hoperun/hihope-rzg2 arm: rmobile: Add HopeRun HiHope RZ/G2H board support 2021-03-16 20:09:29 +01:00
huawei/hg556a SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
ids/ids8313 common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
imgtec common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
intel Merge branch 'v2021.04-rc4' of https://github.com/lftan/u-boot 2021-03-08 07:41:40 -05:00
inversepath/usbarmory common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
iomega/iconnect common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
is1 SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
isee common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
k+p bootstage: Eliminate when not enabled 2021-07-07 10:17:54 -04:00
keymile ppc: Remove kmcoge4 board 2021-07-07 19:52:24 -04:00
kmc/kzm9g reset: Remove addr parameter from reset_cpu() 2021-03-02 14:03:02 -05:00
kobol/helios4 ddr: marvell: a38x: add support for twin-die combined memory device 2021-02-26 10:22:29 +01:00
kontron/sl28 board: sl28: add config to enable console output on SER0 2021-04-15 14:22:22 +05:30
kosagi/novena common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
l+g/vinco common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
LaCie common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
lego/ev3 Merge branch '2021-02-02-drop-asm_global_data-when-unused' 2021-02-15 10:16:45 -05:00
lg/sniper sniper: Add build guards around MUSB support code 2021-07-07 22:22:42 -04:00
liebherr reset: Remove addr parameter from reset_cpu() 2021-03-02 14:03:02 -05:00
logicpd common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
Marvell octeontx: do not require cavium BDK node to be present 2021-07-08 16:40:52 +02:00
maxbcm common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
mediatek board: Add MT8183 pumpkin board support 2021-03-20 16:24:27 -04:00
menlo/m53menlo common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
microchip common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
mikrotik/crs3xx-98dx3236 common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
mqmaker/miqi_rk3288 rockchip: board: rk3288: remove board_boot_order() 2019-07-20 23:59:44 +08:00
mscc common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
myir/mys_6ulx common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
netgear common: Drop linux/bitops.h from common header 2020-05-18 21:19:23 -04:00
nokia/rx51 Nokia RX-51: Enable CONFIG_WDT to remove deprecation warning 2021-06-09 22:23:44 +05:30
novtech/meerkat96 common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
nvidia Tegra: remove e2220-1170 board 2021-04-12 17:17:11 -04:00
olimex/mx23_olinuxino mx23_olinuxino: convert MMC to driver model 2021-04-08 23:59:50 +02:00
opalkelly/zynq arm: zynq: Remove low level UART setting 2020-01-14 09:05:53 +01:00
openpiton/riscv64 riscv: dts: add OpenPiton RISC-V board dts support 2021-07-07 20:34:02 +08:00
out4/o4-imx6ull-nano Add EV-iMX280-NANO-X-MB board 2021-06-09 13:32:49 +02:00
phytec arm: Remove pfla02 board 2021-04-10 08:03:30 -04:00
phytium/durian reset: Remove addr parameter from reset_cpu() 2021-03-02 14:03:02 -05:00
pine64 rockchip: Add initial support for the Pinebook Pro laptop from Pine64. 2020-05-31 22:22:07 +08:00
ppcag/bg0900 common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
qca common: Drop init.h from common header 2020-05-18 17:33:33 -04:00
qualcomm reset: Remove addr parameter from reset_cpu() 2021-03-02 14:03:02 -05:00
radxa SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
raidsonic/ib62x0 common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
raspberrypi/rpi rpi: Add identifier for the new CM4 2021-02-18 11:56:25 +01:00
renesas ARM: renesas: Add GICv3 initialization for V3U Falcon 2021-06-24 20:22:18 +02:00
rockchip board: rockchip: Add rk3568 evb support 2021-06-18 14:36:24 +08:00
ronetix First set of u-boot-atmel features for the 2021.10 cycle 2021-06-17 11:46:44 -04:00
sagem/f@st1704 SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
samsung ARM: fix LTO for rockchip and samsung 2021-05-24 14:21:30 -04:00
sandbox pytest: add sandbox test for "extension" command 2021-05-13 13:09:09 -04:00
Seagate bootstage: Eliminate when not enabled 2021-07-07 10:17:54 -04:00
seeed imx: Add SeeedStudio NPI-IMX6ULL Support 2021-06-09 13:34:18 +02:00
sfr/nb4_ser SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
siemens treewide: Convert macro and uses of __section(foo) to __section("foo") 2021-05-24 14:21:30 -04:00
sifive board: sifive: support spl multi-dtb on unmatched board 2021-07-06 20:24:26 +08:00
silinux/ek874 board: silinux: Enable recovery SPL for EK874 board 2021-03-16 20:09:30 +01:00
sipeed/maix k210: Don't imply CCF 2021-06-17 09:40:58 +08:00
socionext/developerbox board: synquacer: Add DeveloperBox 96boards EE support 2021-07-06 14:11:50 -04:00
socrates video: remove unused include/mb862xx.h 2021-02-19 22:36:56 +01:00
softing common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
solidrun MAINTAINERS: Use my personal e-mail address 2021-04-08 20:29:53 +02:00
somlabs/visionsom-6ull common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
sr1500 common: Drop linux/delay.h from common header 2020-05-18 21:19:23 -04:00
st bootstage: Eliminate when not enabled 2021-07-07 10:17:54 -04:00
ste/stemmy board: stemmy: Copy atags for booting downstream/vendor kernel 2021-07-14 16:48:12 -04:00
storopack/smegw01 mx7d: Add Storopack's SMEGW01 board 2021-06-09 13:34:38 +02:00
sunxi sunxi: board: Add H616 MMC2 pins 2021-07-10 01:22:09 +01:00
Synology arm: mvebu: ds414: Auto-populate env if appropriate 2021-04-08 08:50:41 +02:00
synopsys reset: Remove addr parameter from reset_cpu() 2021-03-02 14:03:02 -05:00
sysam common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
syteco/zmx25 common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
tbs/tbs2910 common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
tcl/sl50 common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
technexion pico-imx6: README: Fix the boot mode settings URL 2021-06-09 13:33:45 +02:00
terasic SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
theadorable Merge branch '2021-02-02-drop-asm_global_data-when-unused' 2021-02-15 10:16:45 -05:00
theobroma-systems rockchip: rk3399-puma: Increase environment size to 16 kiB. 2021-03-30 16:53:00 +08:00
ti board: ti: j72xx: README: update build instructions and image formats 2021-06-11 16:34:52 +05:30
timll lpc32xx: Kconfig: switch to CONFIG_CONS_INDEX 2021-07-06 14:11:50 -04:00
topic/zynq board: topic-miami: Set FCLK1 to 150MHz 2020-06-24 13:11:08 +02:00
toradex toradex: configblock: fix module revision in config block 2021-04-20 07:31:12 -04:00
tplink/wdr4300 common: Drop linux/bitops.h from common header 2020-05-18 21:19:23 -04:00
tqc/tqma6 ppc: Remove TQM834x board 2021-07-07 19:52:23 -04:00
udoo ARM: imx: udoo_neo: Convert to ethernet DM 2021-04-20 13:31:35 -04:00
vamrs/rock960_rk3399 rockchip: Remove ARCH= references from documentation 2020-06-02 17:27:04 -04:00
variscite/dart_6ul common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
varisys/common ppc: Remove Cyrus_P5020 and P5040 boards 2021-04-10 08:05:07 -04:00
vocore/vocore2 mips: Add support for SoM "VoCore2". 2020-04-27 20:30:14 +02:00
vscom/baltos common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
wandboard MAINTAINERS: Use my personal e-mail address 2021-04-08 20:29:53 +02:00
warp board: warp: add power_max77696_init() function 2021-04-12 14:24:33 -04:00
warp7 MAINTAINERS: Use my personal e-mail address 2021-04-08 20:29:53 +02:00
work-microwave/work_92105 lpc32xx: Kconfig: switch to CONFIG_CONS_INDEX 2021-07-06 14:11:50 -04:00
xen/xenguest_arm64 reset: Remove addr parameter from reset_cpu() 2021-03-02 14:03:02 -05:00
xes/common ppc: Remove xpedite boards 2021-07-07 19:52:24 -04:00
xilinx xilinx: zynqmp: Add support for 67dr silicon 2021-07-01 09:25:06 +02:00
zyxel/nsa310s Revert "arm: Remove nsa310s board" 2021-07-07 22:55:41 -04:00