Browse Source

add basic raspberry-pi0 sample

Waldemar Brodkorb 6 years ago
parent
commit
edd9295105

+ 1 - 1
package/bcm28xx-bootloader/Makefile

@@ -11,7 +11,7 @@ PKG_SECTION:=		base/boot
 PKG_URL:=		https://github.com/raspberrypi/firmware
 PKG_SITES:=		https://github.com/raspberrypi/firmware.git
 
-PKG_SYSTEM_DEPENDS:=	raspberry-pi raspberry-pi2 raspberry-pi3 raspberry-pi3-64
+PKG_SYSTEM_DEPENDS:=	raspberry-pi raspberry-pi0 raspberry-pi2 raspberry-pi3 raspberry-pi3-64
 
 PKG_CHOICES_BCM28XX_BOOTLOADER:=	DEFAULT EXTRA CUTDOWN
 PKGCD_DEFAULT:=		default bootloader

+ 1 - 1
package/bcm28xx-vc/Makefile

@@ -26,7 +26,7 @@ PKGSC_BCM28XX_VC_GL_LIBS:=libs/video
 PKGSS_BCM28XX_VC_GL_LIBS:=bcm28xx-vc-libs
 PKGSD_BCM28XX_VC_GL_LIBS:=videocore gl library
 
-PKG_SYSTEM_DEPENDS:=	raspberry-pi raspberry-pi2 raspberry-pi3 raspberry-pi3-64
+PKG_SYSTEM_DEPENDS:=	raspberry-pi raspberry-pi0 raspberry-pi2 raspberry-pi3 raspberry-pi3-64
 
 include $(ADK_TOPDIR)/mk/package.mk
 

+ 9 - 9
scripts/install.sh

@@ -144,7 +144,7 @@ tgt=$2
 src=$3
 
 case $target {
-(banana-pro|pcengines-apu|raspberry-pi|raspberry-pi2|raspberry-pi3|raspberry-pi3-64|solidrun-imx6|solidrun-clearfog|default) ;;
+(banana-pro|pcengines-apu|raspberry-pi|raspberry-pi0|raspberry-pi2|raspberry-pi3|raspberry-pi3-64|solidrun-imx6|solidrun-clearfog|default) ;;
 (*)
 	print -u2 "Unknown target '$target', exiting"
 	exit 1 ;;
@@ -167,7 +167,7 @@ case $ostype {
 	basedev=$tgt
 	rootpart=${basedev}s1
 	datapart=${basedev}s2
-	if [[ $target = raspberry-pi || $target = raspberry-pi2 || $target = raspberry-pi3 || $target = raspberry-pi3-64 ]]; then
+	if [[ $target = raspberry-pi || $target = raspberry-pi0 || $target = raspberry-pi2 || $target = raspberry-pi3 || $target = raspberry-pi3-64 ]]; then
 		bootpart=${basedev}s1
 		rootpart=${basedev}s2
 		datapart=${basedev}s3
@@ -200,7 +200,7 @@ case $ostype {
 
 	rootpart=${basedev}${partitionsep}1
 	datapart=${basedev}${partitionsep}2
-	if [[ $target = raspberry-pi || $target = raspberry-pi2 || $target = raspberry-pi3 || $target = raspberry-pi3-64 ]]; then
+	if [[ $target = raspberry-pi || $target = raspberry-pi0 || $target = raspberry-pi2 || $target = raspberry-pi3 || $target = raspberry-pi3-64 ]]; then
 		bootpart=${basedev}${partitionsep}1
 		rootpart=${basedev}${partitionsep}2
 		datapart=${basedev}${partitionsep}3
@@ -263,7 +263,7 @@ syspartno=0
 # data - flexible (parameter)
 # system - everything else
 
-if [[ $target = raspberry-pi || $target = raspberry-pi2 || $target = raspberry-pi3 || $target = raspberry-pi3-64 ]]; then
+if [[ $target = raspberry-pi || $target = raspberry-pi0 || $target = raspberry-pi2 || $target = raspberry-pi3 || $target = raspberry-pi3-64 ]]; then
 	syspartno=1
 	bootfssz=100
 	if (( grub )); then
@@ -320,7 +320,7 @@ fi
 #(( partofs = ((coreendsec / secs) + 1) * secs ))
 # we just use 2048 all the time, since some loaders are longer
 partofs=2048
-if [[ $target = raspberry-pi || $target = raspberry-pi2 || $target = raspberry-pi3 || $target = raspberry-pi3-64 ]]; then
+if [[ $target = raspberry-pi || $target = raspberry-pi0 || $target = raspberry-pi2 || $target = raspberry-pi3 || $target = raspberry-pi3-64 ]]; then
 	(( spartofs = partofs + (100 * 2048) ))
 else
 	spartofs=$partofs
@@ -431,7 +431,7 @@ if (( datafssz )); then
 	    dd of="$T/firsttrack" conv=notrunc bs=1 seek=$((0x1CE)) 2>/dev/null
 fi
 
-if [[ $target = raspberry-pi || $target = raspberry-pi2 || $target = raspberry-pi3 || $target = raspberry-pi3-64 ]]; then
+if [[ $target = raspberry-pi || $target = raspberry-pi0 || $target = raspberry-pi2 || $target = raspberry-pi3 || $target = raspberry-pi3-64 ]]; then
 	# move system and data partition from #0/#1 to #1/#2
 	dd if="$T/firsttrack" bs=1 skip=$((0x1BE)) count=32 of="$T/x" 2>/dev/null
 	dd of="$T/firsttrack" conv=notrunc bs=1 seek=$((0x1CE)) if="$T/x" 2>/dev/null
@@ -521,7 +521,7 @@ case $target {
 	dd if="$fwdir/SPL" of="$tgt" bs=1024 seek=1 > /dev/null 2>&1
 	dd if="$fwdir/u-boot.img" of="$tgt" bs=1024 seek=69 > /dev/null 2>&1
 	;;
-(raspberry-pi|raspberry-pi2|raspberry-pi3|raspberry-pi3-64)
+(raspberry-pi|raspberry-pi0|raspberry-pi2|raspberry-pi3|raspberry-pi3-64)
 	(( noformat )) || create_fs "$bootpart" ADKBOOT vfat
 	;;
 }
@@ -538,7 +538,7 @@ if (( datafssz )); then
 	((keep)) || create_fs "$datapart" ADKDATA ext4
 	((keep)) || tune_fs "$datapart"
 	case $target {
-	(raspberry-pi|raspberry-pi2|raspberry-pi3|raspberry-pi3-64)
+	(raspberry-pi|raspberry-pi0|raspberry-pi2|raspberry-pi3|raspberry-pi3-64)
 		echo "/dev/mmcblk0p3	/data	ext4	rw	0	0" >> "$R"/etc/fstab 
 	;;
 	(banana-pro|solidrun-imx6|solidrun-clearfog)
@@ -548,7 +548,7 @@ if (( datafssz )); then
 fi
 
 case $target {
-(raspberry-pi|raspberry-pi2|raspberry-pi3|raspberry-pi3-64)
+(raspberry-pi|raspberry-pi0|raspberry-pi2|raspberry-pi3|raspberry-pi3-64)
 	mount_fs "$bootpart" "$B" vfat
 	for x in "$R"/boot/*; do
 		[[ -e "$x" ]] && mv -f "$R"/boot/* "$B/"

+ 23 - 0
target/arm/kernel/raspberry-pi0

@@ -0,0 +1,23 @@
+CONFIG_ARM=y
+CONFIG_ARM_PATCH_PHYS_VIRT=y
+CONFIG_ARCH_MULTIPLATFORM=y
+CONFIG_ARCH_MULTI_V6=y
+CONFIG_ARCH_BCM=y
+CONFIG_ARCH_BCM2835=y
+CONFIG_VMSPLIT_2G=y
+CONFIG_PAGE_OFFSET=0x80000000
+CONFIG_KUSER_HELPERS=y
+CONFIG_ARM_AMBA=y
+CONFIG_BRCM_CHAR_DRIVERS=y
+CONFIG_BCM_VC_CMA=y
+CONFIG_BCM2708_VCMEM=y
+CONFIG_BCM_VCIO=y
+CONFIG_BCM_VC_SM=y
+CONFIG_BCMA=y
+CONFIG_BCMA_BLOCKIO=y
+CONFIG_BCM2708_VCHIQ=y
+CONFIG_MAILBOX=y
+CONFIG_BCM2835_MBOX=y
+CONFIG_RASPBERRYPI_POWER=y
+CONFIG_RASPBERRYPI_FIRMWARE=y
+CONFIG_STAGING=y

+ 23 - 0
target/arm/systems/raspberry-pi0

@@ -0,0 +1,23 @@
+config ADK_TARGET_SYSTEM_RASPBERRY_PI0
+	bool "Raspberry PI0"
+	depends on ADK_TARGET_LITTLE_ENDIAN
+	select ADK_TARGET_CPU_ARM_ARM1176JZF_S
+	select ADK_TARGET_BOARD_BCM28XX
+	select ADK_TARGET_WITH_VGA
+	select ADK_TARGET_WITH_SERIAL
+	select ADK_TARGET_WITH_CPU_FREQ
+	select ADK_TARGET_WITH_USB
+	select ADK_TARGET_WITH_INPUT
+	select ADK_TARGET_WITH_SD
+	select ADK_TARGET_WITH_I2C
+	select ADK_TARGET_WITH_SPI
+	select ADK_TARGET_WITH_NET
+	select ADK_TARGET_WITH_NETDEVICE
+	select ADK_TARGET_WITH_BLOCK
+	select ADK_TARGET_WITH_SOUND
+	select ADK_PACKAGE_BCM28XX_BOOTLOADER
+	select ADK_TARGET_WITH_ROOT_RW
+	select ADK_TARGET_KERNEL_IMAGE
+	help
+	  Raspberry PI0
+