configs/rock64: new defconfig

Re-introduced rock64_defconfig which was dropped by commit
a5fa2469e6 ('Revert
"configs/rock64_defconfig: remove defconfig"').

Signed-off-by: Min Xu <xuminready@gmail.com>
Tested-by: Michał Łyszczek <michal.lyszczek@bofc.pl>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
This commit is contained in:
Min Xu 2020-12-15 00:49:03 +00:00 committed by Thomas Petazzoni
parent 1dcbd3f602
commit c15425b2f8
7 changed files with 205 additions and 0 deletions

View File

@ -1867,6 +1867,8 @@ F: package/libavl/
N: Michał Łyszczek <michal.lyszczek@bofc.pl>
F: board/altera/socrates_cyclone5/
F: board/pine64/rock64
F: configs/rock64_defconfig
F: configs/socrates_cyclone5_defconfig
F: package/netifrc/
F: package/openrc/

View File

@ -0,0 +1,4 @@
label rock64-buildroot
kernel /boot/Image
devicetree /boot/rk3328-rock64.dtb
append console=ttyS2,1500000n8 root=/dev/mmcblk0p1 ro rootwait

View File

@ -0,0 +1,23 @@
image sdcard.img {
hdimage {
}
partition uboot-spl {
in-partition-table = "no"
image = "u-boot-tpl-spl.img"
offset = 32768 # 512 * 0x40 from start of sd card
}
partition uboot {
in-partition-table = "no"
image = "u-boot.itb"
offset = 262144 # 512 * 0x200 from start of sd card
}
partition rootfs {
partition-type = 0x83
bootable = "yes"
image = "rootfs.ext2"
size = 500M
}
}

View File

@ -0,0 +1,32 @@
From 211bf049084e6e374dac253138fa813682910146 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Micha=C5=82=20=C5=81yszczek?= <michal.lyszczek@bofc.pl>
Date: Tue, 5 Feb 2019 22:08:54 +0100
Subject: [PATCH] Makefile: rk3328 needs itb image to boot properly
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Signed-off-by: Michał Łyszczek <michal.lyszczek@bofc.pl>
---
Makefile | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/Makefile b/Makefile
index 8086f3c93e..a6425b5b03 100644
--- a/Makefile
+++ b/Makefile
@@ -799,6 +799,11 @@ ifneq ($(BUILD_ROM),)
ALL-$(CONFIG_X86_RESET_VECTOR) += u-boot.rom
endif
+# rk3328 needs itb image to boot properly
+ifeq ($(CONFIG_ROCKCHIP_RK3328),y)
+ALL-y += u-boot.itb
+endif
+
# enable combined SPL/u-boot/dtb rules for tegra
ifeq ($(CONFIG_TEGRA)$(CONFIG_SPL),yy)
ALL-y += u-boot-tegra.bin u-boot-nodtb-tegra.bin
--
2.18.1

View File

@ -0,0 +1,9 @@
#!/bin/sh
MKIMAGE=$HOST_DIR/bin/mkimage
BOARD_DIR="$(dirname $0)"
$MKIMAGE -n rk3328 -T rksd -d $BINARIES_DIR/u-boot-tpl.bin $BINARIES_DIR/u-boot-tpl.img
cat $BINARIES_DIR/u-boot-tpl.img $BINARIES_DIR/u-boot-spl.bin > $BINARIES_DIR/u-boot-tpl-spl.img
install -m 0644 -D $BOARD_DIR/extlinux.conf $TARGET_DIR/boot/extlinux/extlinux.conf

View File

@ -0,0 +1,95 @@
Intro
=====
This default configuration will allow you to start experimenting with the
buildroot environment for the Rock64. With this default configuration you
can log in into board via uart and look around.
Board homepage: https://www.pine64.org/?page_id=7147
Build
=====
First, load rock64 config for buildroot
$ make rock64_defconfig
Optionally make changes to buildroot config (to install more programs)
$ make menuconfig
And then build everything
$ make
When completed, following files will be generated in output/images directory:
.
├── Image
├── bl31.bin
├── bl31.elf
├── rk3328-rock64.dtb
├── rootfs.ext2
├── rootfs.ext4 -> rootfs.ext2
├── rootfs.tar
├── sdcard.img
├── u-boot-spl.bin
├── u-boot-tpl-spl.img
├── u-boot-tpl.bin
├── u-boot-tpl.img
├── u-boot.bin
└── u-boot.itb
Creating bootable SD card
=========================
!!! THIS COMMAND MAY WIPE YOUR DISK!
!!! MAKE SURE YOU PASSED CORRECT DEVICE!
!!! OR IT THIS WILL WIPE YOUR DISK!
Simply invoke (as root)
# dd if=output/images/sdcard.img of=/dev/sdX && sync
Where X is your SD card device (not partition), of= argument may also be
/dev/mmcblk0 if you are using built-in sd card reader.
Runtime
=======
Login
-----
By default, buildroot has no password, just type 'root' as login user, and
you will be logged in.
Serial console
--------------
Serial console needs to be connected to pins (into 40pin rpi compatible part)
pin 6: gnd
pin 8: tx
pin 10: rx
Pin numbers are printed on board.
Uart configuration is not standard. Rock64 uses 1500000 (1,5M) baudrate
with standard 8n1.
Ethernet
--------
To enable ethernet you need to load modules for it:
# modprobe stmmac
# modprobe dwmac-rk
and since by default there is no dhcp installed, you need to configure ip
address, remember to change address to fit your network.
# ifconfig eth0 up
# ip addr add 10.1.1.180/24 dev eth0
# ping 10.1.1.1
PING 10.1.1.1 (10.1.1.1): 56 data bytes
64 bytes from 10.1.1.1: seq=0 ttl=64 time=0.695 ms

40
configs/rock64_defconfig Normal file
View File

@ -0,0 +1,40 @@
BR2_aarch64=y
BR2_GLOBAL_PATCH_DIR="board/pine64/rock64/patches"
BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_19=y
BR2_TARGET_GENERIC_GETTY_PORT="ttyS2"
BR2_ROOTFS_POST_BUILD_SCRIPT="board/pine64/rock64/post-build.sh"
BR2_ROOTFS_POST_IMAGE_SCRIPT="support/scripts/genimage.sh"
BR2_ROOTFS_POST_SCRIPT_ARGS="-c board/pine64/rock64/genimage.cfg"
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_VERSION=y
BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.19.19"
BR2_LINUX_KERNEL_USE_ARCH_DEFAULT_CONFIG=y
BR2_LINUX_KERNEL_DTS_SUPPORT=y
BR2_LINUX_KERNEL_INTREE_DTS_NAME="rockchip/rk3328-rock64"
BR2_LINUX_KERNEL_INSTALL_TARGET=y
BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL=y
BR2_TARGET_ROOTFS_EXT2=y
BR2_TARGET_ROOTFS_EXT2_4=y
BR2_TARGET_ROOTFS_EXT2_SIZE="128M"
BR2_TARGET_ARM_TRUSTED_FIRMWARE=y
BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_VERSION=y
BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_VERSION_VALUE="v2.2"
BR2_TARGET_ARM_TRUSTED_FIRMWARE_PLATFORM="rk3328"
BR2_TARGET_ARM_TRUSTED_FIRMWARE_IMAGES="bl31/*.elf"
BR2_TARGET_UBOOT=y
BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y
BR2_TARGET_UBOOT_CUSTOM_GIT=y
BR2_TARGET_UBOOT_CUSTOM_REPO_URL="https://github.com/ayufan-rock64/linux-mainline-u-boot.git"
BR2_TARGET_UBOOT_CUSTOM_REPO_VERSION="release-2020-07"
BR2_TARGET_UBOOT_BOARD_DEFCONFIG="rock64-rk3328"
BR2_TARGET_UBOOT_NEEDS_DTC=y
BR2_TARGET_UBOOT_NEEDS_PYTHON3=y
BR2_TARGET_UBOOT_NEEDS_PYLIBFDT=y
BR2_TARGET_UBOOT_NEEDS_ATF_BL31=y
BR2_TARGET_UBOOT_NEEDS_ATF_BL31_ELF=y
BR2_TARGET_UBOOT_FORMAT_CUSTOM=y
BR2_TARGET_UBOOT_FORMAT_CUSTOM_NAME="u-boot.itb"
BR2_TARGET_UBOOT_SPL=y
BR2_TARGET_UBOOT_SPL_NAME="spl/u-boot-spl.bin tpl/u-boot-tpl.bin"
BR2_PACKAGE_HOST_GENIMAGE=y
BR2_PACKAGE_HOST_UBOOT_TOOLS=y