aboutsummaryrefslogtreecommitdiffstats
path: root/platforms/bananaPro/README.md
diff options
context:
space:
mode:
Diffstat (limited to 'platforms/bananaPro/README.md')
-rw-r--r--platforms/bananaPro/README.md120
1 files changed, 120 insertions, 0 deletions
diff --git a/platforms/bananaPro/README.md b/platforms/bananaPro/README.md
new file mode 100644
index 0000000..8b68d53
--- /dev/null
+++ b/platforms/bananaPro/README.md
@@ -0,0 +1,120 @@
+Banana Pro SBC
+==========
+
+Short
+-----
+* [Board Informations](#SBC_INFO)
+* [U-Boot](#UBOOT_INFO)
+* [Kernel](#KERNEL_INFO)
+
+<a id="SBC_INFO"/>
+# About the Banana Pro SBC from LeMaker
+
+## External links
+http://wiki.lemaker.org/BananaPro/Pi:Building_u-boot,_script.bin_and_linux-kernel#Building_the_kernel
+http://wiki.lemaker.org/BananaPro/Pi:Setting_up_the_bootable_SD_card
+https://sites.google.com/site/manisbutareed/bringing-my-beagles-to-heel/selected-annotated-u-boot-commands
+https://linux-sunxi.org/Mainline_Kernel_Howto
+https://linux-sunxi.org/Manual_build_howto#Setting_up_the_boot_partition
+https://stackoverflow.com/questions/28891221/uenv-txt-vs-boot-scr
+https://github.com/linux-sunxi/u-boot-sunxi/wiki
+
+## LeMaker BPS (board package support)
+git clone --recursive https://github.com/LeMaker/lemaker-bsp.git
+./fex2bin ../sunxi-boards/sys_config/a20/BananaPro.fex ../../mageia4arm/bananaPro/script.bin
+
+<a id="UBOOT_INFO"/>
+# About U-Boot
+The mainline U-Boot is used for this port.
+## Mainline
+```
+CONFIG_PATH=~/workspaces/mageia4arm/platforms/bananaPro
+git clone https://gitlab.denx.de/u-boot/u-boot
+cd u-boot
+make CROSS_COMPILE=arm-linux-gnu- Bananapro_defconfig
+cp ${CONFIG_PATH}/UBOOT.config ./.config
+#Just modify few unimportant things, like prompt, name, ...
+make ARCH=arm CROSS_COMPILE=arm-linux-gnu- -j8
+make ARCH=arm CROSS_COMPILE=arm-linux-gnu-
+#cp ./u-boot.dtb ${CONFIG_PATH}/sun7i-a20-bananapro.dtb
+cp -f ./u-boot.dtb ${CONFIG_PATH}/u-boot.dtb
+cp -f ./arch/arm/dts/sun7i-a20-bananapro.dtb ${CONFIG_PATH}/sun7i-a20-bananapro.dtb
+cp -f ./u-boot-sunxi-with-spl.bin ${CONFIG_PATH}/u-boot-sunxi-with-spl.bin
+#Inside "specialFunctions.sh"
+#dd if=${CONFIG_PATH}/u-boot-sunxi-with-spl.bin of=${DEVICE} bs=1024 seek=8
+
+echo '
+setenv KERNEL_FILE /boot/vmlinuz
+setenv INIT_FILE /boot/initrd.img
+#setenv DTB_FILE /boot/sun7i-a20-bananapro.dtb
+setenv DTB_FILE /boot/u-boot.dtb
+
+setenv KERNEL_ADDR 0x40008000
+#setenv INIT_ADDR 0x45000000
+setenv INIT_ADDR -
+setenv DTB_ADDR 0x48000000
+
+ext4load mmc 0:1 ${KERNEL_ADDR} ${KERNEL_FILE}
+#ext4load mmc 0:1 ${INIT_ADDR} ${INIT_FILE}
+ext4load mmc 0:1 ${DTB_ADDR} ${DTB_FILE}
+
+setenv bootargs console=ttyS0,115200 disp.screen0_output_mode=EDID:1024x768p50 hdmi.audio=EDID:0 root=/dev/mmcblk0p1 rootfstype=ext4 elevator=deadline rootwait
+
+#printenv
+bootz ${KERNEL_ADDR} ${INIT_ADDR} ${DTB_ADDR}
+
+#Compile boot.scr : mkimage -C none -A arm -T script -d "${CONFIG_PATH}/boot.cmd" "${CONFIG_PATH}/boot.scr"
+' >${CONFIG_PATH}/boot.cmd
+```
+
+mkimage -C none -A arm -T script -d ${CONFIG_PATH}/boot.cmd ${CONFIG_PATH}/boot.scr
+
+## UBoot Sunxi From LeMaker
+Obsolet, see 'LeMaker BPS (board package support)'.
+
+## UBoot Sunxi
+Generic u-boot for sunxi
+```
+git clone https://github.com/linux-sunxi/u-boot-sunxi
+make CROSS_COMPILE=arm-linux-gnu- Bananapro_config
+make CROSS_COMPILE=arm-linux-gnu- -j8
+make CROSS_COMPILE=arm-linux-gnu-
+#Need network support to give the MAC address.
+#Do not activate boot timing.
+#Default conf use bootz and dtb tree.
+```
+
+## Default LeMaker script
+```
+setenv bootargs console=ttyS0,115200 noinitrd
+disp.screen0_output_mode=EDID:1280x720p50 init=/init
+root=/dev/mmcblk0p2 rootwait panic=10 ${extra}
+fatload mmc 0 0x43000000 script.bin
+fatload mmc 0 0x48000000 uImage
+bootm 0x48000000
+```
+
+## DTB from Linux Mainline
+```
+git clone git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git --depth=1
+make ARCH=arm CROSS_COMPILE=arm-linux-gnu- sunxi_defconfig
+ARCH=arm CROSS_COMPILE=arm-linux-gnu- make -j8 dtbs
+cp ./arch/arm/boot/dts/sun7i-a20-bananapro.dtb ./sun7i-a20-bananapro.dtb
+```
+
+<a id="KERNEL_INFO"/>
+# About the Kernel
+
+Not Written.
+
+## Generate symlink
+```
+#Generating a symbolic relative link to the "last" kernel :
+ln -r -s ./vmlinuz-5.2.13-desktop-2.mga7 ./vmlinuz
+rm -f ./vmlinuz && ln -r -s ./vmlinuz-5.3.1-desktop-2.mga7 ./vmlinuz
+```
+
+## Commands used :
+./create_arm_img_urpmi.sh --clean --config bananaPro --build-path ./build
+./create_arm_img_urpmi.sh --all --target bananaPro --size 2 --tainted --nonfree --build-path ./build --config bananaPro 2>&1 | tee -a ./log/creation.log
+dd if=./build/Mageia-7-bananaPro1.img | pv | dd of=/dev/mmcblk0 ; sync