2 Commits

Author SHA1 Message Date
e5e624f30a Merge pull request #212 from cameronokeeffe/rocko
Added pcDuino3 Board
2019-06-13 08:24:57 +02:00
196a7a6863 Added pcDuino3 Board 2018-04-05 15:56:27 +12:00
65 changed files with 314 additions and 662 deletions

View File

@ -3,9 +3,9 @@ meta-sunxi
Official sunxi OpenEmbedded layer for Allwinner-based boards.
This layer depends on the additional layers:
This layer depends on the additional layer:
* [meta-openembedded/meta-oe](http://git.openembedded.org/meta-openembedded/tree/meta-oe)
meta-openembedded: git://git.openembedded.org/meta-openembedded
Tested with core-image-base.
@ -14,41 +14,24 @@ Maintainers:
* Nicolas Aguirre <aguirre.nicolas@gmail.com>
* Enrico Butera <ebutera@users.sourceforge.net>
* Sergey Lapin <slapin@ossfans.org>
* Marek Belisko <marek.belisko@gmail.com>
Kernel / U-Boot Version
===========
Most Allwinner devices and hardware are supported in mainline kernel and U-Boot, so this layer builds mainline by default.
Legacy sunxi Kernel / U-Boot
-----------
There is a custom U-Boot and Kernel version for sunxi devices which includes some special drivers not mainlined.
These versions are rather old (3.4 for kernel and 2014.04 for U-Boot), but may support more functions and devices than current mainline.
These versions are rather old (3.4 for kernel and 2014.04 for U-Boot), but may support more functions and devices than current mainline
If you want to switch back to sunxi versions for some reasons (no device tree available, unsupported hardware), either:
- change the file conf/machine/include/sunxi.inc to include the following block
- edit your conf/local.conf to add the following block
PREFERRED_PROVIDER_u-boot="u-boot-sunxi"
PREFERRED_PROVIDER_virtual/bootloader="u-boot-sunxi"
PREFERRED_PROVIDER_virtual/kernel="linux-sunxi"
KERNEL_DEVICETREE = ""
PREFERRED_PROVIDER_u-boot="u-boot-sunxi"
PREFERRED_PROVIDER_virtual/bootloader="u-boot-sunxi"
PREFERRED_PROVIDER_virtual/kernel="linux-sunxi"
If you already have built the mainline versions it might be necessary to reset the build directories with:
bitbake -c clean virtual/kernel virtual/bootloader
Mainline Kernel / U-Boot
-----------
For mainline kernel we have now support for latest LTS and stable.
By default we use latest LTS. If you would like to change version please update ```PREFERRED_VERSION_linux-mainline``` in:
* [conf/machine/include/sunxi.inc](https://github.com/linux-sunxi/meta-sunxi/blob/fa0846c0eb23e3424b89acb4d5a327e921f73497/conf/machine/include/sunxi.inc#L16)
When using mainline kernel ≥ 5.2 it is now possible to use the mainline graphics drivers *lima* and *panfrost*, instead of the *mali* driver provided by ARM. To enable open source mainline graphics support add the following line in your `local.conf`:
MACHINEOVERRIDES .= ":use-mailine-graphics"
bitbake -c clean linux u-boot
Performance
===========

View File

@ -17,7 +17,7 @@ inherit image_types
IMAGE_TYPEDEP_sunxi-sdimg = "${SDIMG_ROOTFS_TYPE}"
# Boot partition volume id
BOOTDD_VOLUME_ID ?= "boot"
BOOTDD_VOLUME_ID ?= "${MACHINE}"
# Boot partition size [in KiB]
BOOT_SPACE ?= "40960"
@ -71,16 +71,16 @@ IMAGE_CMD_sunxi-sdimg () {
for DTS_FILE in ${KERNEL_DEVICETREE}; do
DTS_BASE_NAME=`basename ${DTS_FILE} | awk -F "." '{print $1}'`
DTS_DIR_NAME=`dirname ${DTS_FILE}`
if [ -e ${DEPLOY_DIR_IMAGE}/"${DTS_BASE_NAME}.dtb" ]; then
if [ -e ${DEPLOY_DIR_IMAGE}/"${KERNEL_IMAGETYPE}-${DTS_BASE_NAME}.dtb" ]; then
if [ ${DTS_FILE} != ${DTS_BASE_NAME}.dtb ]; then
mmd -i ${WORKDIR}/boot.img ::/${DTS_DIR_NAME}
fi
kernel_bin="`readlink ${DEPLOY_DIR_IMAGE}/${KERNEL_IMAGETYPE}-${MACHINE}.bin`"
kernel_bin_for_dtb="`readlink ${DEPLOY_DIR_IMAGE}/${DTS_BASE_NAME}.dtb | sed "s,$DTS_BASE_NAME,${KERNEL_IMAGETYPE},g;s,\.dtb$,.bin,g"`"
kernel_bin_for_dtb="`readlink ${DEPLOY_DIR_IMAGE}/${KERNEL_IMAGETYPE}-${DTS_BASE_NAME}.dtb | sed "s,$DTS_BASE_NAME,${MACHINE},g;s,\.dtb$,.bin,g"`"
if [ $kernel_bin = $kernel_bin_for_dtb ]; then
mcopy -i ${WORKDIR}/boot.img -s ${DEPLOY_DIR_IMAGE}/${DTS_BASE_NAME}.dtb ::/${DTS_FILE}
mcopy -i ${WORKDIR}/boot.img -s ${DEPLOY_DIR_IMAGE}/${KERNEL_IMAGETYPE}-${DTS_BASE_NAME}.dtb ::/${DTS_FILE}
fi
fi
done

View File

@ -7,11 +7,3 @@ BBFILES += "${LAYERDIR}/recipes*/*/*.bb ${LAYERDIR}/recipes*/*/*.bbappend"
BBFILE_COLLECTIONS += "meta-sunxi"
BBFILE_PATTERN_meta-sunxi := "^${LAYERDIR}/"
BBFILE_PRIORITY_meta-sunxi = "10"
# This should only be incremented on significant changes that will
# cause compatibility issues with other layers
LAYERVERSION_meta-sunxi = "1"
LAYERDEPENDS_meta-sunxi = "core openembedded-layer"
LAYERSERIES_COMPAT_meta-sunxi = "zeus dunfell"

View File

@ -1,9 +0,0 @@
#@TYPE: Machine
#@NAME: bananapi-m2m
#@DESCRIPTION: Machine configuration for the Banana Pi M2M, base on Allwinner H8 CPU
require conf/machine/include/sun8i.inc
KERNEL_DEVICETREE = "sun8i-r16-bananapi-m2m.dtb"
UBOOT_MACHINE = "Bananapi_m2m_defconfig"

View File

@ -1,9 +0,0 @@
#@TYPE: Machine
#@NAME: bananapi-m2plus
#@DESCRIPTION: Machine configuration for the Banana Pi M2+, base on Allwinner H3 CPU
require conf/machine/include/sun8i.inc
KERNEL_DEVICETREE = "sun8i-h3-bananapi-m2-plus.dtb"
UBOOT_MACHINE = "bananapi_m2_plus_h3_defconfig"

View File

@ -1,8 +0,0 @@
#@TYPE: Machine
#@NAME: pine64-plus
#@DESCRIPTION: Machine configuration for the pine64-plus, based on Allwinner A64 CPU
require conf/machine/include/sun50i.inc
KERNEL_DEVICETREE = "allwinner/sun50i-a64-bananapi-m64.dtb"
UBOOT_MACHINE = "bananapi_m64_defconfig"

View File

@ -1,5 +0,0 @@
# Include for boards with AMPAK 6212A Wifi / Bluetooth module
# https://linux-sunxi.org/Wifi#Ampak
MACHINE_EXTRA_RRECOMMENDS_append = " kernel-module-brcmfmac"
MACHINE_EXTRA_RDEPENDS_append = " linux-firmware-bcm43430"

View File

@ -1,6 +1,4 @@
require conf/machine/include/sunxi64.inc
DEFAULTTUNE ?= "cortexa53-crypto"
require conf/machine/include/tune-cortexa53.inc
require conf/machine/include/arm/arch-armv8.inc
SOC_FAMILY = "sun50i"

View File

@ -1,15 +0,0 @@
PREFERRED_PROVIDER_virtual/mesa ?= "mesa-gl"
PREFERRED_PROVIDER_virtual/libgl ?= "mesa-gl"
PREFERRED_PROVIDER_virtual/libgles1 ?= "sunxi-mali"
PREFERRED_PROVIDER_virtual/libgles2 ?= "sunxi-mali"
PREFERRED_PROVIDER_virtual/egl ?= "sunxi-mali"
PACKAGECONFIG_remove_pn-xserver-xorg = "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'glamor', '', d)}"
XSERVER += "sunxi-mali \
sunxi-mali-dev"
MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS += "\
kernel-module-mali \
kernel-module-mali-drm \
"

View File

@ -1,5 +1,13 @@
# The "sunxi-mailine-graphics-drivers.inc" doesn't exist, but it can be created
# in the future if needed. Using include directive ensures build doesn't fail
# if .inc file doesn't exist:
# https://www.yoctoproject.org/pipermail/yocto/2019-August/046484.html
include ${@'sunxi-mali-driver.inc' if 'use-mailine-graphics' not in d.getVar("MACHINEOVERRIDES").split(":") else 'sunxi-mailine-graphics-drivers.inc' }
PREFERRED_PROVIDER_virtual/mesa ?= "mesa-gl"
PREFERRED_PROVIDER_virtual/libgl ?= "mesa-gl"
PREFERRED_PROVIDER_virtual/libgles1 ?= "sunxi-mali"
PREFERRED_PROVIDER_virtual/libgles2 ?= "sunxi-mali"
PREFERRED_PROVIDER_virtual/egl ?= "sunxi-mali"
XSERVER += "sunxi-mali \
sunxi-mali-dev"
MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS += "\
kernel-module-mali \
kernel-module-mali-drm \
"

View File

@ -13,7 +13,6 @@ XSERVER = "xserver-xorg \
xf86-input-keyboard"
PREFERRED_PROVIDER_virtual/kernel ?= "linux-mainline"
PREFERRED_VERSION_linux-mainline ?= "5.4.%"
PREFERRED_PROVIDER_u-boot ?= "u-boot"
PREFERRED_PROVIDER_virtual/bootloader ?= "u-boot"
@ -27,6 +26,7 @@ MACHINE_EXTRA_RRECOMMENDS = "kernel-modules"
UBOOT_LOCALVERSION = "-g${@d.getVar('SRCPV', True).partition('+')[2][0:7]}"
UBOOT_ENTRYPOINT ?= "0x40008000"
UBOOT_LOADADDRESS ?= "0x400080OB00"
SPL_BINARY ?= "u-boot-sunxi-with-spl.bin"

View File

@ -1,9 +0,0 @@
#@TYPE: Machine
#@NAME: nanopi M1 Plus
#@DESCRIPTION: Machine configuration for the FriendlyARM NanoPi Neo, based on the Allwinner H3 CPU
require conf/machine/include/sun8i.inc
KERNEL_DEVICETREE = "sun8i-h3-nanopi-m1-plus.dtb"
UBOOT_MACHINE = "nanopi_m1_plus_defconfig"

View File

@ -5,5 +5,7 @@
require conf/machine/include/sun8i.inc
PREFERRED_VERSION_u-boot = "v2017.11%"
KERNEL_DEVICETREE = "sun8i-h3-nanopi-neo-air.dtb"
UBOOT_MACHINE = "nanopi_neo_air_defconfig"

View File

@ -1,10 +0,0 @@
#@TYPE: Machine
#@NAME: nanopi-neo-plus2
#@DESCRIPTION: Machine configuration for the FriendlyARM NanoPi Neo Plus2, based
# on the Allwinner H5 SoC.
require conf/machine/include/sun50i.inc
require conf/machine/include/hardware/ap6212a.inc
KERNEL_DEVICETREE = "allwinner/sun50i-h5-nanopi-neo-plus2.dtb"
UBOOT_MACHINE = "nanopi_neo_plus2_defconfig"

View File

@ -4,6 +4,8 @@
require conf/machine/include/sun8i.inc
PREFERRED_VERSION_u-boot = "v2017.11%"
KERNEL_DEVICETREE = "sun8i-h3-nanopi-neo.dtb"
UBOOT_MACHINE = "nanopi_neo_defconfig"

View File

@ -1,9 +0,0 @@
#@TYPE: Machine
#@NAME: nanopi-neo2
#@DESCRIPTION: Machine configuration for the FriendlyARM NanoPi Neo 2, based on
# the Allwinner H5 SoC.
require conf/machine/include/sun50i.inc
KERNEL_DEVICETREE = "allwinner/sun50i-h5-nanopi-neo2.dtb"
UBOOT_MACHINE = "nanopi_neo2_defconfig"

View File

@ -1,13 +0,0 @@
#@TYPE: Machine
#@NAME: Olimex A64-OLinuXino Board
#@DESCRIPTION: Machine configuration for the Olimex A64-OLinuXino Board, based on Allwinner A64 CPU
#https://github.com/OLIMEX/OLINUXINO
require conf/machine/include/sun50i.inc
PREFFERED_VERSION_u-boot = "v2018.09%"
MACHINE_EXTRA_RRECOMMENDS += " linux-firmware-rtl8723"
KERNEL_DEVICETREE = "allwinner/sun50i-a64-olinuxino.dtb"
UBOOT_MACHINE = "a64-olinuxino_defconfig"

View File

@ -4,6 +4,8 @@
require conf/machine/include/sun8i.inc
PREFERRED_VERSION_u-boot = "v2017.11%"
KERNEL_DEVICETREE = "sun8i-h3-orangepi-one.dtb"
UBOOT_MACHINE = "orangepi_one_defconfig"

View File

@ -4,6 +4,8 @@
require conf/machine/include/sun8i.inc
PREFERRED_VERSION_u-boot = "v2017.03%"
KERNEL_DEVICETREE = "sun8i-h3-orangepi-pc-plus.dtb"
UBOOT_MACHINE = "orangepi_pc_plus_defconfig"

View File

@ -4,6 +4,8 @@
require conf/machine/include/sun8i.inc
PREFERRED_VERSION_u-boot = "v2017.11%"
KERNEL_DEVICETREE = "sun8i-h3-orangepi-pc.dtb"
UBOOT_MACHINE = "orangepi_pc_defconfig"

View File

@ -1,8 +0,0 @@
#@TYPE: Machine
#@NAME: orange-pi-plus2e
#@DESCRIPTION: Machine configuration for the orange-pi-plus2e, base on allwinner H3 CPU
require conf/machine/include/sun8i.inc
KERNEL_DEVICETREE = "sun8i-h3-orangepi-plus2e.dtb"
UBOOT_MACHINE = "orangepi_plus2e_defconfig"

View File

@ -1,9 +0,0 @@
#@TYPE: Machine
#@NAME: orange-pi-zero-plus2-h3
#@DESCRIPTION: Machine configuration for the orange-pi-zero-plus2, based on Allwinner H3 CPU
require conf/machine/include/sun8i.inc
require conf/machine/include/hardware/ap6212a.inc
KERNEL_DEVICETREE = "sun8i-h3-orangepi-zero-plus2.dtb"
UBOOT_MACHINE = "orangepi_zero_plus2_h3_defconfig"

View File

@ -2,8 +2,10 @@
#@NAME: orange-pi-zero-plus2
#@DESCRIPTION: Machine configuration for the orange-pi-zero-plus2, base on Allwinner H5 CPU
require conf/machine/include/sun50i.inc
require conf/machine/include/hardware/ap6212a.inc
PREFERRED_VERSION_u-boot = "v2017.11%"
KERNEL_DEVICETREE = "allwinner/sun50i-h5-orangepi-zero-plus2.dtb"
UBOOT_MACHINE = "orangepi_zero_plus2_defconfig"

View File

@ -4,6 +4,8 @@
require conf/machine/include/sun8i.inc
PREFERRED_VERSION_u-boot = "v2017.11%"
KERNEL_DEVICETREE = "sun8i-h2-plus-orangepi-zero.dtb"
UBOOT_MACHINE = "orangepi_zero_defconfig"

View File

@ -4,6 +4,8 @@
require conf/machine/include/sun4i.inc
PREFERRED_VERSION_u-boot = "v2017.11%"
KERNEL_DEVICETREE = "sun4i-a10-pcduino.dtb"
UBOOT_MACHINE = "Linksprite_pcDuino_defconfig"
SUNXI_FEX_FILE = "sys_config/a10/pcduino.fex"

View File

@ -1,9 +0,0 @@
#@TYPE: Machine
#@NAME: pine64-plus
#@DESCRIPTION: Machine configuration for the pine64-plus, based on Allwinner A64 CPU
require conf/machine/include/sun50i.inc
KERNEL_DEVICETREE = "allwinner/sun50i-a64-pine64-plus.dtb"
UBOOT_MACHINE = "pine64_plus_defconfig"

View File

@ -1,26 +1,16 @@
inherit deploy
DESCRIPTION = "ARM Trusted Firmware"
DESCRIPTION = "ARM Trusted Firmware Allwinner"
LICENSE = "BSD"
LIC_FILES_CHKSUM = "file://license.rst;md5=1dd070c98a281d18d9eefd938729b031"
LIC_FILES_CHKSUM = "file://license.md;md5=829bdeb34c1d9044f393d5a16c068371"
FILESEXTRAPATHS_append := "${THISDIR}/${PN}:"
SRC_URI = " \
git://github.com/ARM-software/arm-trusted-firmware.git;nobranch=1 \
"
SRCREV_sun50iw2 = "c390ecd6db5fadb054466a8d4168d9bbbff2fa95"
SRCREV_sun50iw6 = "c390ecd6db5fadb054466a8d4168d9bbbff2fa95"
SRCREV_sun50i = "c390ecd6db5fadb054466a8d4168d9bbbff2fa95"
SRC_URI = "git://github.com/apritzel/arm-trusted-firmware;nobranch=1"
SRCREV = "aa75c8da415158a94b82a430b2b40000778e851f"
S = "${WORKDIR}/git"
B = "${WORKDIR}/build"
COMPATIBLE_MACHINE = "(sun50iw2|sun50iw6|sun50i)"
COMPATIBLE_MACHINE = "(sun50i)"
PLATFORM_sun50iw2 = "sun50i_a64"
PLATFORM_sun50i = "sun50i_a64"
PLATFORM_sun50iw6 = "sun50i_h6"
PLATFORM_sun50i = "sun50iw1p1"
LDFLAGS[unexport] = "1"
@ -32,8 +22,6 @@ do_compile() {
all
}
do_deploy() {
install -D -p -m 0644 ${B}/${PLATFORM}/release/bl31.bin ${DEPLOYDIR}/bl31.bin
do_install() {
install -D -p -m 0644 ${B}/${PLATFORM}/release/bl31.bin ${DEPLOY_DIR_IMAGE}/bl31.bin
}
addtask deploy after do_compile

View File

@ -1,21 +0,0 @@
From 6adb2ebdc4022c24497e9ee4dccab41d18e3105d Mon Sep 17 00:00:00 2001
From: Florin Sarbu <florin@resin.io>
Date: Wed, 12 Sep 2018 14:22:49 +0200
Subject: [PATCH] nanopi_neo_air_defconfig: Enable eMMC support
Upstream-status: Pending
Signed-off-by: Florin Sarbu <florin@resin.io>
---
configs/nanopi_neo_air_defconfig | 1 +
1 file changed, 1 insertion(+)
diff --git a/configs/nanopi_neo_air_defconfig b/configs/nanopi_neo_air_defconfig
index 5ad90ddd16..8b7a4eb45d 100644
--- a/configs/nanopi_neo_air_defconfig
+++ b/configs/nanopi_neo_air_defconfig
@@ -15,3 +15,4 @@ CONFIG_DEFAULT_DEVICE_TREE="sun8i-h3-nanopi-neo-air"
CONFIG_USB_EHCI_HCD=y
CONFIG_USB_OHCI_HCD=y
CONFIG_SYS_USB_EVENT_POLL_VIA_INT_QUEUE=y
+CONFIG_MMC_SUNXI_SLOT_EXTRA=2

View File

@ -1,67 +0,0 @@
From bb6f500c10cc8f5f31245626899e0732b7b287c5 Mon Sep 17 00:00:00 2001
From: Marek Belisko <marek.belisko@open-nandra.com>
Date: Wed, 19 Aug 2020 13:39:49 +0200
Subject: [PATCH] Revert "sunxi: psci: avoid error address-of-packed-member"
This reverts commit 9bd34a69a453d409792e08c00953ce8862145e65.
---
arch/arm/cpu/armv7/sunxi/psci.c | 16 +++++-----------
1 file changed, 5 insertions(+), 11 deletions(-)
diff --git a/arch/arm/cpu/armv7/sunxi/psci.c b/arch/arm/cpu/armv7/sunxi/psci.c
index 5b68900..2c5d99e 100644
--- a/arch/arm/cpu/armv7/sunxi/psci.c
+++ b/arch/arm/cpu/armv7/sunxi/psci.c
@@ -75,7 +75,7 @@ static void __secure __mdelay(u32 ms)
isb();
}
-static void __secure clamp_release(void __maybe_unused *clamp)
+static void __secure clamp_release(u32 __maybe_unused *clamp)
{
#if defined(CONFIG_MACH_SUN6I) || defined(CONFIG_MACH_SUN7I) || \
defined(CONFIG_MACH_SUN8I_H3) || \
@@ -90,7 +90,7 @@ static void __secure clamp_release(void __maybe_unused *clamp)
#endif
}
-static void __secure clamp_set(void __maybe_unused *clamp)
+static void __secure clamp_set(u32 __maybe_unused *clamp)
{
#if defined(CONFIG_MACH_SUN6I) || defined(CONFIG_MACH_SUN7I) || \
defined(CONFIG_MACH_SUN8I_H3) || \
@@ -99,28 +99,22 @@ static void __secure clamp_set(void __maybe_unused *clamp)
#endif
}
-static void __secure sunxi_power_switch(void *clamp, void *pwroff_ptr, bool on,
+static void __secure sunxi_power_switch(u32 *clamp, u32 *pwroff, bool on,
int cpu)
{
- u32 pwroff;
-
- memcpy(&pwroff, pwroff_ptr, sizeof(u32));
-
if (on) {
/* Release power clamp */
clamp_release(clamp);
/* Clear power gating */
- clrbits_le32(&pwroff, BIT(cpu));
+ clrbits_le32(pwroff, BIT(cpu));
} else {
/* Set power gating */
- setbits_le32(&pwroff, BIT(cpu));
+ setbits_le32(pwroff, BIT(cpu));
/* Activate power clamp */
clamp_set(clamp);
}
-
- memcpy(pwroff_ptr, &pwroff, sizeof(u32));
}
#ifdef CONFIG_MACH_SUN8I_R40
--
2.7.4

View File

@ -0,0 +1,12 @@
diff --git a/tools/Makefile b/tools/Makefile
index 5db2a54..54bd224 100644
--- a/tools/Makefile
+++ b/tools/Makefile
@@ -134,6 +134,7 @@ tools/_libfdt.so: $(LIBFDT_SRCS) $(LIBFDT_SWIG)
$(Q)unset CC; \
unset CROSS_COMPILE; \
LDFLAGS="$(HOSTLDFLAGS)" CFLAGS= VERSION="u-boot-$(UBOOTVERSION)" \
+ CC="$(HOSTCC)" LDSHARED="$(HOSTLDSHARED)" \
CPPFLAGS="$(_hostc_flags)" OBJDIR=tools \
SOURCES="$(LIBFDT_SRCS) tools/libfdt.i" \
SWIG_OPTS="-I$(srctree)/lib/libfdt -I$(srctree)/lib" \

View File

@ -20,9 +20,8 @@ UBOOT_MACHINE_meleg = "Mele_A1000G_config"
SRC_URI = " \
git://github.com/linux-sunxi/u-boot-sunxi.git;protocol=git;branch=sunxi \
file://0001-gcc5-fixes.patch \
file://0002-gcc6-fixes.patch \
file://0003-No-gcc-version-specific-includes.patch \
file://0002-gcc5-fixes.patch \
file://0003-gcc6-fixes.patch \
"
PE = "1"
@ -36,7 +35,3 @@ S = "${WORKDIR}/git"
PACKAGE_ARCH = "${MACHINE_ARCH}"
SPL_BINARY="u-boot-sunxi-with-spl.bin"
do_configure () {
oe_runmake -C ${S} O=${B} ${UBOOT_MACHINE}
}

View File

@ -1,24 +0,0 @@
From bc4aa5814cbedbfaa1c79dfe7ea2571fee7f2d51 Mon Sep 17 00:00:00 2001
From: Andrey Lebedev <andrey@lebedev.lt>
Date: Wed, 22 Jan 2020 20:00:11 +0200
Subject: [PATCH] No gcc version-specific includes
In order to support gcc-5 and above. Fixes compilation errors like
linux/compiler-gcc9.h: No such file or directory
---
include/linux/compiler-gcc.h | 1 -
1 file changed, 1 deletion(-)
diff --git a/include/linux/compiler-gcc.h b/include/linux/compiler-gcc.h
index 9896e547b9..5f0bd65f3a 100644
--- a/include/linux/compiler-gcc.h
+++ b/include/linux/compiler-gcc.h
@@ -90,4 +90,3 @@
#define __gcc_header(x) #x
#define _gcc_header(x) __gcc_header(linux/compiler-gcc##x.h)
#define gcc_header(x) _gcc_header(x)
-#include gcc_header(__GNUC__)
--
2.20.1

View File

@ -1,8 +1,13 @@
FILESEXTRAPATHS_prepend := "${THISDIR}/files:"
DESCRIPTION="Upstream's U-boot configured for sunxi devices"
DEPENDS += " bc-native dtc-native swig-native python3-native flex-native bison-native "
require recipes-bsp/u-boot/u-boot.inc
DEPENDS += " bc-native dtc-native swig-native python3-native "
DEPENDS_append_sun50i = " atf-sunxi "
LICENSE = "GPLv2+"
LIC_FILES_CHKSUM = "file://Licenses/README;md5=a2c678cfd4a4d97135585cad908541c6"
COMPATIBLE_MACHINE = "(sun4i|sun5i|sun7i|sun8i|sun50i)"
DEFAULT_PREFERENCE_sun4i="1"
@ -11,12 +16,17 @@ DEFAULT_PREFERENCE_sun7i="1"
DEFAULT_PREFERENCE_sun8i="1"
DEFAULT_PREFERENCE_sun50i="1"
SRC_URI += " \
file://0001-nanopi_neo_air_defconfig-Enable-eMMC-support.patch \
SRC_URI = "git://git.denx.de/u-boot.git;branch=master \
file://u-boot-pylibfdt-native-build.patch \
file://boot.cmd \
"
# fix booting issue on orange pi zero
SRC_URI_append_orange-pi-zero = " file://0002-Revert-sunxi-psci-avoid-error-address-of-packed-memb.patch"
SRCREV = "c253573f3e269fd9a24ee6684d87dd91106018a5"
PV = "v2017.11+git${SRCPV}"
PE = "2"
S = "${WORKDIR}/git"
UBOOT_ENV_SUFFIX = "scr"
UBOOT_ENV = "boot"

View File

@ -0,0 +1,51 @@
--- pyA20-0.2.1/setup.py 2014-09-04 12:17:18.000000000 +0200
+++ pyA20-0.2.1/setup.py 2014-11-24 17:44:37.000000000 +0100
@@ -43,31 +43,31 @@
Detect processor type
:return:
"""
- cpuinfo = open("/proc/cpuinfo", 'r')
- for line in cpuinfo:
- if "Hardware" in line:
- processor = line.split(":")[1].rstrip()
+ #cpuinfo = open("/proc/cpuinfo", 'r')
+ #for line in cpuinfo:
+ # if "Hardware" in line:
+ # processor = line.split(":")[1].rstrip()
- if "sun4i" in processor:
- print ("Detected processor: " + print_color(processor) + " (Probably Allwinner A10)")
+ # if "sun4i" in processor:
+ # print ("Detected processor: " + print_color(processor) + " (Probably Allwinner A10)")
- elif "sun5i" in processor:
- print ("Detected processor: " + print_color(processor) + " (Probably Allwinner A13)")
+ # elif "sun5i" in processor:
+ # print ("Detected processor: " + print_color(processor) + " (Probably Allwinner A13)")
- elif "sun7i" in processor:
- print ("Detected processor: " + print_color(processor) + " (Probably Allwinner A20)")
+ # elif "sun7i" in processor:
+ # print ("Detected processor: " + print_color(processor) + " (Probably Allwinner A20)")
- else:
- print ("Detected processor: " + print_color("unknown"))
+ # else:
+ # print ("Detected processor: " + print_color("unknown"))
- if processor_type not in processor:
- print_warning()
+ # if processor_type not in processor:
+ # print_warning()
- return
+ return
- print ("No processor detected")
- print_warning()
+ #print ("No processor detected")
+ #print_warning()
class build_ext(_build_ext):

View File

@ -1,23 +1,24 @@
DESCRIPTION = "A module to control Allwinner GPIO,SPI and I2C channels"
HOMEPAGE = "https://pypi.python.org/pypi/pyA20"
SECTION = "devel/python"
LICENSE = "GPLv3"
LIC_FILES_CHKSUM = "file://PKG-INFO;md5=4e584373bb0f46ef1e423cb7df37847d"
DEPENDS = "python3"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://PKG-INFO;md5=bfe0261ded6cff75086193ec2f79129e"
DEPENDS = "python"
# No GPIO mappings for other machines yet
COMPATIBLE_MACHINE = "(olinuxino-a13|olinuxino-a10|olinuxino-a20|olinuxino-a10lime|olinuxino-a20lime|olinuxino-a20lime2|olinuxino-a13som|olinuxino-a20som)"
SRC_URI = "https://pypi.python.org/packages/source/p/pyA20/pyA20-${PV}.tar.gz \
file://setup.py.patch \
file://mapping.h \
"
S = "${WORKDIR}/pyA20-${PV}"
inherit distutils3
inherit distutils
do_compile_prepend() {
cp ${WORKDIR}/mapping.h ${S}/pyA20/gpio/mapping.h
}
SRC_URI[md5sum] = "cab03b4931199804603d1074f6d8f48f"
SRC_URI[sha256sum] = "4bef559a9c5a4d648d9834bad996cf2805b20d6063b8051029ffdf9deda2b536"
SRC_URI[md5sum] = "2290066bbe274000c53693959a8005b4"
SRC_URI[sha256sum] = "b15e4ee1016b7eb52001cbccde3751868624a88d2adbb9adc5404628f7e59e7e"

View File

@ -0,0 +1,24 @@
DESCRIPTION = "A module to control Allwinner GPIO,SPI and I2C channels"
HOMEPAGE = "https://pypi.python.org/pypi/pyA20SOM"
SECTION = "devel/python"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://PKG-INFO;md5=cf6345f2cb2acee98b01c493d68b8322"
DEPENDS = "python"
# No GPIO mappings for other machines yet
COMPATIBLE_MACHINE = "olinuxino-a20som"
SRC_URI = "https://pypi.python.org/packages/source/p/pyA20SOM/pyA20SOM-${PV}.tar.gz \
file://setup.py.patch \
file://mapping.h \
"
S = "${WORKDIR}/pyA20SOM-${PV}"
inherit distutils
do_compile_prepend() {
cp ${WORKDIR}/mapping.h ${S}/pyA20SOM/gpio/mapping.h
}
SRC_URI[md5sum] = "a720115ef1d3dffe82f42f2157ca1c56"
SRC_URI[sha256sum] = "1ac1025596cc112964f7caac9a6a523d5da61623c248ccc178c6cbb4bc1b4549"

View File

@ -31,7 +31,7 @@ SRC_URI = "gitsm://github.com/linux-sunxi/sunxi-mali.git \
S = "${WORKDIR}/git"
DEPENDS = "libdrm xorgproto libump patchelf-native"
DEPENDS = "libdrm dri2proto libump"
PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11', '', d)} ${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'wayland', '', d)}"
PACKAGECONFIG[wayland] = "EGL_TYPE=framebuffer,,,"
@ -70,13 +70,11 @@ do_install() {
make libdir=${D}${libdir}/ includedir=${D}${includedir}/ install
make libdir=${D}${libdir}/ includedir=${D}${includedir}/ install -C include
rm -f ${D}${includedir}/KHR/khrplatform.h
# Fix .so name and create symlinks, binary package provides .so wich can't be included directly in package without triggering the 'dev-so' QA check
# Packages like xf86-video-fbturbo dlopen() libUMP.so, so we do need to ship the .so files in ${PN}
mv ${D}${libdir}/libMali.so ${D}${libdir}/libMali.so.3
patchelf --set-soname libMali.so.3 ${D}${libdir}/libMali.so.3
ln -sf libMali.so.3 ${D}${libdir}/libMali.so
for flib in libEGL.so.1.4 libGLESv1_CM.so.1.1 libGLESv2.so.2.0 ; do

View File

@ -1,5 +0,0 @@
# Enable lima and panfrost Mesa drivers
PACKAGECONFIG_append_use-mailine-graphics = " lima panfrost"
# Enable KMS renderonly Mesa support
# See https://cgit.freedesktop.org/mesa/mesa/commit/?id=2b780fe89300199f2334539aa1678e9b68f0434f
GALLIUMDRIVERS_append_use-mailine-graphics = ",kmsro"

View File

@ -3,7 +3,7 @@ DESCRIPTION = "Library for the DRI2 extension to the X Window System"
LICENSE = "MIT-X"
LIC_FILES_CHKSUM = "file://COPYING;md5=827da9afab1f727f2a66574629e0f39c"
DEPENDS = "libdrm libxext libxfixes xorgproto"
DEPENDS = "libdrm libxext xextproto libxfixes dri2proto"
PE = "1"
PV = "1.0.0+git${SRCPV}"

View File

@ -5,7 +5,7 @@ DESCRIPTION = "X.Org X server -- A10/A13 display driver"
LICENSE = "MIT-X"
LIC_FILES_CHKSUM = "file://COPYING;md5=f91dc3ee5ce59eb4b528e67e98a31266"
DEPENDS += "sunxi-mali libump xorgproto"
DEPENDS += "sunxi-mali libump xf86driproto"
PE = "3"
PV = "0.5.1+git${SRCPV}"

View File

@ -1,13 +0,0 @@
# The brcmfmac driver looks for NVRAM files using the first entry in board
# compatible since kernel >= 5.0:
# https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=0ad4b55b2f29784f93875e6231bf57cd233624a2
# We create a link to the AP6212 module NVRAM file so that firmware is
# autodetected by the driver.
# WARNING: The following commit is required for NVRAM files to be included in
# linux-firmware-bcm43430 package:
# http://git.openembedded.org/openembedded-core/commit/?id=dde0f79f32fa6bab045ef60199903f74c4cc3393
do_install_append() {
ln -sf -r ${D}${nonarch_base_libdir}/firmware/brcm/brcmfmac43430-sdio.AP6212.txt ${D}${nonarch_base_libdir}/firmware/brcm/brcmfmac43430-sdio.xunlong,orangepi-zero-plus2.txt
ln -sf -r ${D}${nonarch_base_libdir}/firmware/brcm/brcmfmac43430-sdio.AP6212.txt ${D}${nonarch_base_libdir}/firmware/brcm/brcmfmac43430-sdio.xunlong,orangepi-zero-plus2-h3.txt
ln -sf -r ${D}${nonarch_base_libdir}/firmware/brcm/brcmfmac43430-sdio.AP6212.txt ${D}${nonarch_base_libdir}/firmware/brcm/brcmfmac43430-sdio.friendlyarm,nanopi-neo-plus2.txt
}

View File

@ -1,32 +0,0 @@
SECTION = "kernel"
LICENSE = "GPLv2"
LIC_FILES_CHKSUM = "file://COPYING;md5=bbea815ee2795b2f4230826c0c6b8814"
COMPATIBLE_MACHINE = "(sun4i|sun5i|sun7i|sun8i|sun50i)"
inherit kernel
require linux.inc
# 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"
DEPENDS += "rsync-native"
# 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 = "https://www.kernel.org/pub/linux/kernel/v5.x/linux-${PV}.tar.xz \
file://0003-ARM-dts-nanopi-neo-air-Add-WiFi-eMMC.patch \
file://0001-dts-orange-pi-zero-Add-wifi-support.patch \
file://defconfig \
"
SRC_URI_append_use-mailine-graphics = " file://drm.cfg"
SRC_URI_append_bananapi = " file://axp20x.cfg"
FILES_${KERNEL_PACKAGE_NAME}-base_append = " ${nonarch_base_libdir}/modules/${KERNEL_VERSION}/modules.builtin.modinfo"

View File

@ -0,0 +1,29 @@
From 1596e282f52c8f43fd1cc4a39096f28563558a5c Mon Sep 17 00:00:00 2001
From: Sergey Matyukevich <geomatsi@gmail.com>
Date: Fri, 3 Nov 2017 22:12:43 +0300
Subject: [PATCH 1/2] arm64: dts: orange-pi-zero-plus2: fix sdcard detect
The sdcard detect pin on orange-pi-zero-plus2 is pulled up.
Fix cd-gpio description to enable sdcard detect.
Signed-off-by: Sergey Matyukevich <geomatsi@gmail.com>
---
arch/arm64/boot/dts/allwinner/sun50i-h5-orangepi-zero-plus2.dts | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/arch/arm64/boot/dts/allwinner/sun50i-h5-orangepi-zero-plus2.dts b/arch/arm64/boot/dts/allwinner/sun50i-h5-orangepi-zero-plus2.dts
index b6b7a561df8c..a42fd79a62a3 100644
--- a/arch/arm64/boot/dts/allwinner/sun50i-h5-orangepi-zero-plus2.dts
+++ b/arch/arm64/boot/dts/allwinner/sun50i-h5-orangepi-zero-plus2.dts
@@ -71,7 +71,7 @@
pinctrl-0 = <&mmc0_pins_a>, <&mmc0_cd_pin>;
vmmc-supply = <&reg_vcc3v3>;
bus-width = <4>;
- cd-gpios = <&pio 5 6 GPIO_ACTIVE_HIGH>;
+ cd-gpios = <&pio 5 6 GPIO_ACTIVE_LOW>;
status = "okay";
};
--
2.11.0

View File

@ -1,87 +0,0 @@
diff --git a/arch/arm/boot/dts/sun8i-h2-plus-orangepi-zero.dts b/arch/arm/boot/dts/sun8i-h2-plus-orangepi-zero.dts
index 84cd9c061..917986cce 100644
--- a/arch/arm/boot/dts/sun8i-h2-plus-orangepi-zero.dts
+++ b/arch/arm/boot/dts/sun8i-h2-plus-orangepi-zero.dts
@@ -80,13 +80,15 @@
};
};
- reg_vcc_wifi: reg_vcc_wifi {
+ vdd_wifi: vdd_wifi {
compatible = "regulator-fixed";
- regulator-min-microvolt = <3300000>;
- regulator-max-microvolt = <3300000>;
- regulator-name = "vcc-wifi";
- enable-active-high;
+ regulator-name = "wifi";
+ regulator-min-microvolt = <1800000>;
+ regulator-max-microvolt = <1800000>;
gpio = <&pio 0 20 GPIO_ACTIVE_HIGH>;
+ startup-delay-us = <70000>;
+ enable-active-high;
+
};
reg_vdd_cpux: vdd-cpux-regulator {
@@ -106,10 +108,12 @@
1300000 1>;
};
- wifi_pwrseq: wifi_pwrseq {
+ pwrseq_wifi: pwrseq_wifi {
compatible = "mmc-pwrseq-simple";
+ pinctrl-names = "default";
+ pinctrl-0 = <&wifi_rst>;
reset-gpios = <&r_pio 0 7 GPIO_ACTIVE_LOW>;
- post-power-on-delay-ms = <200>;
+ post-power-on-delay-ms = <50>;
};
};
@@ -140,9 +144,11 @@
};
&mmc1 {
- vmmc-supply = <&reg_vcc_wifi>;
- mmc-pwrseq = <&wifi_pwrseq>;
+ vmmc-supply = <&reg_vcc3v3>;
+ vqmmc-supply = <&vdd_wifi>;
+ mmc-pwrseq = <&pwrseq_wifi>;
bus-width = <4>;
+ max-frequency = <16000000>;
non-removable;
status = "okay";
@@ -152,6 +158,13 @@
*/
xr819: sdio_wifi@1 {
reg = <1>;
+ compatible = "xradio,xr819";
+ pinctrl-names = "default";
+ pinctrl-0 = <&wifi_wake>;
+ interrupt-parent = <&pio>;
+ interrupts = <6 10 IRQ_TYPE_EDGE_RISING>;
+ interrupt-names = "host-wake";
+ local-mac-address = [dc 44 6d c0 ff ee];
};
};
@@ -208,3 +221,18 @@
status = "okay";
usb0_id_det-gpios = <&pio 6 12 GPIO_ACTIVE_HIGH>; /* PG12 */
};
+
+&pio {
+ wifi_wake: wifi_wake {
+ pins = "PG10";
+ function = "gpio_in";
+ };
+};
+
+&r_pio {
+ wifi_rst: wifi_rst {
+ pins = "PL7";
+ function = "gpio_out";
+ };
+};
+

View File

@ -0,0 +1,74 @@
From 4d470855525b5993e766ad9f9304482739ba918d Mon Sep 17 00:00:00 2001
From: Sergey Matyukevich <geomatsi@gmail.com>
Date: Fri, 3 Nov 2017 22:24:45 +0300
Subject: [PATCH 2/2] arm64: dts: orange-pi-zero-plus2: enable AP6212a WiFi/BT
combo
Enable AP6212a WiFi/BT combo chip on orange-pi-zero-plus2 board:
- WiFi SDIO interface is connected to MMC1
- WiFi REG_ON pin connected to gpio PA9: attach to mmc-pwrseq
- WiFi HOST_WAKE pin connected to gpio PL7
- BT is connected to UART1
Signed-off-by: Sergey Matyukevich <geomatsi@gmail.com>
---
.../allwinner/sun50i-h5-orangepi-zero-plus2.dts | 32 ++++++++++++++++++++++
1 file changed, 32 insertions(+)
diff --git a/arch/arm64/boot/dts/allwinner/sun50i-h5-orangepi-zero-plus2.dts b/arch/arm64/boot/dts/allwinner/sun50i-h5-orangepi-zero-plus2.dts
index a42fd79a62a3..d415b7b67cce 100644
--- a/arch/arm64/boot/dts/allwinner/sun50i-h5-orangepi-zero-plus2.dts
+++ b/arch/arm64/boot/dts/allwinner/sun50i-h5-orangepi-zero-plus2.dts
@@ -64,6 +64,13 @@
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
};
+
+ wifi_pwrseq: wifi_pwrseq {
+ compatible = "mmc-pwrseq-simple";
+ pinctrl-names = "default";
+ reset-gpios = <&pio 0 9 GPIO_ACTIVE_LOW>; /* PA9 */
+ post-power-on-delay-ms = <200>;
+ };
};
&mmc0 {
@@ -75,6 +82,25 @@
status = "okay";
};
+&mmc1 {
+ pinctrl-names = "default";
+ pinctrl-0 = <&mmc1_pins_a>;
+ vmmc-supply = <&reg_vcc3v3>;
+ vqmmc-supply = <&reg_vcc3v3>;
+ mmc-pwrseq = <&wifi_pwrseq>;
+ bus-width = <4>;
+ non-removable;
+ status = "okay";
+
+ brcmf: wifi@1 {
+ reg = <1>;
+ compatible = "brcm,bcm4329-fmac";
+ interrupt-parent = <&r_pio>;
+ interrupts = <0 7 IRQ_TYPE_LEVEL_LOW>; /* PL7 */
+ interrupt-names = "host-wake";
+ };
+};
+
&mmc2 {
pinctrl-names = "default";
pinctrl-0 = <&mmc2_8bit_pins>;
@@ -90,3 +116,9 @@
pinctrl-0 = <&uart0_pins_a>;
status = "okay";
};
+
+&uart1 {
+ pinctrl-names = "default";
+ pinctrl-0 = <&uart1_pins>, <&uart1_rts_cts_pins>;
+ status = "okay";
+};
--
2.11.0

View File

@ -9,22 +9,18 @@ This patch was originally submitted by Jelle van der Waa. Martin Kelly
modified it to compile on the latest kernel, fixed up some review
comments from Maxime Ripard, and re-tested the patch.
The patch has been reworked to add back eMMC support which has been left
out at the last backport.
Cc: Maxime Ripard <maxime.ripard@free-electrons.com>
Cc: linux-sunxi@googlegroups.com
Cc: devicetree@vger.kernel.org
Signed-off-by: Jelle van der Waa <jelle@vdwaa.nl>
Signed-off-by: Martin Kelly <mkelly@xevo.com>
Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
Signed-off-by: Florin Sarbu <florin@resin.io>
---
arch/arm/boot/dts/sun8i-h3-nanopi-neo-air.dts | 34 +++++++++++++++++++++++++++
1 file changed, 34 insertions(+)
arch/arm/boot/dts/sun8i-h3-nanopi-neo-air.dts | 24 ++++++++++++++++++++++++
1 file changed, 24 insertions(+)
diff --git a/arch/arm/boot/dts/sun8i-h3-nanopi-neo-air.dts b/arch/arm/boot/dts/sun8i-h3-nanopi-neo-air.dts
index 03ff6f8..a9331fe 100644
index 03ff6f8b93ff..920849092cc8 100644
--- a/arch/arm/boot/dts/sun8i-h3-nanopi-neo-air.dts
+++ b/arch/arm/boot/dts/sun8i-h3-nanopi-neo-air.dts
@@ -72,6 +72,11 @@
@ -39,7 +35,7 @@ index 03ff6f8..a9331fe 100644
};
&mmc0 {
@@ -84,6 +89,35 @@
@@ -84,6 +89,25 @@
status = "okay";
};
@ -61,16 +57,6 @@ index 03ff6f8..a9331fe 100644
+ interrupt-names = "host-wake";
+ };
+};
+
+&mmc2 {
+ pinctrl-names = "default";
+ pinctrl-0 = <&mmc2_8bit_pins>;
+ vmmc-supply = <&reg_vcc3v3>;
+ vqmmc-supply = <&reg_vcc3v3>;
+ bus-width = <8>;
+ non-removable;
+ status = "okay";
+};
+
&uart0 {
pinctrl-names = "default";

View File

@ -141,11 +141,6 @@ CONFIG_BT_LEDS=y
# CONFIG_BT_DEBUGFS is not set
CONFIG_BT_HCIUART=m
CONFIG_BT_HCIUART_LL=y
CONFIG_WIRELESS=y
CONFIG_WIRELESS_EXT=y
CONFIG_WEXT_CORE=y
CONFIG_WEXT_PROC=y
CONFIG_WEXT_PRIV=y
CONFIG_CFG80211=m
CONFIG_MAC80211=m
CONFIG_MAC80211_LEDS=y
@ -436,11 +431,6 @@ CONFIG_USB_QCOM_8X16_PHY=y
CONFIG_USB_ULPI=y
CONFIG_USB_GADGET=y
CONFIG_USB_RENESAS_USBHS_UDC=m
CONFIG_USB_MUSB_HDRC=y
# Restrict to host mode, as it is hard-coded that way in the device tree
# (dr_mode = "host" in the &usb_otg node)
CONFIG_USB_MUSB_HOST=y
CONFIG_USB_MUSB_SUNXI=y
CONFIG_MMC=y
CONFIG_MMC_BLOCK_MINORS=32
CONFIG_MMC_ARMMMCI=y
@ -499,8 +489,6 @@ CONFIG_VIRTIO_BALLOON=y
CONFIG_VIRTIO_MMIO=y
CONFIG_XEN_GNTDEV=y
CONFIG_XEN_GRANT_DEV_ALLOC=y
CONFIG_STAGING=y
CONFIG_RTL8723BS=m
CONFIG_COMMON_CLK_RK808=y
CONFIG_COMMON_CLK_SCPI=y
CONFIG_COMMON_CLK_CS2000_CP=y

View File

@ -485,8 +485,8 @@ CONFIG_CW1200_WLAN_SDIO=m
CONFIG_CW1200_WLAN_SPI=m
CONFIG_RSI_91X=m
# CONFIG_INPUT_MOUSEDEV is not set
CONFIG_INPUT_KEYBOARD=y
CONFIG_INPUT_MOUSE=y
# CONFIG_INPUT_KEYBOARD is not set
# CONFIG_INPUT_MOUSE is not set
CONFIG_INPUT_TOUCHSCREEN=y
CONFIG_TOUCHSCREEN_SUN4I=y
CONFIG_INPUT_MISC=y

View File

@ -1,4 +0,0 @@
CONFIG_MFD_AXP20X_I2C=y
CONFIG_MFD_AXP20X=y
CONFIG_IIO=y
CONFIG_AXP20X_POWER=y

View File

@ -1,8 +0,0 @@
CONFIG_DRM=y
CONFIG_DRM_SUN4I=y
CONFIG_DRM_SUN8I_DW_HDMI=y
CONFIG_DRM_SUN8I_MIXER=y
CONFIG_DRM_LIMA=y
CONFIG_DRM_PANFROST=y
CONFIG_CMA=y
CONFIG_DMA_CMA=y

View File

@ -1,7 +1,7 @@
SECTION = "kernel"
DESCRIPTION = "Mainline Longterm Linux kernel"
DESCRIPTION = "Mainline Linux kernel"
LICENSE = "GPLv2"
LIC_FILES_CHKSUM = "file://COPYING;md5=bbea815ee2795b2f4230826c0c6b8814"
LIC_FILES_CHKSUM = "file://COPYING;md5=d7810fab7487fb0aad327b76f1be7cd7"
COMPATIBLE_MACHINE = "(sun4i|sun5i|sun7i|sun8i|sun50i)"
inherit kernel
@ -18,15 +18,13 @@ RDEPENDS_${KERNEL_PACKAGE_NAME}-base += "kernel-devicetree"
KERNEL_EXTRA_ARGS += "LOADADDR=${UBOOT_ENTRYPOINT}"
S = "${WORKDIR}/linux-${PV}"
SRC_URI[md5sum] = "dfb4db3d95bdcd8114281e32eb0be5cd"
SRC_URI[sha256sum] = "d8c5d7844214510e85ceb9f5236f27f63fc03535a143f3aaa0c1677a8f92e631"
SRC_URI[md5sum] = "e1051f6b15d6399a5de2441dd4e15537"
SRC_URI[sha256sum] = "ffc393a0c66f80375eacd3fb177b92e5c9daa07de0dcf947e925e049352e6142"
SRC_URI = "https://www.kernel.org/pub/linux/kernel/v4.x/linux-${PV}.tar.xz \
file://0001-arm64-dts-orange-pi-zero-plus2-fix-sdcard-detect.patch \
file://0002-arm64-dts-orange-pi-zero-plus2-enable-AP6212a-WiFi-B.patch \
file://0003-ARM-dts-nanopi-neo-air-Add-WiFi-eMMC.patch \
file://defconfig \
"
SRC_URI_append_orange-pi-zero += "\
file://0001-dts-orange-pi-zero-Add-wifi-support.patch \
"

View File

@ -1,6 +0,0 @@
require linux-mainline.inc
DESCRIPTION = "Mainline Longterm Linux kernel"
SRC_URI[md5sum] = "a3820e9aa56af51c0331b7f427e6f71b"
SRC_URI[sha256sum] = "21626132658dc34cb41b7aa7b80ecf83751890a71ac1a63d77aea9d488271a03"

View File

@ -1,6 +0,0 @@
require linux-mainline.inc
DESCRIPTION = "Mainline Stable Linux kernel"
SRC_URI[md5sum] = "3ea50025d8c679a327cf2fc225d81a46"
SRC_URI[sha256sum] = "2bef3edcf44c746383045f4a809b2013e18c52319c827875ed8e89138951cab2"

View File

@ -0,0 +1,29 @@
SECTION = "kernel"
DESCRIPTION = "Mainline Linux kernel"
LICENSE = "GPLv2"
LIC_FILES_CHKSUM = "file://COPYING;md5=d7810fab7487fb0aad327b76f1be7cd7"
COMPATIBLE_MACHINE = "(sun4i|sun5i|sun7i|sun8i)"
inherit kernel
require linux.inc
KBRANCH ?= "master"
# Pull in the devicetree files into the rootfs
RDEPENDS_${KERNEL_PACKAGE_NAME}-base += "kernel-devicetree"
# Default is to use stable kernel version
# If you want to use latest git version set to "1"
DEFAULT_PREFERENCE = "-1"
KERNEL_EXTRA_ARGS += "LOADADDR=${UBOOT_ENTRYPOINT}"
# 4.15-rc1
PV = "4.15+git${SRCPV}"
SRCREV_pn-${PN} = "4fbd8d194f06c8a3fd2af1ce560ddb31f7ec8323"
SRC_URI = "git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git;protocol=git;branch=master \
file://defconfig \
"
S = "${WORKDIR}/git"

View File

@ -1,29 +0,0 @@
From 25a7e85eb0d58479f7d8895b1b29a648bd07d60e Mon Sep 17 00:00:00 2001
From: Andrey Lebedev <andrey@lebedev.lt>
Date: Mon, 20 Jan 2020 23:19:51 +0200
Subject: [PATCH 2/2] Fix asm error in put_user under gcc version 8 and above
Fixes these errors during compilation of linux-sunxi-3.4 kernel:
/tmp/ccCGMQmS.s:648: Error: .err encountered
Taken from https://patchwork.kernel.org/patch/10546809/
---
arch/arm/include/asm/uaccess.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/arch/arm/include/asm/uaccess.h b/arch/arm/include/asm/uaccess.h
index b04850fd..abfafbbf 100644
--- a/arch/arm/include/asm/uaccess.h
+++ b/arch/arm/include/asm/uaccess.h
@@ -159,7 +159,7 @@ extern int __put_user_8(void *, unsigned long long);
({ \
unsigned long __limit = current_thread_info()->addr_limit - 1; \
const typeof(*(p)) __user *__tmp_p = (p); \
- register const typeof(*(p)) __r2 asm("r2") = (x); \
+ register typeof(*(p)) __r2 asm("r2") = (x); \
register const typeof(*(p)) __user *__p asm("r0") = __tmp_p; \
register unsigned long __l asm("r1") = __limit; \
register int __e asm("r0"); \
--
2.20.1

View File

@ -1,25 +0,0 @@
From 302604ee4a2011871cb26deaf69d567cf57d0fe3 Mon Sep 17 00:00:00 2001
From: Andrey Lebedev <andrey@lebedev.lt>
Date: Mon, 20 Jan 2020 23:20:07 +0200
Subject: [PATCH 1/2] Silence annoying warning
---
include/linux/log2.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/include/linux/log2.h b/include/linux/log2.h
index fd7ff3d9..14458fdd 100644
--- a/include/linux/log2.h
+++ b/include/linux/log2.h
@@ -18,7 +18,7 @@
/*
* deal with unrepresentable constant logarithms
*/
-extern __attribute__((const, noreturn))
+extern __attribute__((const))
int ____ilog2_NaN(void);
/*
--
2.20.1

View File

@ -14,12 +14,9 @@ MACHINE_KERNEL_PR_append = "a"
SRC_URI += "git://github.com/linux-sunxi/linux-sunxi.git;branch=sunxi-3.4;protocol=git \
file://0001-compiler-gcc-integrate-the-various-compiler-gcc-345-.patch \
file://0002-use-static-inline-in-ARM-ftrace.patch \
file://0003-gcc5-fixes.patch \
file://0004-arm-put-user-asm-fix.patch \
file://0005-silence-warning.patch \
file://0001-gcc5-fixes.patch \
file://defconfig \
"
LIC_FILES_CHKSUM = "file://COPYING;md5=d7810fab7487fb0aad327b76f1be7cd7"
S = "${WORKDIR}/git"

View File

@ -1,6 +1,7 @@
DESCRIPTION = "Linux Kernel"
SECTION = "kernel"
LICENSE = "GPLv2"
LIC_FILES_CHKSUM = "file://COPYING;md5=d7810fab7487fb0aad327b76f1be7cd7"
INC_PR = "r0"
@ -15,7 +16,7 @@ CMDLINE_DEBUG ?= "loglevel=3"
# Kernel bootlogo is distro-specific (default is OE logo).
# Logo resolution (qvga, vga, ...) is machine-specific.
LOGO_SIZE ?= '${@oe.utils.conditional("MACHINE_GUI_CLASS", "bigscreen", "vga", "qvga", d)}'
LOGO_SIZE ?= '${@base_conditional("MACHINE_GUI_CLASS", "bigscreen", "vga", "qvga", d)}'
# To use this, add file://${LOGO_SIZE}/logo_linux_clut224.ppm.bz2 or similar
# to your kernel recipe, and then structure your logos for each resolution
# accordingly.
@ -35,10 +36,6 @@ kernel_conf_variable() {
fi
}
do_kernel_configme[depends] += "virtual/${TARGET_PREFIX}binutils:do_populate_sysroot"
do_kernel_configme[depends] += "virtual/${TARGET_PREFIX}gcc:do_populate_sysroot"
do_kernel_configme[depends] += "bc-native:do_populate_sysroot bison-native:do_populate_sysroot"
do_configure_prepend() {
CONF_SED_SCRIPT=""

View File

@ -1,25 +0,0 @@
DESCRIPTION = "Xradio xr819 WiFi firmware"
LICENSE = "CC0-1.0"
LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/${LICENSE};md5=0ceb3372c9595f0a8067e55da801e4a1"
PV = "1.0"
PR = "r0"
SRCREV = "761658e1701c77a0a84706754e6db1a25ee60b82"
COMPATIBLE_MACHINE = "orange-pi-zero"
SRC_URI = "git://github.com/armbian/firmware.git;protocol=https"
S = "${WORKDIR}/git"
do_install() {
install -d ${D}${base_libdir}/firmware/xr819
install -m 0644 ${S}/xr819/boot_xr819.bin ${D}${base_libdir}/firmware/xr819/
install -m 0644 ${S}/xr819/sdd_xr819.bin ${D}${base_libdir}/firmware/xr819/
install -m 0644 ${S}/xr819/fw_xr819.bin ${D}${base_libdir}/firmware/xr819/
}
FILES_${PN} = "${base_libdir}/*"
PACKAGES = "${PN}"

View File

@ -1,25 +0,0 @@
SUMMARY = "Xradio WiFi driver for orangepi-zero"
LICENSE = "GPLv2"
LIC_FILES_CHKSUM = "file://LICENSE;md5=a23a74b3f4caf9616230789d94217acb"
inherit module
PV = "0.1"
PR = "r0"
RDEPENDS_${PN} += "xradio-firmware"
COMPATIBLE_MACHINE = "orange-pi-zero"
SRCREV = "279868ac96f6db34b65f68c6722830fa0aacb86b"
SRC_URI = "\
git://github.com/dbeinder/xradio.git;protocol=https;branch=karabek_rebase \
file://0001-Enable-out-of-tree-compilation.patch \
"
S = "${WORKDIR}/git"
EXTRA_OEMAKE += "-C ${STAGING_KERNEL_DIR} M=${S}"
KERNEL_MODULE_AUTOLOAD += "xradio_wlan"

View File

@ -1,30 +0,0 @@
From 15651d333da5429a1544f0a17d5f02c74f693ad7 Mon Sep 17 00:00:00 2001
From: Marek Belisko <marek.belisko@open-nandra.com>
Date: Thu, 15 Oct 2020 14:45:07 +0200
Subject: [PATCH] Enable out of tree compilation
Signed-off-by: Marek Belisko <marek.belisko@open-nandra.com>
---
Makefile | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/Makefile b/Makefile
index 7a0de9a..ee75f0b 100644
--- a/Makefile
+++ b/Makefile
@@ -1,9 +1,9 @@
# SPDX-License-Identifier: GPL-2.0-only
# # Standalone Makefile - uncomment for out-of-tree compilation
-# CONFIG_WLAN_VENDOR_XRADIO := m
-# ccflags-y += -DCONFIG_XRADIO_USE_EXTENSIONS
-# ccflags-y += -DCONFIG_XRADIO_WAPI_SUPPORT
+CONFIG_WLAN_VENDOR_XRADIO := m
+ccflags-y += -DCONFIG_XRADIO_USE_EXTENSIONS
+ccflags-y += -DCONFIG_XRADIO_WAPI_SUPPORT
# Kernel part
--
2.7.4

View File

@ -10,8 +10,6 @@ DEPENDS += "libusb"
SRC_URI = "git://github.com/linux-sunxi/sunxi-tools;protocol=git"
SRCREV = "9a3d62aa0c820b3dd42ba3409b2043f4143683cd"
inherit pkgconfig
S = "${WORKDIR}/git"
BBCLASSEXTEND = "native nativesdk"