rockchip: rk3188 fixed early stage and radxarock board
Subsystems (3)
Heiko Stuebner
maintainercover rockchip: rk3188 fixed early stage and radxarock board
Applies on top of current rockchip master branch and needs Kever's early_init patch for rk3188 and rk3399.
After this one series, there is of course still
rockchip: rk3188: fixups and armclk speedup
series and
rockchip: rk3188: enable remap function
patch open.
changes compared to the original patches:
- made it apply on top of current rockchip master
- arranged in a way to not create build errors
- so adapted the TPL_LIBGENERIC patch to be in front of the rock board addition
Heiko Stuebner (3):
rockchip: rk3188: enable TPL_LIBGENERIC for generic memset
rockchip: rk3188: Add Radxa Rock board
rockchip: rk3188: add README.rockchip paragraph describing sd boot
arch/arm/dts/Makefile | 1 + arch/arm/dts/rk3188-radxarock.dts | 382 ++++++++++++++++++++++++++++++++++ arch/arm/mach-rockchip/rk3188/Kconfig | 14 ++ board/radxa/rock/Kconfig | 15 ++ board/radxa/rock/MAINTAINERS | 6 + board/radxa/rock/Makefile | 7 + board/radxa/rock/rock.c | 7 + configs/rock_defconfig | 58 ++++++ doc/README.rockchip | 26 +++ include/configs/rock.h | 30 +++ 10 files changed, 546 insertions(+) create mode 100644 arch/arm/dts/rk3188-radxarock.dts create mode 100644 board/radxa/rock/Kconfig create mode 100644 board/radxa/rock/MAINTAINERS create mode 100644 board/radxa/rock/Makefile create mode 100644 board/radxa/rock/rock.c create mode 100644 configs/rock_defconfig create mode 100644 include/configs/rock.h
Signature · 1 line
2.11.0
Heiko Stuebner
maintainerPATCH 1/3 rockchip: rk3188: enable TPL_LIBGENERIC for generic memset
Commit c67c8c604b6c ("board_init.c: Always use memset()") dropped the naive memset alternative from board_init_f_init_reserve.
So activate CONFIG_TPL_LIBGENERIC for that common memset implementation. We cannot use the ARCH-specific memset, as that would incur 200bytes of additional TPL size, space we do not have.
--- arch/arm/mach-rockchip/rk3188/Kconfig | 3 +++ 1 file changed, 3 insertions(+)
arch/arm/mach-rockchip/rk3188/Kconfig +3 -0
@@ -18,6 +18,9 @@ config SPL_SERIAL_SUPPORT config TPL_LIBCOMMON_SUPPORT default y +config TPL_LIBGENERIC_SUPPORT + default y + config TPL_SERIAL_SUPPORT default y
Signature · 1 line
2.11.0
PATCH 1/3 rockchip: rk3188: enable TPL_LIBGENERIC for generic memset
Quoted 11 lines · Heiko Stuebner
Commit
c67c8c604b6c("board_init.c: Always usememset()") dropped the naive memset alternative fromboard_init_f_init_reserve.
So activateCONFIG_TPL_LIBGENERICfor that common memset implementation. We cannot use the ARCH-specific memset, as that would incur 200bytes of additional TPL size, space we do not have.Signed-off-by Heiko Stuebner <[email protected]>--- arch/arm/mach-rockchip/rk3188/Kconfig | 3 +++ 1 file changed, 3 insertions(+)
Applied to u-boot-rockchip, thanks!
Heiko Stuebner
maintainerPATCH 2/3 rockchip: rk3188: Add Radxa Rock board
In reply to Heiko StuebnerThe Rock is a RK3188 based single board computer by Radxa. Currently it still relies on the proprietary DDR init and cannot use the generic SPL, but at least is able to boot a linux kernel and system up to a regular login prompt.
--- arch/arm/dts/Makefile | 1 + arch/arm/dts/rk3188-radxarock.dts | 382 ++++++++++++++++++++++++++++++++++ arch/arm/mach-rockchip/rk3188/Kconfig | 11 + board/radxa/rock/Kconfig | 15 ++ board/radxa/rock/MAINTAINERS | 6 + board/radxa/rock/Makefile | 7 + board/radxa/rock/rock.c | 7 + configs/rock_defconfig | 58 ++++++ include/configs/rock.h | 30 +++ 9 files changed, 517 insertions(+) create mode 100644 arch/arm/dts/rk3188-radxarock.dts create mode 100644 board/radxa/rock/Kconfig create mode 100644 board/radxa/rock/MAINTAINERS create mode 100644 board/radxa/rock/Makefile create mode 100644 board/radxa/rock/rock.c create mode 100644 configs/rock_defconfig create mode 100644 include/configs/rock.h
arch/arm/dts/Makefile +1 -0
@@ -29,6 +29,7 @@ dtb-$(CONFIG_EXYNOS5) += exynos5250-arndale.dtb \ dtb-$(CONFIG_EXYNOS7420) += exynos7420-espresso7420.dtb dtb-$(CONFIG_ARCH_ROCKCHIP) += \ rk3036-sdk.dtb \ + rk3188-radxarock.dtb \ rk3288-firefly.dtb \ rk3288-veyron-jerry.dtb \ rk3288-veyron-mickey.dtb \
arch/arm/dts/rk3188-radxarock.dts new file +382 -0
382 lines not on this page · raw message
arch/arm/mach-rockchip/rk3188/Kconfig +11 -0
@@ -1,5 +1,14 @@ if ROCKCHIP_RK3188 +config TARGET_ROCK + bool "Radxa Rock" + help + Rock is a RK3188-based development board with 2 USB and 1 otg + ports, HDMI, TV-out, micro-SD card, audio, WiFi and 100MBit + Ethernet, It also includes on-board nand and 1GB of SDRAM. + Expansion connectors provide access to display pins, I2C, SPI, + UART and GPIOs. + config SYS_SOC default "rockchip"
@@ -24,4 +33,6 @@ config TPL_LIBGENERIC_SUPPORT config TPL_SERIAL_SUPPORT default y +source "board/radxa/rock/Kconfig" + endif
board/radxa/rock/Kconfig new file +15 -0
@@ -0,0 +1,15 @@ +if TARGET_ROCK + +config SYS_BOARD + default "rock" + +config SYS_VENDOR + default "radxa" + +config SYS_CONFIG_NAME + default "rock" + +config BOARD_SPECIFIC_OPTIONS # dummy + def_bool y + +endif
board/radxa/rock/MAINTAINERS new file +6 -0
@@ -0,0 +1,6 @@ +RADXA_ROCK +M: Heiko Stuebner <[email protected]> +S: Maintained +F: board/radxa/rock +F: include/configs/rock.h +F: configs/rock_defconfig
board/radxa/rock/Makefile new file +7 -0
@@ -0,0 +1,7 @@ +# +# (C) Copyright 2015 Heiko Stuebner +# +# SPDX-License-Identifier: GPL-2.0+ +# + +obj-y += rock.o
board/radxa/rock/rock.c new file +7 -0
@@ -0,0 +1,7 @@ +/* +* (C) Copyright 2015 Google, Inc +* +* SPDX-License-Identifier: GPL-2.0+ +*/ + +#include <common.h>
configs/rock_defconfig new file +58 -0
58 lines not on this page · raw message
include/configs/rock.h new file +30 -0
@@ -0,0 +1,30 @@ +/* +* (C) Copyright 2015 Google, Inc +* +* SPDX-License-Identifier: GPL-2.0+ +*/ + +#ifndef __CONFIG_H +#define __CONFIG_H + +#define ROCKCHIP_DEVICE_SETTINGS +#include <configs/rk3188_common.h> + +#define CONFIG_ENV_IS_IN_MMC +#define CONFIG_SYS_MMC_ENV_DEV 0 + +#ifdef CONFIG_ROCKCHIP_SPL_BACK_TO_BROM +/* SPL @ 32k for 34k +* u-boot directly after @ 68k for 400k or so +* ENV @ 992k +*/ +#define CONFIG_ENV_OFFSET ((1024-32) * 1024) +#else +/* SPL @ 32k for ~36k +* ENV @ 96k +* u-boot @ 128K +*/ +#define CONFIG_ENV_OFFSET (96 * 1024) +#endif + +#endif
Signature · 1 line
2.11.0
PATCH 2/3 rockchip: rk3188: Add Radxa Rock board
Hi,
Quoted 18 lines · Heiko Stuebner
The Rock is a RK3188 based single board computer by Radxa. Currently it still relies on the proprietary DDR init and cannot use the generic SPL, but at least is able to boot a linux kernel and system up to a regular login prompt.
Signed-off-by Heiko Stuebner <[email protected]>Reviewed-by Simon Glass <[email protected]>Tested-by Kever Yang <[email protected]>--- arch/arm/dts/Makefile | 1 + arch/arm/dts/rk3188-radxarock.dts | 382 ++++++++++++++++++++++++++++++++++ arch/arm/mach-rockchip/rk3188/Kconfig | 11 + board/radxa/rock/Kconfig | 15 ++ board/radxa/rock/MAINTAINERS | 6 + board/radxa/rock/Makefile | 7 + board/radxa/rock/rock.c | 7 + configs/rock_defconfig | 58 ++++++ include/configs/rock.h | 30 +++
Quoted 8 lines
9 files changed, 517 insertions(+) create mode 100644 arch/arm/dts/rk3188-radxarock.dts create mode 100644 board/radxa/rock/Kconfig create mode 100644 board/radxa/rock/MAINTAINERS create mode 100644 board/radxa/rock/Makefile create mode 100644 board/radxa/rock/rock.c create mode 100644 configs/rock_defconfig create mode 100644 include/configs/rock.h
I am still having trouble applying this patch. I get build errors:
arm: + rock
+arch/arm/Makefile:22: CONFIG_CPU_V7 -march=armv7-a +make[2]: *** No rule to make target 'dts/dt.dtb', needed by 'tpl/u-boot-tpl.dtb'. Stop.
+make[1]: *** [tpl/u-boot-tpl.bin] Error 2
+make: *** [sub-make] Error 2
0 0 1 /1 rock
Also there seems to be a duplicate config:
arm: + rock
+In file included from include/configs/rock.h:11:0,
+ from include/config.h:5, + from include/common.h:21, + from arch/arm/lib/asm-offsets.c:15:
+ #define CONFIG_SYS_THUMB_BUILD
+ ^
+ from lib/asm-offsets.c:15:
+In file included from include/linux/kconfig.h:4:0,
+ from <command-line>:0:+include/generated/autoconf.h:10:0: note: this is the location of the previous definition
+ #define CONFIG_SYS_THUMB_BUILD 1
What toolchain are you using to build this?
Regards,
Simon
Heiko Stuebner
maintainerPATCH 2/3 rockchip: rk3188: Add Radxa Rock board
Hi Simon,
Am Samstag, 25. März 2017, 20:39:08 CEST schrieb Simon Glass:
Quoted 51 lines · Heiko Stuebner
Quoted 18 lines
The Rock is a RK3188 based single board computer by Radxa. Currently it still relies on the proprietary DDR init and cannot use the generic SPL, but at least is able to boot a linux kernel and system up to a regular login prompt.
Signed-off-by Heiko Stuebner <[email protected]>Reviewed-by Simon Glass <[email protected]>Tested-by Kever Yang <[email protected]>--- arch/arm/dts/Makefile | 1 + arch/arm/dts/rk3188-radxarock.dts | 382 ++++++++++++++++++++++++++++++++++ arch/arm/mach-rockchip/rk3188/Kconfig | 11 + board/radxa/rock/Kconfig | 15 ++ board/radxa/rock/MAINTAINERS | 6 + board/radxa/rock/Makefile | 7 + board/radxa/rock/rock.c | 7 + configs/rock_defconfig | 58 ++++++ include/configs/rock.h | 30 +++Quoted 8 lines
9 files changed, 517 insertions(+) create mode 100644 arch/arm/dts/rk3188-radxarock.dts create mode 100644 board/radxa/rock/Kconfig create mode 100644 board/radxa/rock/MAINTAINERS create mode 100644 board/radxa/rock/Makefile create mode 100644 board/radxa/rock/rock.c create mode 100644 configs/rock_defconfig create mode 100644 include/configs/rock.hI am still having trouble applying this patch. I get build errors:
arm: + rock
(quoted diff) +2
-0+arch/arm/Makefile:22: CONFIG_CPU_V7 -march=armv7-a +make[2]: *** No rule to make target 'dts/dt.dtb', needed by'tpl/u-boot-tpl.dtb'. Stop.
(quoted diff) +2
-0+make[1]: *** [tpl/u-boot-tpl.bin] Error 2 +make: *** [sub-make] Error 2 0 0 1 /1 rockAlso there seems to be a duplicate config:
arm: + rock
(quoted diff) +10
-0+In file included from include/configs/rock.h:11:0, + from include/config.h:5, + from include/common.h:21, + from arch/arm/lib/asm-offsets.c:15: + #define CONFIG_SYS_THUMB_BUILD + ^ + from lib/asm-offsets.c:15: +In file included from include/linux/kconfig.h:4:0, + from <command-line>:0: +include/generated/autoconf.h:10:0: note: this is the location of the
Quoted 2 lines
previous definition
+ #defineCONFIG_SYS_THUMB_BUILD1
looks like this got run over by another Kconfig migration on march-18. New patches (migration + rock board) coming up shortly.
Heiko
PATCH 2/3 rockchip: rk3188: Add Radxa Rock board
Hi Heiko,
Quoted 43 lines · Heiko Stuebner
Hi Simon,
Am Samstag, 25. März 2017, 20:39:08 CEST schrieb Simon Glass:
Quoted 40 lines · Heiko Stuebner
Quoted 18 lines
The Rock is a RK3188 based single board computer by Radxa. Currently it still relies on the proprietary DDR init and cannot use the generic SPL, but at least is able to boot a linux kernel and system up to a regular login prompt.
Signed-off-by Heiko Stuebner <[email protected]>Reviewed-by Simon Glass <[email protected]>Tested-by Kever Yang <[email protected]>--- arch/arm/dts/Makefile | 1 + arch/arm/dts/rk3188-radxarock.dts | 382 ++++++++++++++++++++++++++++++++++ arch/arm/mach-rockchip/rk3188/Kconfig | 11 + board/radxa/rock/Kconfig | 15 ++ board/radxa/rock/MAINTAINERS | 6 + board/radxa/rock/Makefile | 7 + board/radxa/rock/rock.c | 7 + configs/rock_defconfig | 58 ++++++ include/configs/rock.h | 30 +++Quoted 8 lines
9 files changed, 517 insertions(+) create mode 100644 arch/arm/dts/rk3188-radxarock.dts create mode 100644 board/radxa/rock/Kconfig create mode 100644 board/radxa/rock/MAINTAINERS create mode 100644 board/radxa/rock/Makefile create mode 100644 board/radxa/rock/rock.c create mode 100644 configs/rock_defconfig create mode 100644 include/configs/rock.hI am still having trouble applying this patch. I get build errors:
arm: + rock
(quoted diff) +2
-0+arch/arm/Makefile:22: CONFIG_CPU_V7 -march=armv7-a +make[2]: *** No rule to make target 'dts/dt.dtb', needed by'tpl/u-boot-tpl.dtb'. Stop.
(quoted diff) +2
-0+make[1]: *** [tpl/u-boot-tpl.bin] Error 2 +make: *** [sub-make] Error 2 0 0 1 /1 rockAlso there seems to be a duplicate config:
Quoted 16 lines
Quoted 11 lines
arm: + rock
(quoted diff) +10
-0+In file included from include/configs/rock.h:11:0, + from include/config.h:5, + from include/common.h:21, + from arch/arm/lib/asm-offsets.c:15: + #define CONFIG_SYS_THUMB_BUILD + ^ + from lib/asm-offsets.c:15: +In file included from include/linux/kconfig.h:4:0, + from <command-line>:0: +include/generated/autoconf.h:10:0: note: this is the location of theQuoted 2 lines
previous definition
+ #defineCONFIG_SYS_THUMB_BUILD1looks like this got run over by another
Kconfigmigration on march-18. New patches (migration + rock board) coming up shortly.
Thanks - what toolchain are you using to test this?
Regards,
Simon
PATCH 2/3 rockchip: rk3188: Add Radxa Rock board
Hi Heiko,
Quoted 63 lines · Simon Glass
Hi Heiko,
Quoted 43 lines · Heiko Stuebner
Hi Simon,
Am Samstag, 25. März 2017, 20:39:08 CEST schrieb Simon Glass:
Quoted 40 lines · Heiko Stuebner
Quoted 18 lines
The Rock is a RK3188 based single board computer by Radxa. Currently it still relies on the proprietary DDR init and cannot use the generic SPL, but at least is able to boot a linux kernel and system up to a regular login prompt.
Signed-off-by Heiko Stuebner <[email protected]>Reviewed-by Simon Glass <[email protected]>Tested-by Kever Yang <[email protected]>--- arch/arm/dts/Makefile | 1 + arch/arm/dts/rk3188-radxarock.dts | 382 ++++++++++++++++++++++++++++++++++ arch/arm/mach-rockchip/rk3188/Kconfig | 11 + board/radxa/rock/Kconfig | 15 ++ board/radxa/rock/MAINTAINERS | 6 + board/radxa/rock/Makefile | 7 + board/radxa/rock/rock.c | 7 + configs/rock_defconfig | 58 ++++++ include/configs/rock.h | 30 +++Quoted 8 lines
9 files changed, 517 insertions(+) create mode 100644 arch/arm/dts/rk3188-radxarock.dts create mode 100644 board/radxa/rock/Kconfig create mode 100644 board/radxa/rock/MAINTAINERS create mode 100644 board/radxa/rock/Makefile create mode 100644 board/radxa/rock/rock.c create mode 100644 configs/rock_defconfig create mode 100644 include/configs/rock.hI am still having trouble applying this patch. I get build errors:
arm: + rock
(quoted diff) +2
-0+arch/arm/Makefile:22: CONFIG_CPU_V7 -march=armv7-a +make[2]: *** No rule to make target 'dts/dt.dtb', needed by'tpl/u-boot-tpl.dtb'. Stop.
(quoted diff) +2
-0+make[1]: *** [tpl/u-boot-tpl.bin] Error 2 +make: *** [sub-make] Error 2 0 0 1 /1 rockAlso there seems to be a duplicate config:
Quoted 16 lines
Quoted 11 lines
arm: + rock
(quoted diff) +10
-0+In file included from include/configs/rock.h:11:0, + from include/config.h:5, + from include/common.h:21, + from arch/arm/lib/asm-offsets.c:15: + #define CONFIG_SYS_THUMB_BUILD + ^ + from lib/asm-offsets.c:15: +In file included from include/linux/kconfig.h:4:0, + from <command-line>:0: +include/generated/autoconf.h:10:0: note: this is the location of theQuoted 2 lines
previous definition
+ #defineCONFIG_SYS_THUMB_BUILD1looks like this got run over by another
Kconfigmigration on march-18. New patches (migration + rock board) coming up shortly.
Quoted 1 line
Thanks - what toolchain are you using to test this?
Also I am still getting this error:
buildman rock$
boards.cfg is up to date. Nothing to do.
Building current source for 1 boards (1 thread, 8 jobs per thread)
arm: + rock
+make[2]: *** No rule to make target 'dts/dt.dtb', needed by 'tpl/u-boot-tpl.dtb'. Stop.
+make[1]: *** [tpl/u-boot-tpl.bin] Error 2
+make: *** [sub-make] Error 2
0 0 1 /1 rock
Regards,
Simon
Heiko Stuebner
maintainerPATCH 2/3 rockchip: rk3188: Add Radxa Rock board
Am Sonntag, 26. März 2017, 14:00:51 CEST schrieb Simon Glass:
Quoted 76 lines
Hi Heiko,
Quoted 63 lines · Simon Glass
Hi Heiko,
Quoted 43 lines · Heiko Stuebner
Hi Simon,
Am Samstag, 25. März 2017, 20:39:08 CEST schrieb Simon Glass:
Quoted 40 lines · Heiko Stuebner
Quoted 18 lines
The Rock is a RK3188 based single board computer by Radxa. Currently it still relies on the proprietary DDR init and cannot use the generic SPL, but at least is able to boot a linux kernel and system up to a regular login prompt.
Signed-off-by Heiko Stuebner <[email protected]>Reviewed-by Simon Glass <[email protected]>Tested-by Kever Yang <[email protected]>--- arch/arm/dts/Makefile | 1 + arch/arm/dts/rk3188-radxarock.dts | 382 ++++++++++++++++++++++++++++++++++ arch/arm/mach-rockchip/rk3188/Kconfig | 11 + board/radxa/rock/Kconfig | 15 ++ board/radxa/rock/MAINTAINERS | 6 + board/radxa/rock/Makefile | 7 + board/radxa/rock/rock.c | 7 + configs/rock_defconfig | 58 ++++++ include/configs/rock.h | 30 +++Quoted 8 lines
9 files changed, 517 insertions(+) create mode 100644 arch/arm/dts/rk3188-radxarock.dts create mode 100644 board/radxa/rock/Kconfig create mode 100644 board/radxa/rock/MAINTAINERS create mode 100644 board/radxa/rock/Makefile create mode 100644 board/radxa/rock/rock.c create mode 100644 configs/rock_defconfig create mode 100644 include/configs/rock.hI am still having trouble applying this patch. I get build errors:
arm: + rock
(quoted diff) +2
-0+arch/arm/Makefile:22: CONFIG_CPU_V7 -march=armv7-a +make[2]: *** No rule to make target 'dts/dt.dtb', needed by'tpl/u-boot-tpl.dtb'. Stop.
(quoted diff) +2
-0+make[1]: *** [tpl/u-boot-tpl.bin] Error 2 +make: *** [sub-make] Error 2 0 0 1 /1 rockAlso there seems to be a duplicate config:
Quoted 16 lines
Quoted 11 lines
arm: + rock
(quoted diff) +10
-0+In file included from include/configs/rock.h:11:0, + from include/config.h:5, + from include/common.h:21, + from arch/arm/lib/asm-offsets.c:15: + #define CONFIG_SYS_THUMB_BUILD + ^ + from lib/asm-offsets.c:15: +In file included from include/linux/kconfig.h:4:0, + from <command-line>:0: +include/generated/autoconf.h:10:0: note: this is the location of theQuoted 2 lines
previous definition
+ #defineCONFIG_SYS_THUMB_BUILD1looks like this got run over by another
Kconfigmigration on march-18. New patches (migration + rock board) coming up shortly.Quoted 1 line
Thanks - what toolchain are you using to test this?
Also I am still getting this error:
buildman rock$
boards.cfg is up to date. Nothing to do.
Building current source for 1 boards (1 thread, 8 jobs per thread)
arm: + rock
+make[2]: *** No rule to make target 'dts/dt.dtb', needed by 'tpl/u-boot-tpl.dtb'. Stop.
Review
Quoted 3 lines
(quoted diff) +2
-0+make[1]: *** [tpl/u-boot-tpl.bin] Error 2 +make: *** [sub-make] Error 2 0 0 1 /1 rock
that is really strange.
I'm building with the armhf cross-compiler from Debian testing, which is
arm-linux-gnueabihf-gcc (Debian 6.3.0-5) 6.3.0 20170124
My git history also is up-to-date it seems:14ef0b180b rockchip: rk3188: Add Radxa Rock board d0348986cc rockchip: rk3188: follow THUMB_BUILD Kconfig migration 3bffe88d68 rockchip: video: Split out HDMI controller code a188a5a35c rockchip: i2c: Add compatibles for Rockchip Cortex-A9 socs 903fae5666 rockchip: rk3188: Setup the armclk in spl 7957cc4bd0 rockchip: clk: rk3188: Allow configuration of the armclk
with 3bffe88d68 being your current head and my build commands being
make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- clean make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- rock_defconfig make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf-
Strangely the tpl shouldn't require a dtb at all, as it needs to use OF_PLATDATA. Am I missing some config option somewhere?
Heiko Stuebner
maintainerPATCH 2/3 rockchip: rk3188: Add Radxa Rock board
Am Sonntag, 26. März 2017, 22:13:08 CEST schrieb Heiko Stuebner:
Quoted 95 lines
Am Sonntag, 26. März 2017, 14:00:51 CEST schrieb Simon Glass:
Quoted 76 lines
Hi Heiko,
Quoted 63 lines · Simon Glass
Hi Heiko,
Quoted 43 lines · Heiko Stuebner
Hi Simon,
Am Samstag, 25. März 2017, 20:39:08 CEST schrieb Simon Glass:
Quoted 40 lines · Heiko Stuebner
Quoted 18 lines
The Rock is a RK3188 based single board computer by Radxa. Currently it still relies on the proprietary DDR init and cannot use the generic SPL, but at least is able to boot a linux kernel and system up to a regular login prompt.
Signed-off-by Heiko Stuebner <[email protected]>Reviewed-by Simon Glass <[email protected]>Tested-by Kever Yang <[email protected]>--- arch/arm/dts/Makefile | 1 + arch/arm/dts/rk3188-radxarock.dts | 382 ++++++++++++++++++++++++++++++++++ arch/arm/mach-rockchip/rk3188/Kconfig | 11 + board/radxa/rock/Kconfig | 15 ++ board/radxa/rock/MAINTAINERS | 6 + board/radxa/rock/Makefile | 7 + board/radxa/rock/rock.c | 7 + configs/rock_defconfig | 58 ++++++ include/configs/rock.h | 30 +++Quoted 8 lines
9 files changed, 517 insertions(+) create mode 100644 arch/arm/dts/rk3188-radxarock.dts create mode 100644 board/radxa/rock/Kconfig create mode 100644 board/radxa/rock/MAINTAINERS create mode 100644 board/radxa/rock/Makefile create mode 100644 board/radxa/rock/rock.c create mode 100644 configs/rock_defconfig create mode 100644 include/configs/rock.hI am still having trouble applying this patch. I get build errors:
arm: + rock
(quoted diff) +2
-0+arch/arm/Makefile:22: CONFIG_CPU_V7 -march=armv7-a +make[2]: *** No rule to make target 'dts/dt.dtb', needed by'tpl/u-boot-tpl.dtb'. Stop.
(quoted diff) +2
-0+make[1]: *** [tpl/u-boot-tpl.bin] Error 2 +make: *** [sub-make] Error 2 0 0 1 /1 rockAlso there seems to be a duplicate config:
Quoted 16 lines
Quoted 11 lines
arm: + rock
(quoted diff) +10
-0+In file included from include/configs/rock.h:11:0, + from include/config.h:5, + from include/common.h:21, + from arch/arm/lib/asm-offsets.c:15: + #define CONFIG_SYS_THUMB_BUILD + ^ + from lib/asm-offsets.c:15: +In file included from include/linux/kconfig.h:4:0, + from <command-line>:0: +include/generated/autoconf.h:10:0: note: this is the location of theQuoted 2 lines
previous definition
+ #defineCONFIG_SYS_THUMB_BUILD1looks like this got run over by another
Kconfigmigration on march-18. New patches (migration + rock board) coming up shortly.Quoted 1 line
Thanks - what toolchain are you using to test this?
Also I am still getting this error:
buildman rock$
boards.cfg is up to date. Nothing to do.
Building current source for 1 boards (1 thread, 8 jobs per thread)
arm: + rock
+make[2]: *** No rule to make target 'dts/dt.dtb', needed by 'tpl/u-boot-tpl.dtb'. Stop.Review
Quoted 3 lines
(quoted diff) +2
-0+make[1]: *** [tpl/u-boot-tpl.bin] Error 2 +make: *** [sub-make] Error 2 0 0 1 /1 rockthat is really strange.
I'm building with the armhf cross-compiler from Debian testing, which is
arm-linux-gnueabihf-gcc (Debian 6.3.0-5) 6.3.0 20170124
My git history also is up-to-date it seems:
14ef0b180brockchip: rk3188: Add Radxa Rock boardd0348986ccrockchip: rk3188: followTHUMB_BUILDKconfigmigration3bffe88d68rockchip: video: Split out HDMI controller codea188a5a35crockchip: i2c: Add compatibles for Rockchip Cortex-A9 socs903fae5666rockchip: rk3188: Setup the armclk in spl7957cc4bd0rockchip: clk: rk3188: Allow configuration of the armclk
Quoted 5 lines
with
3bffe88d68being your current head and my build commands beingmake ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- clean make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf-
rock_defconfigmake ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf-
that also works with a "make mrproper" before everything else.
Quoted 2 lines
Strangely the tpl shouldn't require a dtb at all, as it needs to use
OF_PLATDATA. Am I missing some config option somewhere?
I also did play around a bit with buildman just now:
At first I forgot the "$" after rock, so build everything with rock in the name and the radxarock failed because the somewhat old 4.9 toolchain used seems to produce a TPL image that is over the size constraints. I.e. 1020 bytes on 4.9 vs. 792 bytes on 6.3.0 .
When I drop the SPL_MAX_SIZE from rk3188_common.h for the TPL build
tools/buildman/buildman -P rock
builds 14 boards and finishes sucessfully including the radxarock.
Now when I try buildman -P rock$ I seem to also get the error about the missing dts/dt.dtb , which does not occur in my regular builds and also not when building the bigger number of boards. I guess I need to figure out what is different in that case.
Heiko
Heiko Stuebner
maintainerPATCH 2/3 rockchip: rk3188: Add Radxa Rock board
Am Sonntag, 26. M채rz 2017, 22:41:35 CEST schrieb Heiko Stuebner:
Quoted 120 lines
Am Sonntag, 26. M채rz 2017, 22:13:08 CEST schrieb Heiko Stuebner:
Quoted 95 lines
Am Sonntag, 26. M채rz 2017, 14:00:51 CEST schrieb Simon Glass:
Quoted 76 lines
Hi Heiko,
Quoted 63 lines · Simon Glass
Hi Heiko,
Quoted 43 lines · Heiko Stuebner
Hi Simon,
Am Samstag, 25. M채rz 2017, 20:39:08 CEST schrieb Simon Glass:
Quoted 40 lines · Heiko Stuebner
Quoted 18 lines
The Rock is a RK3188 based single board computer by Radxa. Currently it still relies on the proprietary DDR init and cannot use the generic SPL, but at least is able to boot a linux kernel and system up to a regular login prompt.
Signed-off-by Heiko Stuebner <[email protected]>Reviewed-by Simon Glass <[email protected]>Tested-by Kever Yang <[email protected]>--- arch/arm/dts/Makefile | 1 + arch/arm/dts/rk3188-radxarock.dts | 382 ++++++++++++++++++++++++++++++++++ arch/arm/mach-rockchip/rk3188/Kconfig | 11 + board/radxa/rock/Kconfig | 15 ++ board/radxa/rock/MAINTAINERS | 6 + board/radxa/rock/Makefile | 7 + board/radxa/rock/rock.c | 7 + configs/rock_defconfig | 58 ++++++ include/configs/rock.h | 30 +++Quoted 8 lines
9 files changed, 517 insertions(+) create mode 100644 arch/arm/dts/rk3188-radxarock.dts create mode 100644 board/radxa/rock/Kconfig create mode 100644 board/radxa/rock/MAINTAINERS create mode 100644 board/radxa/rock/Makefile create mode 100644 board/radxa/rock/rock.c create mode 100644 configs/rock_defconfig create mode 100644 include/configs/rock.hI am still having trouble applying this patch. I get build errors:
arm: + rock
(quoted diff) +2
-0+arch/arm/Makefile:22: CONFIG_CPU_V7 -march=armv7-a +make[2]: *** No rule to make target 'dts/dt.dtb', needed by'tpl/u-boot-tpl.dtb'. Stop.
(quoted diff) +2
-0+make[1]: *** [tpl/u-boot-tpl.bin] Error 2 +make: *** [sub-make] Error 2 0 0 1 /1 rockAlso there seems to be a duplicate config:
Quoted 16 lines
Quoted 11 lines
arm: + rock
(quoted diff) +10
-0+In file included from include/configs/rock.h:11:0, + from include/config.h:5, + from include/common.h:21, + from arch/arm/lib/asm-offsets.c:15: + #define CONFIG_SYS_THUMB_BUILD + ^ + from lib/asm-offsets.c:15: +In file included from include/linux/kconfig.h:4:0, + from <command-line>:0: +include/generated/autoconf.h:10:0: note: this is the location of theQuoted 2 lines
previous definition
+ #defineCONFIG_SYS_THUMB_BUILD1looks like this got run over by another
Kconfigmigration on march-18. New patches (migration + rock board) coming up shortly.Quoted 1 line
Thanks - what toolchain are you using to test this?
Also I am still getting this error:
buildman rock$
boards.cfg is up to date. Nothing to do.
Building current source for 1 boards (1 thread, 8 jobs per thread)
arm: + rock
+make[2]: *** No rule to make target 'dts/dt.dtb', needed by 'tpl/u-boot-tpl.dtb'. Stop.Review
Quoted 3 lines
(quoted diff) +2
-0+make[1]: *** [tpl/u-boot-tpl.bin] Error 2 +make: *** [sub-make] Error 2 0 0 1 /1 rockthat is really strange.
I'm building with the armhf cross-compiler from Debian testing, which is
arm-linux-gnueabihf-gcc (Debian 6.3.0-5) 6.3.0 20170124
My git history also is up-to-date it seems:
14ef0b180brockchip: rk3188: Add Radxa Rock boardd0348986ccrockchip: rk3188: followTHUMB_BUILDKconfigmigration3bffe88d68rockchip: video: Split out HDMI controller codea188a5a35crockchip: i2c: Add compatibles for Rockchip Cortex-A9 socs903fae5666rockchip: rk3188: Setup the armclk in spl7957cc4bd0rockchip: clk: rk3188: Allow configuration of the armclkQuoted 5 lines
with
3bffe88d68being your current head and my build commands beingmake ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- clean make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf-
rock_defconfigmake ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf-that also works with a "make mrproper" before everything else.
Quoted 2 lines
Strangely the tpl shouldn't require a dtb at all, as it needs to use
OF_PLATDATA. Am I missing some config option somewhere?I also did play around a bit with buildman just now:
At first I forgot the "$" after rock, so build everything with rock in the name and the radxarock failed because the somewhat old 4.9 toolchain used seems to produce a TPL image that is over the size constraints. I.e. 1020 bytes on 4.9 vs. 792 bytes on 6.3.0 .
When I drop the
SPL_MAX_SIZEfromrk3188_common.hfor the TPL build
tools/buildman/buildman-P rock
builds 14 boards and finishes sucessfully including the radxarock.
Quoted 4 lines
Now when I try buildman -P rock$ I seem to also get the error about the missing dts/dt.dtb , which does not occur in my regular builds and also not when building the bigger number of boards. I guess I need to figure out what is different in that case.
sorry for spamming, but
also when entering .bm-work/rock where buildman failed and doing just my
make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf-
in that directory created by buildman, produces perfectly fine images. (buildman does create the .config, so I'm just finishing the build, buildman failed at for unknown reasons)
Heiko
Heiko Stuebner
maintainerPATCH 2/3 rockchip: rk3188: Add Radxa Rock board
Am Sonntag, 26. März 2017, 22:52:16 CEST schrieb Heiko Stuebner:
Quoted 128 lines
Am Sonntag, 26. März 2017, 22:41:35 CEST schrieb Heiko Stuebner:
Quoted 120 lines
Am Sonntag, 26. März 2017, 22:13:08 CEST schrieb Heiko Stuebner:
Quoted 95 lines
Am Sonntag, 26. März 2017, 14:00:51 CEST schrieb Simon Glass:
Quoted 76 lines
Hi Heiko,
Quoted 63 lines · Simon Glass
Hi Heiko,
Quoted 43 lines · Heiko Stuebner
Hi Simon,
Am Samstag, 25. März 2017, 20:39:08 CEST schrieb Simon Glass:
Quoted 40 lines · Heiko Stuebner
Quoted 18 lines
The Rock is a RK3188 based single board computer by Radxa. Currently it still relies on the proprietary DDR init and cannot use the generic SPL, but at least is able to boot a linux kernel and system up to a regular login prompt.
Signed-off-by Heiko Stuebner <[email protected]>Reviewed-by Simon Glass <[email protected]>Tested-by Kever Yang <[email protected]>--- arch/arm/dts/Makefile | 1 + arch/arm/dts/rk3188-radxarock.dts | 382 ++++++++++++++++++++++++++++++++++ arch/arm/mach-rockchip/rk3188/Kconfig | 11 + board/radxa/rock/Kconfig | 15 ++ board/radxa/rock/MAINTAINERS | 6 + board/radxa/rock/Makefile | 7 + board/radxa/rock/rock.c | 7 + configs/rock_defconfig | 58 ++++++ include/configs/rock.h | 30 +++Quoted 8 lines
9 files changed, 517 insertions(+) create mode 100644 arch/arm/dts/rk3188-radxarock.dts create mode 100644 board/radxa/rock/Kconfig create mode 100644 board/radxa/rock/MAINTAINERS create mode 100644 board/radxa/rock/Makefile create mode 100644 board/radxa/rock/rock.c create mode 100644 configs/rock_defconfig create mode 100644 include/configs/rock.hI am still having trouble applying this patch. I get build errors:
arm: + rock
(quoted diff) +2
-0+arch/arm/Makefile:22: CONFIG_CPU_V7 -march=armv7-a +make[2]: *** No rule to make target 'dts/dt.dtb', needed by'tpl/u-boot-tpl.dtb'. Stop.
(quoted diff) +2
-0+make[1]: *** [tpl/u-boot-tpl.bin] Error 2 +make: *** [sub-make] Error 2 0 0 1 /1 rockAlso there seems to be a duplicate config:
Quoted 16 lines
Quoted 11 lines
arm: + rock
(quoted diff) +10
-0+In file included from include/configs/rock.h:11:0, + from include/config.h:5, + from include/common.h:21, + from arch/arm/lib/asm-offsets.c:15: + #define CONFIG_SYS_THUMB_BUILD + ^ + from lib/asm-offsets.c:15: +In file included from include/linux/kconfig.h:4:0, + from <command-line>:0: +include/generated/autoconf.h:10:0: note: this is the location of theQuoted 2 lines
previous definition
+ #defineCONFIG_SYS_THUMB_BUILD1looks like this got run over by another
Kconfigmigration on march-18. New patches (migration + rock board) coming up shortly.Quoted 1 line
Thanks - what toolchain are you using to test this?
Also I am still getting this error:
buildman rock$
boards.cfg is up to date. Nothing to do.
Building current source for 1 boards (1 thread, 8 jobs per thread)
arm: + rock
+make[2]: *** No rule to make target 'dts/dt.dtb', needed by 'tpl/u-boot-tpl.dtb'. Stop.Review
Quoted 3 lines
(quoted diff) +2
-0+make[1]: *** [tpl/u-boot-tpl.bin] Error 2 +make: *** [sub-make] Error 2 0 0 1 /1 rockthat is really strange.
I'm building with the armhf cross-compiler from Debian testing, which is
arm-linux-gnueabihf-gcc (Debian 6.3.0-5) 6.3.0 20170124
My git history also is up-to-date it seems:
14ef0b180brockchip: rk3188: Add Radxa Rock boardd0348986ccrockchip: rk3188: followTHUMB_BUILDKconfigmigration3bffe88d68rockchip: video: Split out HDMI controller codea188a5a35crockchip: i2c: Add compatibles for Rockchip Cortex-A9 socs903fae5666rockchip: rk3188: Setup the armclk in spl7957cc4bd0rockchip: clk: rk3188: Allow configuration of the armclkQuoted 5 lines
with
3bffe88d68being your current head and my build commands beingmake ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- clean make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf-
rock_defconfigmake ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf-that also works with a "make mrproper" before everything else.
Quoted 2 lines
Strangely the tpl shouldn't require a dtb at all, as it needs to use
OF_PLATDATA. Am I missing some config option somewhere?I also did play around a bit with buildman just now:
At first I forgot the "$" after rock, so build everything with rock in the name and the radxarock failed because the somewhat old 4.9 toolchain used seems to produce a TPL image that is over the size constraints. I.e. 1020 bytes on 4.9 vs. 792 bytes on 6.3.0 .
When I drop the
SPL_MAX_SIZEfromrk3188_common.hfor the TPL build
tools/buildman/buildman-P rock
builds 14 boards and finishes sucessfully including the radxarock.Quoted 4 lines
Now when I try buildman -P rock$ I seem to also get the error about the missing dts/dt.dtb , which does not occur in my regular builds and also not when building the bigger number of boards. I guess I need to figure out what is different in that case.
sorry for spamming, but
Quoted 7 lines
also when entering .bm-work/rock where buildman failed and doing just my
make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf-
in that directory created by buildman, produces perfectly fine images. (buildman does create the .config, so I'm just finishing the build, buildman failed at for unknown reasons)
and a
tools/buildman/buildman -PVv -T1 -j1 rock$
also finishes sucessfully, so it looks like that is more some sort of build concurrency issue, with the platdata not being created in time for some reason.
PATCH 2/3 rockchip: rk3188: Add Radxa Rock board
Hi Heiko,
Quoted 137 lines · Heiko Stuebner
Am Sonntag, 26. März 2017, 22:52:16 CEST schrieb Heiko Stuebner:
Quoted 128 lines
Am Sonntag, 26. März 2017, 22:41:35 CEST schrieb Heiko Stuebner:
Quoted 120 lines
Am Sonntag, 26. März 2017, 22:13:08 CEST schrieb Heiko Stuebner:
Quoted 95 lines
Am Sonntag, 26. März 2017, 14:00:51 CEST schrieb Simon Glass:
Quoted 76 lines
Hi Heiko,
Quoted 63 lines · Simon Glass
Hi Heiko,
Quoted 43 lines · Heiko Stuebner
Hi Simon,
Am Samstag, 25. März 2017, 20:39:08 CEST schrieb Simon Glass:
Quoted 40 lines · Heiko Stuebner
Quoted 18 lines
The Rock is a RK3188 based single board computer by Radxa. Currently it still relies on the proprietary DDR init and cannot use the generic SPL, but at least is able to boot a linux kernel and system up to a regular login prompt.
Signed-off-by Heiko Stuebner <[email protected]>Reviewed-by Simon Glass <[email protected]>Tested-by Kever Yang <[email protected]>--- arch/arm/dts/Makefile | 1 + arch/arm/dts/rk3188-radxarock.dts | 382 ++++++++++++++++++++++++++++++++++ arch/arm/mach-rockchip/rk3188/Kconfig | 11 + board/radxa/rock/Kconfig | 15 ++ board/radxa/rock/MAINTAINERS | 6 + board/radxa/rock/Makefile | 7 + board/radxa/rock/rock.c | 7 + configs/rock_defconfig | 58 ++++++ include/configs/rock.h | 30 +++Quoted 8 lines
9 files changed, 517 insertions(+) create mode 100644 arch/arm/dts/rk3188-radxarock.dts create mode 100644 board/radxa/rock/Kconfig create mode 100644 board/radxa/rock/MAINTAINERS create mode 100644 board/radxa/rock/Makefile create mode 100644 board/radxa/rock/rock.c create mode 100644 configs/rock_defconfig create mode 100644 include/configs/rock.hI am still having trouble applying this patch. I get build errors:
arm: + rock
(quoted diff) +2
-0+arch/arm/Makefile:22: CONFIG_CPU_V7 -march=armv7-a +make[2]: *** No rule to make target 'dts/dt.dtb', needed by'tpl/u-boot-tpl.dtb'. Stop.
(quoted diff) +2
-0+make[1]: *** [tpl/u-boot-tpl.bin] Error 2 +make: *** [sub-make] Error 2 0 0 1 /1 rockAlso there seems to be a duplicate config:
Quoted 16 lines
Quoted 11 lines
arm: + rock
(quoted diff) +10
-0+In file included from include/configs/rock.h:11:0, + from include/config.h:5, + from include/common.h:21, + from arch/arm/lib/asm-offsets.c:15: + #define CONFIG_SYS_THUMB_BUILD + ^ + from lib/asm-offsets.c:15: +In file included from include/linux/kconfig.h:4:0, + from <command-line>:0: +include/generated/autoconf.h:10:0: note: this is the location of theQuoted 2 lines
previous definition
+ #defineCONFIG_SYS_THUMB_BUILD1looks like this got run over by another
Kconfigmigration on march-18. New patches (migration + rock board) coming up shortly.Quoted 1 line
Thanks - what toolchain are you using to test this?
Also I am still getting this error:
buildman rock$
boards.cfg is up to date. Nothing to do.
Building current source for 1 boards (1 thread, 8 jobs per thread)
arm: + rock
+make[2]: *** No rule to make target 'dts/dt.dtb', needed by 'tpl/u-boot-tpl.dtb'. Stop.Review
Quoted 3 lines
(quoted diff) +2
-0+make[1]: *** [tpl/u-boot-tpl.bin] Error 2 +make: *** [sub-make] Error 2 0 0 1 /1 rockthat is really strange.
I'm building with the armhf cross-compiler from Debian testing, which is
arm-linux-gnueabihf-gcc (Debian 6.3.0-5) 6.3.0 20170124
My git history also is up-to-date it seems:
14ef0b180brockchip: rk3188: Add Radxa Rock boardd0348986ccrockchip: rk3188: followTHUMB_BUILDKconfigmigration3bffe88d68rockchip: video: Split out HDMI controller codea188a5a35crockchip: i2c: Add compatibles for Rockchip Cortex-A9 socs903fae5666rockchip: rk3188: Setup the armclk in spl7957cc4bd0rockchip: clk: rk3188: Allow configuration of the armclkQuoted 5 lines
with
3bffe88d68being your current head and my build commands beingmake ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- clean make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf-
rock_defconfigmake ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf-that also works with a "make mrproper" before everything else.
Quoted 2 lines
Strangely the tpl shouldn't require a dtb at all, as it needs to use
OF_PLATDATA. Am I missing some config option somewhere?I also did play around a bit with buildman just now:
At first I forgot the "$" after rock, so build everything with rock in the name and the radxarock failed because the somewhat old 4.9 toolchain used seems to produce a TPL image that is over the size constraints. I.e. 1020 bytes on 4.9 vs. 792 bytes on 6.3.0 .
When I drop the
SPL_MAX_SIZEfromrk3188_common.hfor the TPL build
tools/buildman/buildman-P rock
builds 14 boards and finishes sucessfully including the radxarock.Quoted 4 lines
Now when I try buildman -P rock$ I seem to also get the error about the missing dts/dt.dtb , which does not occur in my regular builds and also not when building the bigger number of boards. I guess I need to figure out what is different in that case.
sorry for spamming, but
Quoted 7 lines
also when entering .bm-work/rock where buildman failed and doing just my
make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf-
in that directory created by buildman, produces perfectly fine images. (buildman does create the .config, so I'm just finishing the build, buildman failed at for unknown reasons)
Quoted 6 lines
and a
tools/buildman/buildman-PVv -T1 -j1 rock$also finishes sucessfully, so it looks like that is more some sort of build concurrency issue, with the platdata not being created in time for some reason.
Yes I think that is right. I will see if I can fix that.
Re the toolchain, if I pull in this patch then I will likely cause a build breakable on common toolchains. What do you think is the best option? Can the TPL be shrunk a little with gcc 4.9?
Regards,
Simon
Heiko Stuebner
maintainerPATCH 2/3 rockchip: rk3188: Add Radxa Rock board
Am Sonntag, 26. März 2017, 15:28:44 CEST schrieb Simon Glass:
Quoted 147 lines
Hi Heiko,
Quoted 137 lines · Heiko Stuebner
Am Sonntag, 26. März 2017, 22:52:16 CEST schrieb Heiko Stuebner:
Quoted 128 lines
Am Sonntag, 26. März 2017, 22:41:35 CEST schrieb Heiko Stuebner:
Quoted 120 lines
Am Sonntag, 26. März 2017, 22:13:08 CEST schrieb Heiko Stuebner:
Quoted 95 lines
Am Sonntag, 26. März 2017, 14:00:51 CEST schrieb Simon Glass:
Quoted 76 lines
Hi Heiko,
Quoted 63 lines · Simon Glass
Hi Heiko,
Quoted 43 lines · Heiko Stuebner
Hi Simon,
Am Samstag, 25. März 2017, 20:39:08 CEST schrieb Simon Glass:
Quoted 40 lines · Heiko Stuebner
Quoted 18 lines
The Rock is a RK3188 based single board computer by Radxa. Currently it still relies on the proprietary DDR init and cannot use the generic SPL, but at least is able to boot a linux kernel and system up to a regular login prompt.
Signed-off-by Heiko Stuebner <[email protected]>Reviewed-by Simon Glass <[email protected]>Tested-by Kever Yang <[email protected]>--- arch/arm/dts/Makefile | 1 + arch/arm/dts/rk3188-radxarock.dts | 382 ++++++++++++++++++++++++++++++++++ arch/arm/mach-rockchip/rk3188/Kconfig | 11 + board/radxa/rock/Kconfig | 15 ++ board/radxa/rock/MAINTAINERS | 6 + board/radxa/rock/Makefile | 7 + board/radxa/rock/rock.c | 7 + configs/rock_defconfig | 58 ++++++ include/configs/rock.h | 30 +++Quoted 8 lines
9 files changed, 517 insertions(+) create mode 100644 arch/arm/dts/rk3188-radxarock.dts create mode 100644 board/radxa/rock/Kconfig create mode 100644 board/radxa/rock/MAINTAINERS create mode 100644 board/radxa/rock/Makefile create mode 100644 board/radxa/rock/rock.c create mode 100644 configs/rock_defconfig create mode 100644 include/configs/rock.hI am still having trouble applying this patch. I get build errors:
arm: + rock
(quoted diff) +2
-0+arch/arm/Makefile:22: CONFIG_CPU_V7 -march=armv7-a +make[2]: *** No rule to make target 'dts/dt.dtb', needed by'tpl/u-boot-tpl.dtb'. Stop.
(quoted diff) +2
-0+make[1]: *** [tpl/u-boot-tpl.bin] Error 2 +make: *** [sub-make] Error 2 0 0 1 /1 rockAlso there seems to be a duplicate config:
Quoted 16 lines
Quoted 11 lines
arm: + rock
(quoted diff) +10
-0+In file included from include/configs/rock.h:11:0, + from include/config.h:5, + from include/common.h:21, + from arch/arm/lib/asm-offsets.c:15: + #define CONFIG_SYS_THUMB_BUILD + ^ + from lib/asm-offsets.c:15: +In file included from include/linux/kconfig.h:4:0, + from <command-line>:0: +include/generated/autoconf.h:10:0: note: this is the location of theQuoted 2 lines
previous definition
+ #defineCONFIG_SYS_THUMB_BUILD1looks like this got run over by another
Kconfigmigration on march-18. New patches (migration + rock board) coming up shortly.Quoted 1 line
Thanks - what toolchain are you using to test this?
Also I am still getting this error:
buildman rock$
boards.cfg is up to date. Nothing to do.
Building current source for 1 boards (1 thread, 8 jobs per thread)
arm: + rock
+make[2]: *** No rule to make target 'dts/dt.dtb', needed by 'tpl/u-boot-tpl.dtb'. Stop.Review
Quoted 3 lines
(quoted diff) +2
-0+make[1]: *** [tpl/u-boot-tpl.bin] Error 2 +make: *** [sub-make] Error 2 0 0 1 /1 rockthat is really strange.
I'm building with the armhf cross-compiler from Debian testing, which is
arm-linux-gnueabihf-gcc (Debian 6.3.0-5) 6.3.0 20170124
My git history also is up-to-date it seems:
14ef0b180brockchip: rk3188: Add Radxa Rock boardd0348986ccrockchip: rk3188: followTHUMB_BUILDKconfigmigration3bffe88d68rockchip: video: Split out HDMI controller codea188a5a35crockchip: i2c: Add compatibles for Rockchip Cortex-A9 socs903fae5666rockchip: rk3188: Setup the armclk in spl7957cc4bd0rockchip: clk: rk3188: Allow configuration of the armclkQuoted 5 lines
with
3bffe88d68being your current head and my build commands beingmake ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- clean make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf-
rock_defconfigmake ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf-that also works with a "make mrproper" before everything else.
Quoted 2 lines
Strangely the tpl shouldn't require a dtb at all, as it needs to use
OF_PLATDATA. Am I missing some config option somewhere?I also did play around a bit with buildman just now:
At first I forgot the "$" after rock, so build everything with rock in the name and the radxarock failed because the somewhat old 4.9 toolchain used seems to produce a TPL image that is over the size constraints. I.e. 1020 bytes on 4.9 vs. 792 bytes on 6.3.0 .
When I drop the
SPL_MAX_SIZEfromrk3188_common.hfor the TPL build
tools/buildman/buildman-P rock
builds 14 boards and finishes sucessfully including the radxarock.Quoted 4 lines
Now when I try buildman -P rock$ I seem to also get the error about the missing dts/dt.dtb , which does not occur in my regular builds and also not when building the bigger number of boards. I guess I need to figure out what is different in that case.
sorry for spamming, but
Quoted 7 lines
also when entering .bm-work/rock where buildman failed and doing just my
make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf-
in that directory created by buildman, produces perfectly fine images. (buildman does create the .config, so I'm just finishing the build, buildman failed at for unknown reasons)
Quoted 6 lines
and a
tools/buildman/buildman-PVv -T1 -j1 rock$also finishes sucessfully, so it looks like that is more some sort of build concurrency issue, with the platdata not being created in time for some reason.
Quoted 5 lines
Yes I think that is right. I will see if I can fix that.
Re the toolchain, if I pull in this patch then I will likely cause a build breakable on common toolchains. What do you think is the best option? Can the TPL be shrunk a little with gcc 4.9?
I've added Tom for comments, executive summary:
- rk3188-tpl is size limited to 1020 bytes
- gcc 6.3 produces a rk3188-tpl of 792 bytes
- gcc 4.9 makes it 1020 bytes
- buildman seems to always use gcc-4.9
- rk3188 board does not compile with buildman
Isn't holding on to a pretty old compiler for everything somewhat strange? ;-)
I think the recent memset change in commit
c67c8c604b6c ("board_init.c: Always use memset()")did hurt us the most sizewise, as we're now using the libgeneric memset which is quite a bit bigger than the naive fallback that existed in board_init.c before.
Reverting and using the naive memset again brings us down to 952 bytes again even on gcc-4.9 .
I guess I could just remove the TPL_LIBGENERIC option again and provide a similarly small/naive memset in the rk3188 tpl board?
################
Or maybe just check if the size limit in u-boot-spl.lds is actually correct. In our example gcc-4.9 produces a 1020bytes result and the SPL_SIZE_LIMIT is set to (0x400 - 0x4) = 1020, so of course doing
arch/arm/cpu/u-boot-spl.lds +1 -1
@@ -72,7 +72,7 @@ SECTIONS } #if defined(CONFIG_SPL_MAX_SIZE) -ASSERT(__image_copy_end - __image_copy_start < (CONFIG_SPL_MAX_SIZE), \ +ASSERT(__image_copy_end - __image_copy_start <= (CONFIG_SPL_MAX_SIZE), \ "SPL image too big"); #endif
does look somewhat correct. But of course that rides way to much on the edge when every additional byte will break the build.
Heiko
PATCH 2/3 rockchip: rk3188: Add Radxa Rock board
Hi Heiko,
Quoted 162 lines · Heiko Stuebner
Am Sonntag, 26. März 2017, 15:28:44 CEST schrieb Simon Glass:
Quoted 147 lines
Hi Heiko,
Quoted 137 lines · Heiko Stuebner
Am Sonntag, 26. März 2017, 22:52:16 CEST schrieb Heiko Stuebner:
Quoted 128 lines
Am Sonntag, 26. März 2017, 22:41:35 CEST schrieb Heiko Stuebner:
Quoted 120 lines
Am Sonntag, 26. März 2017, 22:13:08 CEST schrieb Heiko Stuebner:
Quoted 95 lines
Am Sonntag, 26. März 2017, 14:00:51 CEST schrieb Simon Glass:
Quoted 76 lines
Hi Heiko,
Quoted 63 lines · Simon Glass
Hi Heiko,
Quoted 43 lines · Heiko Stuebner
Hi Simon,
Am Samstag, 25. März 2017, 20:39:08 CEST schrieb Simon Glass:
Quoted 40 lines · Heiko Stuebner
Quoted 18 lines
The Rock is a RK3188 based single board computer by Radxa. Currently it still relies on the proprietary DDR init and cannot use the generic SPL, but at least is able to boot a linux kernel and system up to a regular login prompt.
Signed-off-by Heiko Stuebner <[email protected]>Reviewed-by Simon Glass <[email protected]>Tested-by Kever Yang <[email protected]>--- arch/arm/dts/Makefile | 1 + arch/arm/dts/rk3188-radxarock.dts | 382 ++++++++++++++++++++++++++++++++++ arch/arm/mach-rockchip/rk3188/Kconfig | 11 + board/radxa/rock/Kconfig | 15 ++ board/radxa/rock/MAINTAINERS | 6 + board/radxa/rock/Makefile | 7 + board/radxa/rock/rock.c | 7 + configs/rock_defconfig | 58 ++++++ include/configs/rock.h | 30 +++Quoted 8 lines
9 files changed, 517 insertions(+) create mode 100644 arch/arm/dts/rk3188-radxarock.dts create mode 100644 board/radxa/rock/Kconfig create mode 100644 board/radxa/rock/MAINTAINERS create mode 100644 board/radxa/rock/Makefile create mode 100644 board/radxa/rock/rock.c create mode 100644 configs/rock_defconfig create mode 100644 include/configs/rock.hI am still having trouble applying this patch. I get build errors:
arm: + rock
(quoted diff) +2
-0+arch/arm/Makefile:22: CONFIG_CPU_V7 -march=armv7-a +make[2]: *** No rule to make target 'dts/dt.dtb', needed by'tpl/u-boot-tpl.dtb'. Stop.
(quoted diff) +2
-0+make[1]: *** [tpl/u-boot-tpl.bin] Error 2 +make: *** [sub-make] Error 2 0 0 1 /1 rockAlso there seems to be a duplicate config:
Quoted 16 lines
Quoted 11 lines
arm: + rock
(quoted diff) +10
-0+In file included from include/configs/rock.h:11:0, + from include/config.h:5, + from include/common.h:21, + from arch/arm/lib/asm-offsets.c:15: + #define CONFIG_SYS_THUMB_BUILD + ^ + from lib/asm-offsets.c:15: +In file included from include/linux/kconfig.h:4:0, + from <command-line>:0: +include/generated/autoconf.h:10:0: note: this is the location of theQuoted 2 lines
previous definition
+ #defineCONFIG_SYS_THUMB_BUILD1looks like this got run over by another
Kconfigmigration on march-18. New patches (migration + rock board) coming up shortly.Quoted 1 line
Thanks - what toolchain are you using to test this?
Also I am still getting this error:
buildman rock$
boards.cfg is up to date. Nothing to do.
Building current source for 1 boards (1 thread, 8 jobs per thread)
arm: + rock
+make[2]: *** No rule to make target 'dts/dt.dtb', needed by 'tpl/u-boot-tpl.dtb'. Stop.Review
Quoted 3 lines
(quoted diff) +2
-0+make[1]: *** [tpl/u-boot-tpl.bin] Error 2 +make: *** [sub-make] Error 2 0 0 1 /1 rockthat is really strange.
I'm building with the armhf cross-compiler from Debian testing, which is
arm-linux-gnueabihf-gcc (Debian 6.3.0-5) 6.3.0 20170124
My git history also is up-to-date it seems:
14ef0b180brockchip: rk3188: Add Radxa Rock boardd0348986ccrockchip: rk3188: followTHUMB_BUILDKconfigmigration3bffe88d68rockchip: video: Split out HDMI controller codea188a5a35crockchip: i2c: Add compatibles for Rockchip Cortex-A9 socs903fae5666rockchip: rk3188: Setup the armclk in spl7957cc4bd0rockchip: clk: rk3188: Allow configuration of the armclkQuoted 5 lines
with
3bffe88d68being your current head and my build commands beingmake ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- clean make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf-
rock_defconfigmake ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf-that also works with a "make mrproper" before everything else.
Quoted 2 lines
Strangely the tpl shouldn't require a dtb at all, as it needs to use
OF_PLATDATA. Am I missing some config option somewhere?I also did play around a bit with buildman just now:
At first I forgot the "$" after rock, so build everything with rock in the name and the radxarock failed because the somewhat old 4.9 toolchain used seems to produce a TPL image that is over the size constraints. I.e. 1020 bytes on 4.9 vs. 792 bytes on 6.3.0 .
When I drop the
SPL_MAX_SIZEfromrk3188_common.hfor the TPL build
tools/buildman/buildman-P rock
builds 14 boards and finishes sucessfully including the radxarock.Quoted 4 lines
Now when I try buildman -P rock$ I seem to also get the error about the missing dts/dt.dtb , which does not occur in my regular builds and also not when building the bigger number of boards. I guess I need to figure out what is different in that case.
sorry for spamming, but
Quoted 7 lines
also when entering .bm-work/rock where buildman failed and doing just my
make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf-
in that directory created by buildman, produces perfectly fine images. (buildman does create the .config, so I'm just finishing the build, buildman failed at for unknown reasons)
Quoted 6 lines
and a
tools/buildman/buildman-PVv -T1 -j1 rock$also finishes sucessfully, so it looks like that is more some sort of build concurrency issue, with the platdata not being created in time for some reason.
Quoted 5 lines
Yes I think that is right. I will see if I can fix that.
Re the toolchain, if I pull in this patch then I will likely cause a build breakable on common toolchains. What do you think is the best option? Can the TPL be shrunk a little with gcc 4.9?
I've added Tom for comments, executive summary:
- rk3188-tpl is size limited to 1020 bytes
- gcc 6.3 produces a rk3188-tpl of 792 bytes
- gcc 4.9 makes it 1020 bytes
- buildman seems to always use gcc-4.9
- rk3188 board does not compile with buildman
Quoted 2 lines
Isn't holding on to a pretty old compiler for everything somewhat strange? ;-)
Well it's not that old. 4.6 would be old. We do need to be careful not to drop old toolchains too aggressively, although for new platforms such as this is doesn't matter. I try to test with older things to avoid problems applying things to mainline (with Tom's automated tests, etc.)
Regards,
Simon
PATCH 2/3 rockchip: rk3188: Add Radxa Rock board
Quoted 165 lines · Simon Glass
Hi Heiko,
Quoted 162 lines · Heiko Stuebner
Am Sonntag, 26. März 2017, 15:28:44 CEST schrieb Simon Glass:
Quoted 147 lines
Hi Heiko,
Quoted 137 lines · Heiko Stuebner
Am Sonntag, 26. März 2017, 22:52:16 CEST schrieb Heiko Stuebner:
Quoted 128 lines
Am Sonntag, 26. März 2017, 22:41:35 CEST schrieb Heiko Stuebner:
Quoted 120 lines
Am Sonntag, 26. März 2017, 22:13:08 CEST schrieb Heiko Stuebner:
Quoted 95 lines
Am Sonntag, 26. März 2017, 14:00:51 CEST schrieb Simon Glass:
Quoted 76 lines
Hi Heiko,
Quoted 63 lines · Simon Glass
Hi Heiko,
Quoted 43 lines · Heiko Stuebner
Hi Simon,
Am Samstag, 25. März 2017, 20:39:08 CEST schrieb Simon Glass:
Quoted 40 lines · Heiko Stuebner
Quoted 18 lines
The Rock is a RK3188 based single board computer by Radxa. Currently it still relies on the proprietary DDR init and cannot use the generic SPL, but at least is able to boot a linux kernel and system up to a regular login prompt.
Signed-off-by Heiko Stuebner <[email protected]>Reviewed-by Simon Glass <[email protected]>Tested-by Kever Yang <[email protected]>--- arch/arm/dts/Makefile | 1 + arch/arm/dts/rk3188-radxarock.dts | 382 ++++++++++++++++++++++++++++++++++ arch/arm/mach-rockchip/rk3188/Kconfig | 11 + board/radxa/rock/Kconfig | 15 ++ board/radxa/rock/MAINTAINERS | 6 + board/radxa/rock/Makefile | 7 + board/radxa/rock/rock.c | 7 + configs/rock_defconfig | 58 ++++++ include/configs/rock.h | 30 +++Quoted 8 lines
9 files changed, 517 insertions(+) create mode 100644 arch/arm/dts/rk3188-radxarock.dts create mode 100644 board/radxa/rock/Kconfig create mode 100644 board/radxa/rock/MAINTAINERS create mode 100644 board/radxa/rock/Makefile create mode 100644 board/radxa/rock/rock.c create mode 100644 configs/rock_defconfig create mode 100644 include/configs/rock.hI am still having trouble applying this patch. I get build errors:
arm: + rock
(quoted diff) +2
-0+arch/arm/Makefile:22: CONFIG_CPU_V7 -march=armv7-a +make[2]: *** No rule to make target 'dts/dt.dtb', needed by'tpl/u-boot-tpl.dtb'. Stop.
(quoted diff) +2
-0+make[1]: *** [tpl/u-boot-tpl.bin] Error 2 +make: *** [sub-make] Error 2 0 0 1 /1 rockAlso there seems to be a duplicate config:
Quoted 16 lines
Quoted 11 lines
arm: + rock
(quoted diff) +10
-0+In file included from include/configs/rock.h:11:0, + from include/config.h:5, + from include/common.h:21, + from arch/arm/lib/asm-offsets.c:15: + #define CONFIG_SYS_THUMB_BUILD + ^ + from lib/asm-offsets.c:15: +In file included from include/linux/kconfig.h:4:0, + from <command-line>:0: +include/generated/autoconf.h:10:0: note: this is the location of theQuoted 2 lines
previous definition
+ #defineCONFIG_SYS_THUMB_BUILD1looks like this got run over by another
Kconfigmigration on march-18. New patches (migration + rock board) coming up shortly.Quoted 1 line
Thanks - what toolchain are you using to test this?
Also I am still getting this error:
buildman rock$
boards.cfg is up to date. Nothing to do.
Building current source for 1 boards (1 thread, 8 jobs per thread)
arm: + rock
+make[2]: *** No rule to make target 'dts/dt.dtb', needed by 'tpl/u-boot-tpl.dtb'. Stop.Review
Quoted 3 lines
(quoted diff) +2
-0+make[1]: *** [tpl/u-boot-tpl.bin] Error 2 +make: *** [sub-make] Error 2 0 0 1 /1 rockthat is really strange.
I'm building with the armhf cross-compiler from Debian testing, which is
arm-linux-gnueabihf-gcc (Debian 6.3.0-5) 6.3.0 20170124
My git history also is up-to-date it seems:
14ef0b180brockchip: rk3188: Add Radxa Rock boardd0348986ccrockchip: rk3188: followTHUMB_BUILDKconfigmigration3bffe88d68rockchip: video: Split out HDMI controller codea188a5a35crockchip: i2c: Add compatibles for Rockchip Cortex-A9 socs903fae5666rockchip: rk3188: Setup the armclk in spl7957cc4bd0rockchip: clk: rk3188: Allow configuration of the armclkQuoted 5 lines
with
3bffe88d68being your current head and my build commands beingmake ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- clean make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf-
rock_defconfigmake ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf-that also works with a "make mrproper" before everything else.
Quoted 2 lines
Strangely the tpl shouldn't require a dtb at all, as it needs to use
OF_PLATDATA. Am I missing some config option somewhere?I also did play around a bit with buildman just now:
At first I forgot the "$" after rock, so build everything with rock in the name and the radxarock failed because the somewhat old 4.9 toolchain used seems to produce a TPL image that is over the size constraints. I.e. 1020 bytes on 4.9 vs. 792 bytes on 6.3.0 .
When I drop the
SPL_MAX_SIZEfromrk3188_common.hfor the TPL build
tools/buildman/buildman-P rock
builds 14 boards and finishes sucessfully including the radxarock.Quoted 4 lines
Now when I try buildman -P rock$ I seem to also get the error about the missing dts/dt.dtb , which does not occur in my regular builds and also not when building the bigger number of boards. I guess I need to figure out what is different in that case.
sorry for spamming, but
Quoted 7 lines
also when entering .bm-work/rock where buildman failed and doing just my
make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf-
in that directory created by buildman, produces perfectly fine images. (buildman does create the .config, so I'm just finishing the build, buildman failed at for unknown reasons)
Quoted 6 lines
and a
tools/buildman/buildman-PVv -T1 -j1 rock$also finishes sucessfully, so it looks like that is more some sort of build concurrency issue, with the platdata not being created in time for some reason.
Quoted 5 lines
Yes I think that is right. I will see if I can fix that.
Re the toolchain, if I pull in this patch then I will likely cause a build breakable on common toolchains. What do you think is the best option? Can the TPL be shrunk a little with gcc 4.9?
I've added Tom for comments, executive summary:
- rk3188-tpl is size limited to 1020 bytes
- gcc 6.3 produces a rk3188-tpl of 792 bytes
- gcc 4.9 makes it 1020 bytes
- buildman seems to always use gcc-4.9
- rk3188 board does not compile with buildman
Quoted 8 lines
Quoted 2 lines
Isn't holding on to a pretty old compiler for everything somewhat strange? ;-)
Well it's not that old. 4.6 would be old. We do need to be careful not to drop old toolchains too aggressively, although for new platforms such as this is doesn't matter. I try to test with older things to avoid problems applying things to mainline (with Tom's automated tests, etc.)
wrt buildman using certain toolchains, it comes down to the order in which it finds matches for a given arch and then it picks (and I don't recall which off the top of my head) the first or last match.
I do agree that gcc-4.9 isn't something we can drop just yet (as for example it's what'll be used in travis-ci today. But it's getting pretty long in the tooth and we will have to at some point say that "platform X requires gcc-6.x or later" as we start running into hard walls that are solved in 6.x.
Finally, I have no objection to adding TPL_USE_ARCH_MEMSET as an option so that in cases like this it can be disabled due to space just as it is on SPL.
Signature · 8 lines
Tom -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 819 bytes Desc: Digital signature URL: <http://lists.denx.de/pipermail/u-boot/attachments/20170404/ae2c561c/attachment.sig>
Heiko Stuebner
maintainerPATCH 2/3 rockchip: rk3188: Add Radxa Rock board
Am Dienstag, 4. April 2017, 12:29:53 CEST schrieb Tom Rini:
Quoted 29 lines · Simon Glass
Quoted 9 lines · Heiko Stuebner
Quoted 8 lines
I've added Tom for comments, executive summary:
- rk3188-tpl is size limited to 1020 bytes
- gcc 6.3 produces a rk3188-tpl of 792 bytes
- gcc 4.9 makes it 1020 bytes
- buildman seems to always use gcc-4.9
- rk3188 board does not compile with buildmanQuoted 8 lines
Quoted 2 lines
Isn't holding on to a pretty old compiler for everything somewhat strange? ;-)
Well it's not that old. 4.6 would be old. We do need to be careful not to drop old toolchains too aggressively, although for new platforms such as this is doesn't matter. I try to test with older things to avoid problems applying things to mainline (with Tom's automated tests, etc.)
wrt buildman using certain toolchains, it comes down to the order in which it finds matches for a given arch and then it picks (and I don't recall which off the top of my head) the first or last match.
I do agree that gcc-4.9 isn't something we can drop just yet (as for example it's what'll be used in travis-ci today. But it's getting pretty long in the tooth and we will have to at some point say that "platform X requires gcc-6.x or later" as we start running into hard walls that are solved in 6.x.
Quoted 3 lines
Finally, I have no objection to adding
TPL_USE_ARCH_MEMSETas an option so that in cases like this it can be disabled due to space just as it is on SPL.
The problem wasn't ARCH_MEMSET - which already was way outsize the size constraints, but the general memset also being somewhat big, with its slight speed optimizations.
But thanks to Simon's recent patches [0] we got a really nice size- reduction on the Rock's TPL (from 1020 to 488 bytes) . So with these we're really good with all toolchains now.
Heiko
[0] https://www.mail-archive.com/u-boot at lists.denx.de/msg243443.html
PATCH 2/3 rockchip: rk3188: Add Radxa Rock board
Quoted 38 lines · Heiko Stuebner
Am Dienstag, 4. April 2017, 12:29:53 CEST schrieb Tom Rini:
Quoted 29 lines · Simon Glass
Quoted 9 lines · Heiko Stuebner
Quoted 8 lines
I've added Tom for comments, executive summary:
- rk3188-tpl is size limited to 1020 bytes
- gcc 6.3 produces a rk3188-tpl of 792 bytes
- gcc 4.9 makes it 1020 bytes
- buildman seems to always use gcc-4.9
- rk3188 board does not compile with buildmanQuoted 8 lines
Quoted 2 lines
Isn't holding on to a pretty old compiler for everything somewhat strange? ;-)
Well it's not that old. 4.6 would be old. We do need to be careful not to drop old toolchains too aggressively, although for new platforms such as this is doesn't matter. I try to test with older things to avoid problems applying things to mainline (with Tom's automated tests, etc.)
wrt buildman using certain toolchains, it comes down to the order in which it finds matches for a given arch and then it picks (and I don't recall which off the top of my head) the first or last match.
I do agree that gcc-4.9 isn't something we can drop just yet (as for example it's what'll be used in travis-ci today. But it's getting pretty long in the tooth and we will have to at some point say that "platform X requires gcc-6.x or later" as we start running into hard walls that are solved in 6.x.
Quoted 3 lines
Finally, I have no objection to adding
TPL_USE_ARCH_MEMSETas an option so that in cases like this it can be disabled due to space just as it is on SPL.The problem wasn't
ARCH_MEMSET- which already was way outsize the size constraints, but the general memset also being somewhat big, with its slight speed optimizations.
Quoted 8 lines
But thanks to Simon's recent patches [0] we got a really nice size- reduction on the Rock's TPL (from 1020 to 488 bytes) . So with these we're really good with all toolchains now.
Heiko
[0] https://www.mail-archive.com/u-boot at lists.denx.de/msg243443.html
Well, hopefully for the last time, this patch:
Applied to u-boot-rockchip, thanks!
Heiko Stuebner
maintainerPATCH 3/3 rockchip: rk3188: add README.rockchip paragraph describing sd boot
In reply to Heiko StuebnerBuilding sd images for rk3188 requires more steps due to the needed split into TPL and SPL as loaders. Describe how to build an image for it in a separate paragraph in the READER.rockchip file.
--- doc/README.rockchip | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+)
doc/README.rockchip +26 -0
@@ -147,6 +147,32 @@ For evb_rk3036 board: Note: rk3036 SDMMC and debug uart use the same iomux, so if you boot from SD, the debug uart must be disabled + +Booting from an SD card on RK3188 +================================= + +For rk3188 boards the general storage onto the card stays the same as +described above, but the image creation needs a bit more care. + +The bootrom of rk3188 expects to find a small 1kb loader which returns +control to the bootrom, after which it will load the real loader, which +can then be up to 29kb in size and does the regular ddr init. + +Additionally the rk3188 requires everything the bootrom loads to be +rc4-encrypted. Except for the very first stage the bootrom always reads +and decodes 2kb pages, so files should be sized accordingly. + +# copy tpl, pad to 1020 bytes and append spl +cat tpl/u-boot-tpl.bin > tplspl.bin +truncate -s 1020 tplspl.bin +cat spl/u-boot-spl.bin >> tplspl.bin +tools/mkimage -n rk3188 -T rksd -d tplspl.bin out + +# truncate, encode and append u-boot.bin +truncate -s %2048 u-boot.bin +cat u-boot.bin | split -b 512 --filter='openssl rc4 -K 7C4E0304550509072D2C7B38170D1711' >> out + + Using fastboot on rk3288 ======================== - Write GPT partition layout to mmc device which fastboot want to use it to
Signature · 1 line
2.11.0
PATCH 3/3 rockchip: rk3188: add README.rockchip paragraph describing sd boot
Hi Heiko,
Quoted 36 lines · Heiko Stuebner
Building sd images for rk3188 requires more steps due to the needed split into TPL and SPL as loaders. Describe how to build an image for it in a separate paragraph in the READER.rockchip file.
Signed-off-by Heiko Stuebner <[email protected]>--- doc/README.rockchip | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+)doc/README.rockchip +19
-0@@ -147,6 +147,32 @@ For evb_rk3036 board: Note: rk3036 SDMMC and debug uart use the same iomux, so if you boot from SD, the debug uart must be disabled + +Booting from an SD card on RK3188 +================================= + +For rk3188 boards the general storage onto the card stays the same as +described above, but the image creation needs a bit more care. + +The bootrom of rk3188 expects to find a small 1kb loader which returns +control to the bootrom, after which it will load the real loader, which +can then be up to 29kb in size and does the regular ddr init. + +Additionally the rk3188 requires everything the bootrom loads to be +rc4-encrypted. Except for the very first stage the bootrom always reads +and decodes 2kb pages, so files should be sized accordingly. + +# copy tpl, pad to 1020 bytes and append spl +cat tpl/u-boot-tpl.bin > tplspl.bin +truncate -s 1020 tplspl.bin +cat spl/u-boot-spl.bin >> tplspl.bin
doc/README.rockchip For evb_rk3036 board: · line 178
Quoted 10 lines
doc/README.rockchip +7
-0+tools/mkimage -n rk3188 -T rksd -d tplspl.bin out + +# truncate, encode and append u-boot.bin +truncate -s %2048 u-boot.bin +cat u-boot.bin | split -b 512 --filter='openssl rc4 -K 7C4E0304550509072D2C7B38170D1711' >> out + + Using fastboot on rk3288 ======================== - Write GPT partition layout to mmc device which fastboot want to use it to
Thanks,
- Kever
PATCH 3/3 rockchip: rk3188: add README.rockchip paragraph describing sd boot
Quoted 14 lines · Kever Yang
Hi Heiko,
Quoted 10 lines · Heiko Stuebner
Building sd images for rk3188 requires more steps due to the needed split into TPL and SPL as loaders. Describe how to build an image for it in a separate paragraph in the READER.rockchip file.
Signed-off-by Heiko Stuebner <[email protected]>--- doc/README.rockchip | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+)
[...]
Quoted 2 lines
Reviewed-by Kever Yang <[email protected]>
Applied to u-boot-rockchip, thanks!