From 4106b9bfce4a928c7ef14aec4137ecf9508471a6 Mon Sep 17 00:00:00 2001 From: Thomas Klaehn Date: Tue, 12 Mar 2019 08:58:52 +0100 Subject: [PATCH] meta-blackfinn: Unify layer structure Signed-off-by: Thomas Klaehn --- buildconf/bananapi-m3/bblayers.conf.sample | 16 ++ buildconf/bananapi-m3/conf-notes.txt | 8 + buildconf/bananapi-m3/local.conf.sample | 41 +++++ buildconf/bbb-init-build-env | 9 -- .../beaglebone-yocto/bblayers.conf.sample | 16 ++ buildconf/beaglebone-yocto/conf-notes.txt | 8 + buildconf/beaglebone-yocto/local.conf.sample | 42 +++++ buildconf/blackfinn-init-build-env | 56 +++++++ buildconf/default-init-build-env | 16 -- .../raspberrypi3-64/bblayers.conf.sample | 17 ++ buildconf/raspberrypi3-64/conf-notes.txt | 8 + buildconf/raspberrypi3-64/local.conf.sample | 37 +++++ buildconf/rpi-init-build-env | 10 -- conf/layer.conf | 1 - .../u-boot/files/beaglebone-yocto/uEnv.txt | 26 +++ recipes-bsp/u-boot/u-boot_%.bbappend | 8 + .../base-files/base-files_3.0.14.bbappend | 2 + .../base-files/files/bananapi-m3/motd | 12 ++ .../base-files/files/beaglebone-yocto/motd | 12 ++ .../base-files/files/raspberrypi3_64/motd | 12 ++ .../images}/console-image.bb | 6 +- .../files/beaglebone-yocto/interfaces | 32 ++++ .../files/raspberrypi3_64/interfaces | 22 +++ .../init-ifupdown_1.0.bbappend | 2 + .../opkg/files/bananapi-m3/opkg.conf | 32 ++++ .../opkg/files/beaglebone-yocto/opkg.conf | 32 ++++ .../opkg/files/raspberrypi3_64/opkg.conf | 32 ++++ recipes-devtools/opkg/opkg_0.%.bbappend | 2 + .../linux/files/bananapi-m3/defconfig | 153 ++++++++++++++++++ .../0002-onboard-led-init-disable.patch | 37 +++++ .../beaglebone-yocto/enable_hostap_wext.cfg | 12 ++ .../beaglebone-yocto/enable_onboard_leds.cfg | 19 +++ .../files/beaglebone-yocto/rtl8192cu.cfg | 5 + .../linux/linux-mainline_4.20.15.bb | 27 ++++ .../linux/linux-yocto_4.18.bbappend | 18 +++ 35 files changed, 750 insertions(+), 38 deletions(-) create mode 100644 buildconf/bananapi-m3/bblayers.conf.sample create mode 100644 buildconf/bananapi-m3/conf-notes.txt create mode 100644 buildconf/bananapi-m3/local.conf.sample delete mode 100644 buildconf/bbb-init-build-env create mode 100644 buildconf/beaglebone-yocto/bblayers.conf.sample create mode 100644 buildconf/beaglebone-yocto/conf-notes.txt create mode 100644 buildconf/beaglebone-yocto/local.conf.sample create mode 100644 buildconf/blackfinn-init-build-env delete mode 100644 buildconf/default-init-build-env create mode 100644 buildconf/raspberrypi3-64/bblayers.conf.sample create mode 100644 buildconf/raspberrypi3-64/conf-notes.txt create mode 100644 buildconf/raspberrypi3-64/local.conf.sample delete mode 100644 buildconf/rpi-init-build-env create mode 100644 recipes-bsp/u-boot/files/beaglebone-yocto/uEnv.txt create mode 100644 recipes-bsp/u-boot/u-boot_%.bbappend create mode 100644 recipes-core/base-files/base-files_3.0.14.bbappend create mode 100644 recipes-core/base-files/files/bananapi-m3/motd create mode 100644 recipes-core/base-files/files/beaglebone-yocto/motd create mode 100644 recipes-core/base-files/files/raspberrypi3_64/motd rename {images => recipes-core/images}/console-image.bb (88%) create mode 100644 recipes-core/init-ifupdown-1.0/files/beaglebone-yocto/interfaces create mode 100644 recipes-core/init-ifupdown-1.0/files/raspberrypi3_64/interfaces create mode 100644 recipes-core/init-ifupdown-1.0/init-ifupdown_1.0.bbappend create mode 100644 recipes-devtools/opkg/files/bananapi-m3/opkg.conf create mode 100644 recipes-devtools/opkg/files/beaglebone-yocto/opkg.conf create mode 100644 recipes-devtools/opkg/files/raspberrypi3_64/opkg.conf create mode 100644 recipes-devtools/opkg/opkg_0.%.bbappend create mode 100644 recipes-kernel/linux/files/bananapi-m3/defconfig create mode 100644 recipes-kernel/linux/files/beaglebone-yocto/0002-onboard-led-init-disable.patch create mode 100644 recipes-kernel/linux/files/beaglebone-yocto/enable_hostap_wext.cfg create mode 100644 recipes-kernel/linux/files/beaglebone-yocto/enable_onboard_leds.cfg create mode 100644 recipes-kernel/linux/files/beaglebone-yocto/rtl8192cu.cfg create mode 100644 recipes-kernel/linux/linux-mainline_4.20.15.bb create mode 100644 recipes-kernel/linux/linux-yocto_4.18.bbappend diff --git a/buildconf/bananapi-m3/bblayers.conf.sample b/buildconf/bananapi-m3/bblayers.conf.sample new file mode 100644 index 0000000..2d1347f --- /dev/null +++ b/buildconf/bananapi-m3/bblayers.conf.sample @@ -0,0 +1,16 @@ +# POKY_BBLAYERS_CONF_VERSION is increased each time build/conf/bblayers.conf +# changes incompatibly +POKY_BBLAYERS_CONF_VERSION = "2" + +BBPATH = "${TOPDIR}" +BBFILES ?= "" + +BBLAYERS ?= " \ + ${TOPDIR}/../layers/poky/meta \ + ${TOPDIR}/../layers/poky/meta-poky \ + ${TOPDIR}/../layers/meta-openembedded/meta-oe \ + ${TOPDIR}/../layers/meta-openembedded/meta-networking \ + ${TOPDIR}/../layers/meta-openembedded/meta-python \ + ${TOPDIR}/../layers/meta-blackfinn \ + ${TOPDIR}/../layers/meta-sunxi \ + " diff --git a/buildconf/bananapi-m3/conf-notes.txt b/buildconf/bananapi-m3/conf-notes.txt new file mode 100644 index 0000000..36009da --- /dev/null +++ b/buildconf/bananapi-m3/conf-notes.txt @@ -0,0 +1,8 @@ +Common targets are: + console-image + core-image-minimal + core-image-sato + meta-toolchain + adt-installer + meta-ide-support + diff --git a/buildconf/bananapi-m3/local.conf.sample b/buildconf/bananapi-m3/local.conf.sample new file mode 100644 index 0000000..f73d44b --- /dev/null +++ b/buildconf/bananapi-m3/local.conf.sample @@ -0,0 +1,41 @@ +MACHINE ?= "bananapi-m3" + +#DL_DIR ?= "${TOPDIR}/../../downloads" +#SSTATE_DIR ?= "${TOPDIR}/../../sstate-cache" +#TMPDIR = "${TOPDIR}/tmp" + +DISTRO ?= "poky" +PACKAGE_CLASSES ?= "package_ipk" + +#SDKMACHINE ?= "i686" + +#EXTRA_IMAGE_FEATURES ?= "debug-tweaks" + +USER_CLASSES ?= "buildstats image-mklibs image-prelink" + +PATCHRESOLVE = "noop" + +BB_DISKMON_DIRS = "\ + STOPTASKS,${TMPDIR},1G,100K \ + STOPTASKS,${DL_DIR},1G,100K \ + STOPTASKS,${SSTATE_DIR},1G,100K \ + STOPTASKS,/tmp,100M,100K \ + ABORT,${TMPDIR},100M,1K \ + ABORT,${DL_DIR},100M,1K \ + ABORT,${SSTATE_DIR},100M,1K \ + ABORT,/tmp,10M,1K" + +#SSTATE_MIRRORS ?= "\ +#file://.* http://someserver.tld/share/sstate/PATH;downloadfilename=PATH \n \ +#file://.* file:///some/local/dir/sstate/PATH" + +CONF_VERSION = "1" + +INHERIT += "rm_work" + +INHERIT += "own-mirrors" +SOURCE_MIRROR_URL = "https://files.blackfinn.de/mirror/sources" +BB_GENERATE_MIRROR_TARBALLS = "1" + +export BB_ENV_EXTRAWHITE="$BB_ENV_EXTRAWHITE DL_DIR" + diff --git a/buildconf/bbb-init-build-env b/buildconf/bbb-init-build-env deleted file mode 100644 index 0d9daa1..0000000 --- a/buildconf/bbb-init-build-env +++ /dev/null @@ -1,9 +0,0 @@ -OPT_M=beaglebone-yocto -BUILD_DIR=build - -export TEMPLATECONF="../meta-bbb/buildconf" - -source layers/meta-blackfinn/buildconf/default-init-build-env $BUILD_DIR - -return 0 - diff --git a/buildconf/beaglebone-yocto/bblayers.conf.sample b/buildconf/beaglebone-yocto/bblayers.conf.sample new file mode 100644 index 0000000..2604ba7 --- /dev/null +++ b/buildconf/beaglebone-yocto/bblayers.conf.sample @@ -0,0 +1,16 @@ +# POKY_BBLAYERS_CONF_VERSION is increased each time build/conf/bblayers.conf +# changes incompatibly +POKY_BBLAYERS_CONF_VERSION = "2" + +BBPATH = "${TOPDIR}" +BBFILES ?= "" + +BBLAYERS ?= " \ + ${TOPDIR}/../layers/poky/meta \ + ${TOPDIR}/../layers/poky/meta-poky \ + ${TOPDIR}/../layers/poky/meta-yocto-bsp \ + ${TOPDIR}/../layers/meta-openembedded/meta-oe \ + ${TOPDIR}/../layers/meta-openembedded/meta-networking \ + ${TOPDIR}/../layers/meta-openembedded/meta-python \ + ${TOPDIR}/../layers/meta-blackfinn \ + " diff --git a/buildconf/beaglebone-yocto/conf-notes.txt b/buildconf/beaglebone-yocto/conf-notes.txt new file mode 100644 index 0000000..36009da --- /dev/null +++ b/buildconf/beaglebone-yocto/conf-notes.txt @@ -0,0 +1,8 @@ +Common targets are: + console-image + core-image-minimal + core-image-sato + meta-toolchain + adt-installer + meta-ide-support + diff --git a/buildconf/beaglebone-yocto/local.conf.sample b/buildconf/beaglebone-yocto/local.conf.sample new file mode 100644 index 0000000..b7fd35e --- /dev/null +++ b/buildconf/beaglebone-yocto/local.conf.sample @@ -0,0 +1,42 @@ +MACHINE ?= "beaglebone-yocto" + +#DL_DIR ?= "${TOPDIR}/../../downloads" +#SSTATE_DIR ?= "${TOPDIR}/../../sstate-cache" +#TMPDIR = "${TOPDIR}/tmp" + +DISTRO ?= "poky" +PACKAGE_CLASSES ?= "package_ipk" + +#SDKMACHINE ?= "i686" + +#EXTRA_IMAGE_FEATURES ?= "debug-tweaks" + +USER_CLASSES ?= "buildstats image-mklibs image-prelink" + +IMAGE_BOOT_FILES_append = " uEnv.txt" + +PATCHRESOLVE = "noop" + +BB_DISKMON_DIRS = "\ + STOPTASKS,${TMPDIR},1G,100K \ + STOPTASKS,${DL_DIR},1G,100K \ + STOPTASKS,${SSTATE_DIR},1G,100K \ + STOPTASKS,/tmp,100M,100K \ + ABORT,${TMPDIR},100M,1K \ + ABORT,${DL_DIR},100M,1K \ + ABORT,${SSTATE_DIR},100M,1K \ + ABORT,/tmp,10M,1K" + +#SSTATE_MIRRORS ?= "\ +#file://.* http://someserver.tld/share/sstate/PATH;downloadfilename=PATH \n \ +#file://.* file:///some/local/dir/sstate/PATH" + +CONF_VERSION = "1" + +INHERIT += "rm_work" + +INHERIT += "own-mirrors" +SOURCE_MIRROR_URL = "https://files.blackfinn.de/mirror/sources" +BB_GENERATE_MIRROR_TARBALLS = "1" + +export BB_ENV_EXTRAWHITE="$BB_ENV_EXTRAWHITE DL_DIR" diff --git a/buildconf/blackfinn-init-build-env b/buildconf/blackfinn-init-build-env new file mode 100644 index 0000000..5578835 --- /dev/null +++ b/buildconf/blackfinn-init-build-env @@ -0,0 +1,56 @@ +function print_help { + echo "" + echo "Prepare environment for blackfinn-based yocto builds." + echo "" + echo "Usage:" + echo "MACHINE= source blackfinn-init-build-env " + echo "" + echo "MACHINE is optional. if not specified it defaults to 'qemuarm-64'." + echo "Supported machines:" + echo -e "\tqemuarm\n\tqemuarm64\n\tqemumips\n\tqemumips64\n\tqemuppc" + echo -e "\tqemux86\n\tqemux86-64\n" + echo -e "\tbeaglebone-yocto\n\tedgerouter\n\tgenericx86\n\tgenericx86-64\n\tmpc8315e-rdb\n" + echo -e "\traspberrypi3-64\n\tbananapi-m3" + echo "" + echo " is optional. If not specified it defaults to 'build'." + echo "" +} + +function print_config { + echo "Configuration:" + echo " MACHINE: $1" + echo " BUILD_DIR: $2" +} + + +DEFAULT_MACHINE=qemux86-64 +BUILD_DIR=build + +#print_help + +if [ -z "$MACHINE" ]; then + MACH=$DEFAULT_MACHINE +else + MACH=$MACHINE +fi + +unset MACHINE + +if [ $# -eq "1" ]; then + BUILD_DIR=$1 +fi + +print_config $MACH $BUILD_DIR + +rm -f build/conf/bblayers.conf \ + build/conf/templateconf.cfg + +mkdir -p $BUILD_DIR + +export MACHINE=$MACH +export TEMPLATECONF="../meta-blackfinn/buildconf/$MACHINE" + +source layers/poky/oe-init-build-env $BUILD_DIR + +return 0 + diff --git a/buildconf/default-init-build-env b/buildconf/default-init-build-env deleted file mode 100644 index 10f694e..0000000 --- a/buildconf/default-init-build-env +++ /dev/null @@ -1,16 +0,0 @@ -OPTIND=1 -shift $((OPTIND-1)) -for NOPTARG in $*; do - BUILD_DIR="$NOPTARG" -done - -export MACHINE=$OPT_M -rm -f build/conf/bblayers.conf \ - build/conf/templateconf.cfg - -mkdir -p $BUILD_DIR - -source layers/poky/oe-init-build-env $BUILD_DIR - -return 0 - diff --git a/buildconf/raspberrypi3-64/bblayers.conf.sample b/buildconf/raspberrypi3-64/bblayers.conf.sample new file mode 100644 index 0000000..dba7e85 --- /dev/null +++ b/buildconf/raspberrypi3-64/bblayers.conf.sample @@ -0,0 +1,17 @@ +# POKY_BBLAYERS_CONF_VERSION is increased each time build/conf/bblayers.conf +# changes incompatibly +POKY_BBLAYERS_CONF_VERSION = "2" + +BBPATH = "${TOPDIR}" +BBFILES ?= "" + +BBLAYERS ?= " \ + ${TOPDIR}/../layers/poky/meta \ + ${TOPDIR}/../layers/poky/meta-poky \ + ${TOPDIR}/../layers/poky/meta-yocto-bsp \ + ${TOPDIR}/../layers/meta-openembedded/meta-oe \ + ${TOPDIR}/../layers/meta-openembedded/meta-networking \ + ${TOPDIR}/../layers/meta-openembedded/meta-python \ + ${TOPDIR}/../layers/meta-raspberrypi \ + ${TOPDIR}/../layers/meta-blackfinn \ + " diff --git a/buildconf/raspberrypi3-64/conf-notes.txt b/buildconf/raspberrypi3-64/conf-notes.txt new file mode 100644 index 0000000..36009da --- /dev/null +++ b/buildconf/raspberrypi3-64/conf-notes.txt @@ -0,0 +1,8 @@ +Common targets are: + console-image + core-image-minimal + core-image-sato + meta-toolchain + adt-installer + meta-ide-support + diff --git a/buildconf/raspberrypi3-64/local.conf.sample b/buildconf/raspberrypi3-64/local.conf.sample new file mode 100644 index 0000000..e3407a1 --- /dev/null +++ b/buildconf/raspberrypi3-64/local.conf.sample @@ -0,0 +1,37 @@ +MACHINE ?= "raspberrypi3-64" + +DISTRO ?= "poky" +PACKAGE_CLASSES ?= "package_ipk" + +#SDKMACHINE ?= "i686" + +#EXTRA_IMAGE_FEATURES ?= "debug-tweaks" + +USER_CLASSES ?= "buildstats image-mklibs image-prelink" + +PATCHRESOLVE = "noop" + +BB_DISKMON_DIRS = "\ + STOPTASKS,${TMPDIR},1G,100K \ + STOPTASKS,${DL_DIR},1G,100K \ + STOPTASKS,${SSTATE_DIR},1G,100K \ + STOPTASKS,/tmp,100M,100K \ + ABORT,${TMPDIR},100M,1K \ + ABORT,${DL_DIR},100M,1K \ + ABORT,${SSTATE_DIR},100M,1K \ + ABORT,/tmp,10M,1K" + +#SSTATE_MIRRORS ?= "\ +#file://.* http://someserver.tld/share/sstate/PATH;downloadfilename=PATH \n \ +#file://.* file:///some/local/dir/sstate/PATH" + +CONF_VERSION = "1" + +INHERIT += "rm_work" + +INHERIT += "own-mirrors" +SOURCE_MIRROR_URL = "https://files.blackfinn.de/mirror/sources" +BB_GENERATE_MIRROR_TARBALLS = "1" + +export BB_ENV_EXTRAWHITE="$BB_ENV_EXTRAWHITE DL_DIR" + diff --git a/buildconf/rpi-init-build-env b/buildconf/rpi-init-build-env deleted file mode 100644 index 3a8ea2c..0000000 --- a/buildconf/rpi-init-build-env +++ /dev/null @@ -1,10 +0,0 @@ -# Defaults -OPT_M=raspberrypi3-64 -BUILD_DIR=build - -export TEMPLATECONF="../meta-rpi/buildconf" - -source layers/meta-blackfinn/buildconf/default-init-build-env $BUILD_DIR - -return 0 - diff --git a/conf/layer.conf b/conf/layer.conf index f721ea6..5ef088c 100644 --- a/conf/layer.conf +++ b/conf/layer.conf @@ -4,7 +4,6 @@ BBPATH .= ":${LAYERDIR}" # We have recipes-* directories, add to BBFILES BBFILES += " \ ${LAYERDIR}/recipes-*/*/*.bb \ - ${LAYERDIR}/images/*.bb \ ${LAYERDIR}/recipes-*/*/*.bbappend \ " diff --git a/recipes-bsp/u-boot/files/beaglebone-yocto/uEnv.txt b/recipes-bsp/u-boot/files/beaglebone-yocto/uEnv.txt new file mode 100644 index 0000000..566a762 --- /dev/null +++ b/recipes-bsp/u-boot/files/beaglebone-yocto/uEnv.txt @@ -0,0 +1,26 @@ + # boot from sd card + bootpart=0:2 + # boot from emmc + #bootpart=1:2 + + bootdir=/boot + bootfile=zImage + console=ttyO0,115200n8 + fdtaddr=0x88000000 + fdtfile=am335x-boneblack.dtb + loadaddr=0x82000000 + + # rootfs on sd card + mmcroot=/dev/mmcblk0p2 ro + # rootfs on emmc + #mmcroot=/dev/mmcblk1p2 ro + + mmcrootfstype=ext4 rootwait + optargs=consoleblank=0 + mmcargs=setenv bootargs console=${console} ${optargs} root=${mmcroot} + findfdtfile=setenv fdtfile ${fdtfile} + rootfstype=${mmcrootfstype} + loadfdt=run findfdtfile; load mmc ${bootpart} ${fdtaddr} ${bootdir}/${fdtfile} + loadimage=load mmc ${bootpart} ${loadaddr} ${bootdir}/${bootfile} + uenvcmd=if run loadfdt; then echo Loaded ${fdtfile}; if run loadimage; then run mmcargs; bootz ${loadaddr} - ${fdtaddr}; fi; fi; + diff --git a/recipes-bsp/u-boot/u-boot_%.bbappend b/recipes-bsp/u-boot/u-boot_%.bbappend new file mode 100644 index 0000000..0bea79e --- /dev/null +++ b/recipes-bsp/u-boot/u-boot_%.bbappend @@ -0,0 +1,8 @@ +FILESEXTRAPATHS_prepend := "${THISDIR}/files:" + +UBOOT_ENV_beaglebone-yocto = "uEnv" + +SRC_URI_append_beaglebone-yocto += " \ + file://uEnv.txt \ +" + diff --git a/recipes-core/base-files/base-files_3.0.14.bbappend b/recipes-core/base-files/base-files_3.0.14.bbappend new file mode 100644 index 0000000..869d60a --- /dev/null +++ b/recipes-core/base-files/base-files_3.0.14.bbappend @@ -0,0 +1,2 @@ +FILESEXTRAPATHS_prepend := "${THISDIR}/files:" + diff --git a/recipes-core/base-files/files/bananapi-m3/motd b/recipes-core/base-files/files/bananapi-m3/motd new file mode 100644 index 0000000..dc4725d --- /dev/null +++ b/recipes-core/base-files/files/bananapi-m3/motd @@ -0,0 +1,12 @@ + + +______ _ ___ ___ _____ +| ___ \ (_) | \/ ||____ | +| |_/ / __ _ _ __ __ _ _ __ __ _ _ __ _ | . . | / / +| ___ \/ _` | '_ \ / _` | '_ \ / _` | '_ \| | | |\/| | \ \ +| |_/ / (_| | | | | (_| | | | | (_| | |_) | | | | | |.___/ / +\____/ \__,_|_| |_|\__,_|_| |_|\__,_| .__/|_| \_| |_/\____/ + | | + |_| + + diff --git a/recipes-core/base-files/files/beaglebone-yocto/motd b/recipes-core/base-files/files/beaglebone-yocto/motd new file mode 100644 index 0000000..e7eeb6f --- /dev/null +++ b/recipes-core/base-files/files/beaglebone-yocto/motd @@ -0,0 +1,12 @@ + + +______ _ ______ ______ _ _ +| ___ \ | | | ___ \ | ___ \ | | | +| |_/ / ___ __ _ __ _| | ___| |_/ / ___ _ __ ___| |_/ / | __ _ ___| | __ +| ___ \/ _ \/ _` |/ _` | |/ _ \ ___ \/ _ \| '_ \ / _ \ ___ \ |/ _` |/ __| |/ / +| |_/ / __/ (_| | (_| | | __/ |_/ / (_) | | | | __/ |_/ / | (_| | (__| < +\____/ \___|\__,_|\__, |_|\___\____/ \___/|_| |_|\___\____/|_|\__,_|\___|_|\_\ + __/ | + |___/ + + diff --git a/recipes-core/base-files/files/raspberrypi3_64/motd b/recipes-core/base-files/files/raspberrypi3_64/motd new file mode 100644 index 0000000..090ade3 --- /dev/null +++ b/recipes-core/base-files/files/raspberrypi3_64/motd @@ -0,0 +1,12 @@ + + +______ _ ______ _ +| ___ \ | | | ___ (_) +| |_/ /__ _ ___ _ __ | |__ ___ _ __ _ __ _ _| |_/ /_ +| // _` / __| '_ \| '_ \ / _ \ '__| '__| | | | __/| | +| |\ \ (_| \__ \ |_) | |_) | __/ | | | | |_| | | | | +\_| \_\__,_|___/ .__/|_.__/ \___|_| |_| \__, \_| |_| + | | __/ | + |_| |___/ + + diff --git a/images/console-image.bb b/recipes-core/images/console-image.bb similarity index 88% rename from images/console-image.bb rename to recipes-core/images/console-image.bb index 5fa79cb..8201eaa 100644 --- a/images/console-image.bb +++ b/recipes-core/images/console-image.bb @@ -78,11 +78,13 @@ IMAGE_INSTALL += " \ ${WIFI_SUPPORT} \ ${MQTT} \ ${PYTHON_LIBS} \ - packagegroup-board \ " +IMAGE_INSTALL_append_beaglebone-yocto = " linux-firmware-rtl8192cu" +IMAGE_INSTALL_append_bananapi-m3 += " linux-firmware-bcm43430" + set_local_timezone() { - ln -sf /usr/share/zoneinfo/Etc/UTC ${IMAGE_ROOTFS}/etc/localtime + ln -sf /usr/share/zoneinfo/Europe/Berlin ${IMAGE_ROOTFS}/etc/localtime } disable_bootlogd() { diff --git a/recipes-core/init-ifupdown-1.0/files/beaglebone-yocto/interfaces b/recipes-core/init-ifupdown-1.0/files/beaglebone-yocto/interfaces new file mode 100644 index 0000000..babe34d --- /dev/null +++ b/recipes-core/init-ifupdown-1.0/files/beaglebone-yocto/interfaces @@ -0,0 +1,32 @@ +# The loopback interface +auto lo +iface lo inet loopback + +# Wireless interfaces +allow-hotplug wlan0 +auto wlan0 +iface wlan0 inet dhcp + wireless_mode managed + wireless_essid any + wpa-driver nl80211 + wpa-conf /etc/wpa_supplicant.conf +wireless-power off + +#iface atml0 inet dhcp + +# Wired or wireless interfaces +auto eth0 +iface eth0 inet dhcp +iface eth1 inet dhcp + +# Ethernet/RNDIS gadget (g_ether) +# ... or on host side, usbnet and random hwaddr +iface usb0 inet static + address 192.168.7.2 + netmask 255.255.255.0 + network 192.168.7.0 + gateway 192.168.7.1 + +# Bluetooth networking +iface bnep0 inet dhcp + diff --git a/recipes-core/init-ifupdown-1.0/files/raspberrypi3_64/interfaces b/recipes-core/init-ifupdown-1.0/files/raspberrypi3_64/interfaces new file mode 100644 index 0000000..c3608b2 --- /dev/null +++ b/recipes-core/init-ifupdown-1.0/files/raspberrypi3_64/interfaces @@ -0,0 +1,22 @@ +# The loopback interface +auto lo +iface lo inet loopback + +# Wireless interface +allow-hotplug wlan0 +auto wlan0 +iface wlan0 inet dhcp + wireless_mode managed + wireless_essid any + wpa-driver nl80211 + wpa-conf /etc/wpa_supplicant.conf +wireless-power off + + +# Wired interface +auto eth0 +iface eth0 inet dhcp + +# Bluetooth networking +iface bnep0 inet dhcp + diff --git a/recipes-core/init-ifupdown-1.0/init-ifupdown_1.0.bbappend b/recipes-core/init-ifupdown-1.0/init-ifupdown_1.0.bbappend new file mode 100644 index 0000000..869d60a --- /dev/null +++ b/recipes-core/init-ifupdown-1.0/init-ifupdown_1.0.bbappend @@ -0,0 +1,2 @@ +FILESEXTRAPATHS_prepend := "${THISDIR}/files:" + diff --git a/recipes-devtools/opkg/files/bananapi-m3/opkg.conf b/recipes-devtools/opkg/files/bananapi-m3/opkg.conf new file mode 100644 index 0000000..a4531e4 --- /dev/null +++ b/recipes-devtools/opkg/files/bananapi-m3/opkg.conf @@ -0,0 +1,32 @@ +# Must have one or more source entries of the form: +# +# src +# +# and one or more destination entries of the form: +# +# dest +# +# where and are identifiers that +# should match [a-zA-Z0-9._-]+, should be a +# URL that points to a directory containing a Familiar +# Packages file, and should be a directory +# that exists on the target system. + +# Proxy Support +#option http_proxy http://proxy.tld:3128 +#option ftp_proxy http://proxy.tld:3128 +#option proxy_username +#option proxy_password + +# Enable GPGME signature +# option check_signature 1 + +# Offline mode (for use in constructing flash images offline) +#option offline_root target + +src/gz all https://opkg.blackfinn.de/thud/all +src/gz armv7vet2hf-neon https://opkg.blackfinn.de/thud/armv7vet2hf-neon +src/gz bananapi_m3 https://opkg.blackfinn.de/thud/bananapi_m3 + +# Default destination for installed packages +dest root / diff --git a/recipes-devtools/opkg/files/beaglebone-yocto/opkg.conf b/recipes-devtools/opkg/files/beaglebone-yocto/opkg.conf new file mode 100644 index 0000000..578b5c3 --- /dev/null +++ b/recipes-devtools/opkg/files/beaglebone-yocto/opkg.conf @@ -0,0 +1,32 @@ +# Must have one or more source entries of the form: +# +# src +# +# and one or more destination entries of the form: +# +# dest +# +# where and are identifiers that +# should match [a-zA-Z0-9._-]+, should be a +# URL that points to a directory containing a Familiar +# Packages file, and should be a directory +# that exists on the target system. + +# Proxy Support +#option http_proxy http://proxy.tld:3128 +#option ftp_proxy http://proxy.tld:3128 +#option proxy_username +#option proxy_password + +# Enable GPGME signature +# option check_signature 1 + +# Offline mode (for use in constructing flash images offline) +#option offline_root target + +src/gz all https://opkg.blackfinn.de/thud/all +src/gz beaglebone https://opkg.blackfinn.de/thud/beaglebone +src/gz cortexa8hf-neon https://opkg.blackfinn.de/thud/cortexa8hf-neon + +# Default destination for installed packages +dest root / diff --git a/recipes-devtools/opkg/files/raspberrypi3_64/opkg.conf b/recipes-devtools/opkg/files/raspberrypi3_64/opkg.conf new file mode 100644 index 0000000..2f093bf --- /dev/null +++ b/recipes-devtools/opkg/files/raspberrypi3_64/opkg.conf @@ -0,0 +1,32 @@ +# Must have one or more source entries of the form: +# +# src +# +# and one or more destination entries of the form: +# +# dest +# +# where and are identifiers that +# should match [a-zA-Z0-9._-]+, should be a +# URL that points to a directory containing a Familiar +# Packages file, and should be a directory +# that exists on the target system. + +# Proxy Support +#option http_proxy http://proxy.tld:3128 +#option ftp_proxy http://proxy.tld:3128 +#option proxy_username +#option proxy_password + +# Enable GPGME signature +# option check_signature 1 + +# Offline mode (for use in constructing flash images offline) +#option offline_root target + +src/gz all https://opkg.blackfinn.de/thud/all +src/gz raspberrypi3_64 https://opkg.blackfinn.de/thud/raspberrypi3_64 +src/gz aarch64 https://opkg.blackfinn.de/thud/aarch64 + +# Default destination for installed packages +dest root / diff --git a/recipes-devtools/opkg/opkg_0.%.bbappend b/recipes-devtools/opkg/opkg_0.%.bbappend new file mode 100644 index 0000000..869d60a --- /dev/null +++ b/recipes-devtools/opkg/opkg_0.%.bbappend @@ -0,0 +1,2 @@ +FILESEXTRAPATHS_prepend := "${THISDIR}/files:" + diff --git a/recipes-kernel/linux/files/bananapi-m3/defconfig b/recipes-kernel/linux/files/bananapi-m3/defconfig new file mode 100644 index 0000000..df433ab --- /dev/null +++ b/recipes-kernel/linux/files/bananapi-m3/defconfig @@ -0,0 +1,153 @@ +CONFIG_NO_HZ=y +CONFIG_HIGH_RES_TIMERS=y +CONFIG_CGROUPS=y +CONFIG_BLK_DEV_INITRD=y +CONFIG_PERF_EVENTS=y +CONFIG_MODULES=y +CONFIG_MODULE_UNLOAD=y +CONFIG_ARCH_SUNXI=y +CONFIG_SMP=y +CONFIG_NR_CPUS=8 +CONFIG_AEABI=y +CONFIG_HIGHMEM=y +CONFIG_CMA=y +CONFIG_ARM_APPENDED_DTB=y +CONFIG_ARM_ATAG_DTB_COMPAT=y +CONFIG_CPU_FREQ=y +CONFIG_CPUFREQ_DT=y +CONFIG_VFP=y +CONFIG_NEON=y +CONFIG_NET=y +CONFIG_PACKET=y +CONFIG_UNIX=y +CONFIG_INET=y +CONFIG_IP_PNP=y +CONFIG_IP_PNP_DHCP=y +CONFIG_IP_PNP_BOOTP=y +# CONFIG_INET_XFRM_MODE_TRANSPORT is not set +# CONFIG_INET_XFRM_MODE_TUNNEL is not set +# CONFIG_INET_XFRM_MODE_BEET is not set +# CONFIG_INET_DIAG is not set +# CONFIG_IPV6 is not set +CONFIG_CAN=y +CONFIG_CAN_SUN4I=y +# CONFIG_WIRELESS is not set +CONFIG_DEVTMPFS=y +CONFIG_DEVTMPFS_MOUNT=y +CONFIG_DMA_CMA=y +CONFIG_BLK_DEV_SD=y +CONFIG_ATA=y +CONFIG_AHCI_SUNXI=y +CONFIG_NETDEVICES=y +CONFIG_SUN4I_EMAC=y +# CONFIG_NET_VENDOR_ARC is not set +# CONFIG_NET_CADENCE is not set +# CONFIG_NET_VENDOR_BROADCOM is not set +# CONFIG_NET_VENDOR_CIRRUS is not set +# CONFIG_NET_VENDOR_FARADAY is not set +# CONFIG_NET_VENDOR_INTEL is not set +# CONFIG_NET_VENDOR_MARVELL is not set +# CONFIG_NET_VENDOR_MICREL is not set +# CONFIG_NET_VENDOR_MICROCHIP is not set +# CONFIG_NET_VENDOR_NATSEMI is not set +# CONFIG_NET_VENDOR_SAMSUNG is not set +# CONFIG_NET_VENDOR_SEEQ is not set +# CONFIG_NET_VENDOR_SMSC is not set +CONFIG_STMMAC_ETH=y +# CONFIG_NET_VENDOR_VIA is not set +# CONFIG_NET_VENDOR_WIZNET is not set +# CONFIG_WLAN is not set +CONFIG_INPUT_EVDEV=y +CONFIG_KEYBOARD_SUN4I_LRADC=y +# CONFIG_INPUT_MOUSE is not set +CONFIG_INPUT_TOUCHSCREEN=y +CONFIG_TOUCHSCREEN_SUN4I=y +CONFIG_INPUT_MISC=y +CONFIG_INPUT_AXP20X_PEK=y +CONFIG_SERIAL_8250=y +CONFIG_SERIAL_8250_CONSOLE=y +CONFIG_SERIAL_8250_NR_UARTS=8 +CONFIG_SERIAL_8250_RUNTIME_UARTS=8 +CONFIG_SERIAL_8250_DW=y +CONFIG_SERIAL_OF_PLATFORM=y +# CONFIG_HW_RANDOM is not set +CONFIG_I2C_CHARDEV=y +CONFIG_I2C_MV64XXX=y +CONFIG_I2C_SUN6I_P2WI=y +CONFIG_SPI=y +CONFIG_SPI_SUN4I=y +CONFIG_SPI_SUN6I=y +CONFIG_GPIO_SYSFS=y +CONFIG_POWER_SUPPLY=y +CONFIG_CHARGER_AXP20X=y +CONFIG_BATTERY_AXP20X=y +CONFIG_AXP20X_POWER=y +CONFIG_THERMAL=y +CONFIG_CPU_THERMAL=y +CONFIG_WATCHDOG=y +CONFIG_SUNXI_WATCHDOG=y +CONFIG_MFD_AC100=y +CONFIG_MFD_AXP20X_I2C=y +CONFIG_MFD_AXP20X_RSB=y +CONFIG_REGULATOR=y +CONFIG_REGULATOR_FIXED_VOLTAGE=y +CONFIG_REGULATOR_AXP20X=y +CONFIG_REGULATOR_GPIO=y +CONFIG_MEDIA_SUPPORT=y +CONFIG_RC_CORE=y +CONFIG_RC_DEVICES=y +CONFIG_IR_SUNXI=y +CONFIG_DRM=y +CONFIG_DRM_SUN4I=y +CONFIG_DRM_DUMB_VGA_DAC=y +CONFIG_FB_SIMPLE=y +CONFIG_SOUND=y +CONFIG_SND=y +CONFIG_SND_SOC=y +CONFIG_SND_SUN4I_CODEC=y +CONFIG_USB=y +CONFIG_USB_EHCI_HCD=y +CONFIG_USB_EHCI_HCD_PLATFORM=y +CONFIG_USB_OHCI_HCD=y +CONFIG_USB_OHCI_HCD_PLATFORM=y +CONFIG_USB_MUSB_HDRC=y +CONFIG_USB_MUSB_SUNXI=y +CONFIG_NOP_USB_XCEIV=y +CONFIG_USB_GADGET=y +CONFIG_MMC=y +CONFIG_MMC_SUNXI=y +CONFIG_NEW_LEDS=y +CONFIG_LEDS_CLASS=y +CONFIG_LEDS_GPIO=y +CONFIG_LEDS_TRIGGERS=y +CONFIG_LEDS_TRIGGER_HEARTBEAT=y +CONFIG_LEDS_TRIGGER_DEFAULT_ON=y +CONFIG_RTC_CLASS=y +# CONFIG_RTC_INTF_SYSFS is not set +# CONFIG_RTC_INTF_PROC is not set +CONFIG_RTC_DRV_AC100=y +CONFIG_RTC_DRV_SUNXI=y +CONFIG_DMADEVICES=y +CONFIG_DMA_SUN6I=y +# CONFIG_IOMMU_SUPPORT is not set +CONFIG_EXTCON=y +CONFIG_IIO=y +CONFIG_AXP20X_ADC=y +CONFIG_PWM=y +CONFIG_PWM_SUN4I=y +CONFIG_PHY_SUN4I_USB=y +CONFIG_PHY_SUN9I_USB=y +CONFIG_NVMEM=y +CONFIG_NVMEM_SUNXI_SID=y +CONFIG_EXT4_FS=y +CONFIG_VFAT_FS=y +CONFIG_TMPFS=y +CONFIG_NFS_FS=y +CONFIG_NFS_V3_ACL=y +CONFIG_NFS_V4=y +CONFIG_ROOT_NFS=y +CONFIG_NLS_CODEPAGE_437=y +CONFIG_NLS_ISO8859_1=y +CONFIG_PRINTK_TIME=y +CONFIG_DEBUG_FS=y +CONFIG_CRYPTO_DEV_SUN4I_SS=y diff --git a/recipes-kernel/linux/files/beaglebone-yocto/0002-onboard-led-init-disable.patch b/recipes-kernel/linux/files/beaglebone-yocto/0002-onboard-led-init-disable.patch new file mode 100644 index 0000000..2f64199 --- /dev/null +++ b/recipes-kernel/linux/files/beaglebone-yocto/0002-onboard-led-init-disable.patch @@ -0,0 +1,37 @@ +diff --git a/arch/arm/boot/dts/am335x-bone-common.dtsi b/arch/arm/boot/dts/am335x-bone-common.dtsi +index 3e32dd18fd25..695634c7c895 100644 +--- a/arch/arm/boot/dts/am335x-bone-common.dtsi ++++ b/arch/arm/boot/dts/am335x-bone-common.dtsi +@@ -31,28 +31,28 @@ + led2 { + label = "beaglebone:green:heartbeat"; + gpios = <&gpio1 21 GPIO_ACTIVE_HIGH>; +- linux,default-trigger = "heartbeat"; ++ linux,default-trigger = "none"; /* heartbeat */ + default-state = "off"; + }; + + led3 { + label = "beaglebone:green:mmc0"; + gpios = <&gpio1 22 GPIO_ACTIVE_HIGH>; +- linux,default-trigger = "mmc0"; ++ linux,default-trigger = "none"; /* mmc0 */ + default-state = "off"; + }; + + led4 { + label = "beaglebone:green:usr2"; + gpios = <&gpio1 23 GPIO_ACTIVE_HIGH>; +- linux,default-trigger = "cpu0"; ++ linux,default-trigger = "none"; /* cpu0 */ + default-state = "off"; + }; + + led5 { + label = "beaglebone:green:usr3"; + gpios = <&gpio1 24 GPIO_ACTIVE_HIGH>; +- linux,default-trigger = "mmc1"; ++ linux,default-trigger = "none"; /* mmc1 */ + default-state = "off"; + }; + }; diff --git a/recipes-kernel/linux/files/beaglebone-yocto/enable_hostap_wext.cfg b/recipes-kernel/linux/files/beaglebone-yocto/enable_hostap_wext.cfg new file mode 100644 index 0000000..289d946 --- /dev/null +++ b/recipes-kernel/linux/files/beaglebone-yocto/enable_hostap_wext.cfg @@ -0,0 +1,12 @@ +CONFIG_WIRELESS_EXT=y +CONFIG_WEXT_CORE=y +CONFIG_WEXT_PROC=y +CONFIG_WEXT_SPY=y +CONFIG_WEXT_PRIV=y +CONFIG_LIB80211=y +CONFIG_LIB80211_CRYPT_WEP=y +CONFIG_LIB80211_CRYPT_CCMP=y +CONFIG_LIB80211_CRYPT_TKIP=y +CONFIG_HOSTAP=y +CONFIG_CRYPTO_MICHAEL_MIC=y +CONFIG_CFG80211_WEXT=y diff --git a/recipes-kernel/linux/files/beaglebone-yocto/enable_onboard_leds.cfg b/recipes-kernel/linux/files/beaglebone-yocto/enable_onboard_leds.cfg new file mode 100644 index 0000000..2008304 --- /dev/null +++ b/recipes-kernel/linux/files/beaglebone-yocto/enable_onboard_leds.cfg @@ -0,0 +1,19 @@ +CONFIG_RFKILL_LEDS=y +CONFIG_INPUT_LEDS=y +CONFIG_LEDS_CLASS=y +CONFIG_LEDS_GPIO=y +CONFIG_LEDS_PWM=y +CONFIG_LEDS_SYSCON=y +CONFIG_LEDS_USER=y +CONFIG_LEDS_TRIGGERS=y +CONFIG_LEDS_TRIGGER_TIMER=y +CONFIG_LEDS_TRIGGER_ONESHOT=y +CONFIG_LEDS_TRIGGER_MTD=y +CONFIG_LEDS_TRIGGER_HEARTBEAT=y +CONFIG_LEDS_TRIGGER_BACKLIGHT=y +CONFIG_LEDS_TRIGGER_CPU=y +CONFIG_LEDS_TRIGGER_GPIO=y +CONFIG_LEDS_TRIGGER_DEFAULT_ON=y +CONFIG_LEDS_TRIGGER_TRANSIENT=y +CONFIG_LEDS_TRIGGER_CAMERA=y +CONFIG_LEDS_TRIGGER_PANIC=y diff --git a/recipes-kernel/linux/files/beaglebone-yocto/rtl8192cu.cfg b/recipes-kernel/linux/files/beaglebone-yocto/rtl8192cu.cfg new file mode 100644 index 0000000..f069960 --- /dev/null +++ b/recipes-kernel/linux/files/beaglebone-yocto/rtl8192cu.cfg @@ -0,0 +1,5 @@ +CONFIG_RTL8192CU=m +CONFIG_RTLWIFI=m +CONFIG_RTLWIFI_USB=m +CONFIG_RTLWIFI_DEBUG=y +CONFIG_RTL8192C_COMMON=m diff --git a/recipes-kernel/linux/linux-mainline_4.20.15.bb b/recipes-kernel/linux/linux-mainline_4.20.15.bb new file mode 100644 index 0000000..f29abdc --- /dev/null +++ b/recipes-kernel/linux/linux-mainline_4.20.15.bb @@ -0,0 +1,27 @@ +SECTION = "kernel" +DESCRIPTION = "Mainline Linux kernel" +LICENSE = "GPLv2" +LIC_FILES_CHKSUM = "file://COPYING;md5=bbea815ee2795b2f4230826c0c6b8814" +COMPATIBLE_MACHINE = "sun8i" + +inherit kernel + +# Since we're not using git, this doesn't make a difference, but we need to fill +# in something or kernel-yocto.bbclass will fail. +KBRANCH ?= "master" + +# Pull in the devicetree files into the rootfs +RDEPENDS_${KERNEL_PACKAGE_NAME}-base += "kernel-devicetree" + +KERNEL_EXTRA_ARGS += "LOADADDR=${UBOOT_ENTRYPOINT}" + +S = "${WORKDIR}/linux-${PV}" + +SRC_URI[md5sum] = "8e2e10238ce5698904e9ea1e851f4ddd" +SRC_URI[sha256sum] = "d93b1b216e909e4ea8441a41a070f839f55ac9cf5f7effb16e1b04e7f5688407" + +SRC_URI = " \ + https://www.kernel.org/pub/linux/kernel/v4.x/linux-${PV}.tar.xz \ + file://defconfig \ +" + diff --git a/recipes-kernel/linux/linux-yocto_4.18.bbappend b/recipes-kernel/linux/linux-yocto_4.18.bbappend new file mode 100644 index 0000000..1af34f6 --- /dev/null +++ b/recipes-kernel/linux/linux-yocto_4.18.bbappend @@ -0,0 +1,18 @@ +LICENSE = "GPLv2" +LIC_FILES_CHKSUM = "file://COPYING;md5=bbea815ee2795b2f4230826c0c6b8814" + +FILESEXTRAPATHS_prepend := "${THISDIR}/files:" + +SRC_URI += " \ + file://rtl8192cu.cfg \ + file://enable_onboard_leds.cfg \ + file://enable_hostap_wext.cfg \ + file://0002-onboard-led-init-disable.patch \ +" + +KERNEL_CONFIG_FRAGMENTS_append_ti33x = " \ + ${WORKDIR}/rtl8192cu.cfg \ + ${WORKDIR}/enable_onboard_leds.cfg \ + ${WORKDIR}/enable_hostap_wext.cfg \ +" +