mirror of
https://github.com/linux-sunxi/meta-sunxi.git
synced 2025-07-16 22:09:47 +02:00
Compare commits
128 Commits
Author | SHA1 | Date | |
---|---|---|---|
d7e301393d | |||
7f5aae9d1c | |||
0056643fcf | |||
fe145d8c59 | |||
a84d6a40c1 | |||
4740d3fe2d | |||
0ebd445fbd | |||
32aad38a16 | |||
febf35474a | |||
54bc239a3f | |||
6705d227ad | |||
229b714fdf | |||
df1d78041d | |||
912fe78aa3 | |||
7249f90834 | |||
dec3faadd9 | |||
6b0661dff2 | |||
aaf413d6a7 | |||
679053489c | |||
f2db7fb88e | |||
9d34c6f2f6 | |||
7037d13e6a | |||
a6d2bb6b9e | |||
8eb8602a76 | |||
eb6cb19b84 | |||
d47fa32013 | |||
f5756a588e | |||
7fad64eefd | |||
f0efcf45a9 | |||
7bfffa0671 | |||
54164a628a | |||
6c696b22d3 | |||
12a0cffe6a | |||
9bfe3ca1ad | |||
ff23db6e55 | |||
1848d697ad | |||
d94f784d4d | |||
7f791bd576 | |||
7f88e6c78e | |||
0a77e55428 | |||
e372befda7 | |||
10f37db26c | |||
2b1cafc104 | |||
fe66ceacb5 | |||
75fe4617ce | |||
3ef9217ad7 | |||
0dcdc4edf9 | |||
0b21d3bd2f | |||
3bd237ac1b | |||
1c38e7fa72 | |||
49f7a659b4 | |||
72d35fc0a6 | |||
11e16d173f | |||
f246bc943a | |||
6dfe134952 | |||
4ab93061c2 | |||
3dc1fc4103 | |||
1a840570a9 | |||
0c6af07690 | |||
54321d7854 | |||
b87043d683 | |||
bb8656b63e | |||
93ec9da1e4 | |||
1c06816a26 | |||
f6417032a0 | |||
26c32a3228 | |||
0da0fd6531 | |||
5564b58b56 | |||
53712dd3bb | |||
63410209ad | |||
a3b6faa731 | |||
b00caff43d | |||
11dee5bc94 | |||
f74be86e4a | |||
7c1e4b303b | |||
9e15c68634 | |||
69f56d3f94 | |||
9b77af849d | |||
3830f90aaa | |||
35d98632f3 | |||
941e978370 | |||
51fe0eecc6 | |||
8c13f0de1b | |||
06828aab99 | |||
5d98843b7d | |||
eb616d74b2 | |||
ae9ea2876a | |||
a5a6479522 | |||
50aaadc70d | |||
3eea4723ba | |||
849a2266d5 | |||
e51d5cfdee | |||
d2ccb1d993 | |||
e238cc158a | |||
07c07fcd78 | |||
b05f2dbb8b | |||
b9acc14280 | |||
b5e93023fb | |||
4f75b81ab2 | |||
14da837096 | |||
b4357af03b | |||
888ddfd531 | |||
72ea1fe7df | |||
54d3993da4 | |||
2f8da55176 | |||
fe162b176d | |||
b660f3a9dc | |||
f6b855d948 | |||
43a6a5ecc8 | |||
17645719ad | |||
08c5a4bfb8 | |||
1cdd083d2b | |||
062c1477cf | |||
7372a11da5 | |||
318e9aa826 | |||
50b4227876 | |||
0a2034bb3c | |||
8f1c8f67cf | |||
9d864e2510 | |||
eac21d7734 | |||
d32866858f | |||
82672a440b | |||
0693369edc | |||
b66da9c3bb | |||
4e261ffb96 | |||
5127517a14 | |||
784e893ac5 | |||
92b8be8139 |
@ -21,8 +21,9 @@ Most Allwinner devices and hardware are supported in mainline kernel and 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
|
||||
|
||||
If you want to switch back to sunxi versions for some reasons (no device tree available, unsupported hardware), change the file
|
||||
/conf/machine/include/sunxi.inc and set
|
||||
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"
|
||||
@ -30,9 +31,7 @@ If you want to switch back to sunxi versions for some reasons (no device tree av
|
||||
|
||||
If you already have built the mainline versions it might be necessary to reset the build directories with:
|
||||
|
||||
bitbake -c clean linux
|
||||
bitbake -c clean u-boot
|
||||
|
||||
bitbake -c clean linux u-boot
|
||||
|
||||
Performance
|
||||
===========
|
||||
|
@ -26,24 +26,19 @@ BOOT_SPACE ?= "20480"
|
||||
IMAGE_ROOTFS_ALIGNMENT = "2048"
|
||||
|
||||
# Use an uncompressed ext3 by default as rootfs
|
||||
SDIMG_ROOTFS_TYPE ?= "ext3"
|
||||
SDIMG_ROOTFS = "${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.rootfs.${SDIMG_ROOTFS_TYPE}"
|
||||
SDIMG_ROOTFS_TYPE ?= "ext4"
|
||||
SDIMG_ROOTFS = "${IMGDEPLOYDIR}/${IMAGE_NAME}.rootfs.${SDIMG_ROOTFS_TYPE}"
|
||||
|
||||
IMAGE_DEPENDS_sunxi-sdimg += " \
|
||||
parted-native \
|
||||
mtools-native \
|
||||
dosfstools-native \
|
||||
virtual/kernel \
|
||||
virtual/bootloader \
|
||||
sunxi-board-fex \
|
||||
virtual/kernel:do_deploy \
|
||||
virtual/bootloader:do_deploy \
|
||||
"
|
||||
|
||||
rootfs[depends] += "virtual/kernel:do_deploy sunxi-board-fex:do_deploy"
|
||||
|
||||
# SD card image name
|
||||
SDIMG = "${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.rootfs.sunxi-sdimg"
|
||||
|
||||
IMAGEDATESTAMP = "${@time.strftime('%Y.%m.%d',time.gmtime())}"
|
||||
SDIMG = "${IMGDEPLOYDIR}/${IMAGE_NAME}.rootfs.sunxi-sdimg"
|
||||
|
||||
IMAGE_CMD_sunxi-sdimg () {
|
||||
|
||||
@ -75,9 +70,9 @@ IMAGE_CMD_sunxi-sdimg () {
|
||||
if test -n "${KERNEL_DEVICETREE}"; then
|
||||
for DTS_FILE in ${KERNEL_DEVICETREE}; do
|
||||
DTS_BASE_NAME=`basename ${DTS_FILE} | awk -F "." '{print $1}'`
|
||||
if [ -e "${KERNEL_IMAGETYPE}-${DTS_BASE_NAME}.dtb" ]; then
|
||||
kernel_bin="`readlink ${KERNEL_IMAGETYPE}-${MACHINE}.bin`"
|
||||
kernel_bin_for_dtb="`readlink ${KERNEL_IMAGETYPE}-${DTS_BASE_NAME}.dtb | sed "s,$DTS_BASE_NAME,${MACHINE},g;s,\.dtb$,.bin,g"`"
|
||||
if [ -e ${DEPLOY_DIR_IMAGE}/"${KERNEL_IMAGETYPE}-${DTS_BASE_NAME}.dtb" ]; then
|
||||
kernel_bin="`readlink ${DEPLOY_DIR_IMAGE}/${KERNEL_IMAGETYPE}-${MACHINE}.bin`"
|
||||
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}/${KERNEL_IMAGETYPE}-${DTS_BASE_NAME}.dtb ::/${DTS_BASE_NAME}.dtb
|
||||
fi
|
||||
@ -96,8 +91,8 @@ IMAGE_CMD_sunxi-sdimg () {
|
||||
|
||||
|
||||
# Add stamp file
|
||||
echo "${IMAGE_NAME}-${IMAGEDATESTAMP}" > ${WORKDIR}/image-version-info
|
||||
mcopy -i ${WORKDIR}/boot.img -v ${WORKDIR}//image-version-info ::
|
||||
echo "${IMAGE_NAME}" > ${WORKDIR}/image-version-info
|
||||
mcopy -i ${WORKDIR}/boot.img -v ${WORKDIR}/image-version-info ::
|
||||
|
||||
# Burn Partitions
|
||||
dd if=${WORKDIR}/boot.img of=${SDIMG} conv=notrunc seek=1 bs=$(expr ${IMAGE_ROOTFS_ALIGNMENT} \* 1024) && sync && sync
|
||||
|
5
conf/machine/include/sun8i.inc
Normal file
5
conf/machine/include/sun8i.inc
Normal file
@ -0,0 +1,5 @@
|
||||
require conf/machine/include/sunxi.inc
|
||||
require conf/machine/include/sunxi-mali.inc
|
||||
require conf/machine/include/tune-cortexa7.inc
|
||||
|
||||
SOC_FAMILY = "sun8i"
|
13
conf/machine/nanopi-neo.conf
Normal file
13
conf/machine/nanopi-neo.conf
Normal file
@ -0,0 +1,13 @@
|
||||
#@TYPE: Machine
|
||||
#@NAME: nanopi-neo
|
||||
#@DESCRIPTION: Machine configuration for the FriendlyARM NanoPi Neo, based on the Allwinner H3 CPU
|
||||
|
||||
require conf/machine/include/sun8i.inc
|
||||
|
||||
PREFERRED_VERSION_linux = "4.11.0+git%"
|
||||
PREFERRED_VERSION_u-boot = "v2017.03%"
|
||||
|
||||
KERNEL_DEVICETREE = "sun8i-h3-nanopi-neo.dtb"
|
||||
UBOOT_MACHINE = "nanopi_neo_defconfig"
|
||||
|
||||
DEFAULTTUNE = "cortexa7hf-neon-vfpv4"
|
10
conf/machine/olinuxino-a20lime2-emmc.conf
Normal file
10
conf/machine/olinuxino-a20lime2-emmc.conf
Normal file
@ -0,0 +1,10 @@
|
||||
#@TYPE: Machine
|
||||
#@NAME: Olimex A20-OLinuXino Lime2 Board with 4GB eMMC
|
||||
#@DESCRIPTION: Machine configuration for the Olimex A20-OLinuXino Lime2 Board with 4GB eMMC, based on Allwinner A20 CPU
|
||||
#https://github.com/OLIMEX/OLINUXINO
|
||||
|
||||
require conf/machine/include/sun7i.inc
|
||||
|
||||
KERNEL_DEVICETREE = "sun7i-a20-olinuxino-lime2-emmc.dtb"
|
||||
UBOOT_MACHINE = "A20-OLinuXino-Lime2-eMMC_config"
|
||||
SUNXI_FEX_FILE = "sys_config/a20/a20-olinuxino_lime2.fex"
|
@ -6,5 +6,5 @@
|
||||
require conf/machine/include/sun7i.inc
|
||||
|
||||
KERNEL_DEVICETREE = "sun7i-a20-olinuxino-lime2.dtb"
|
||||
UBOOT_MACHINE = "A20-OLinuXino_Lime2_config"
|
||||
SUNXI_FEX_FILE = "sys_config/a20/a20-olinuxino_lime2.fex"
|
||||
UBOOT_MACHINE = "A20-OLinuXino-Lime2_config"
|
||||
SUNXI_FEX_FILE = "sys_config/a20/a20-olinuxino_lime2.fex"
|
||||
|
@ -5,5 +5,6 @@
|
||||
|
||||
require conf/machine/include/sun7i.inc
|
||||
|
||||
UBOOT_MACHINE = "Olimex_A20-SOM_config"
|
||||
SUNXI_FEX_FILE = "sys_config/a20/olimex_a20_som.fex"
|
||||
KERNEL_DEVICETREE = "sun7i-a20-olimex-som-evb.dtb"
|
||||
UBOOT_MACHINE = "A20-Olimex-SOM-EVB_config"
|
||||
SUNXI_FEX_FILE = "sys_config/a20/olimex_a20_som.fex"
|
||||
|
13
conf/machine/orange-pi-one.conf
Normal file
13
conf/machine/orange-pi-one.conf
Normal file
@ -0,0 +1,13 @@
|
||||
#@TYPE: Machine
|
||||
#@NAME: orange-pi-one
|
||||
#@DESCRIPTION: Machine configuration for the orange-pi-one, base on allwinner H3 CPU
|
||||
|
||||
require conf/machine/include/sun8i.inc
|
||||
|
||||
PREFERRED_VERSION_linux = "4.11.0+git%"
|
||||
PREFERRED_VERSION_u-boot = "v2017.03%"
|
||||
|
||||
KERNEL_DEVICETREE = "sun8i-h3-orangepi-one.dtb"
|
||||
UBOOT_MACHINE = "orangepi_one_defconfig"
|
||||
|
||||
DEFAULTTUNE = "cortexa7hf-neon-vfpv4"
|
13
conf/machine/orange-pi-pc.conf
Normal file
13
conf/machine/orange-pi-pc.conf
Normal file
@ -0,0 +1,13 @@
|
||||
#@TYPE: Machine
|
||||
#@NAME: orange-pi-one
|
||||
#@DESCRIPTION: Machine configuration for the orange-pi-one, base on allwinner H3 CPU
|
||||
|
||||
require conf/machine/include/sun8i.inc
|
||||
|
||||
PREFERRED_VERSION_linux = "4.11.0+git%"
|
||||
PREFERRED_VERSION_u-boot = "v2017.03%"
|
||||
|
||||
KERNEL_DEVICETREE = "sun8i-h3-orangepi-pc.dtb"
|
||||
UBOOT_MACHINE = "orangepi_pc_defconfig"
|
||||
|
||||
DEFAULTTUNE = "cortexa7hf-neon-vfpv4"
|
13
conf/machine/orange-pi-zero.conf
Normal file
13
conf/machine/orange-pi-zero.conf
Normal file
@ -0,0 +1,13 @@
|
||||
#@TYPE: Machine
|
||||
#@NAME: orange-pi-one
|
||||
#@DESCRIPTION: Machine configuration for the orange-pi-one, base on allwinner H3 CPU
|
||||
|
||||
require conf/machine/include/sun8i.inc
|
||||
|
||||
PREFERRED_VERSION_linux = "4.11.0+git%"
|
||||
PREFERRED_VERSION_u-boot = "v2017.03%"
|
||||
|
||||
KERNEL_DEVICETREE = "sun8i-h2-plus-orangepi-zero.dtb"
|
||||
UBOOT_MACHINE = "orangepi_zero_defconfig"
|
||||
|
||||
DEFAULTTUNE = "cortexa7hf-neon-vfpv4"
|
12
conf/machine/pcduino.conf
Normal file
12
conf/machine/pcduino.conf
Normal file
@ -0,0 +1,12 @@
|
||||
#@TYPE: Machine
|
||||
#@NAME: pcduino-lite-wifi
|
||||
#@DESCRIPTION: Machine configuration for the pcDuino-Lite-Wifi, base on allwinner a10 CPU
|
||||
|
||||
require conf/machine/include/sun4i.inc
|
||||
|
||||
PREFERRED_VERSION_linux = "4.11.0+git%"
|
||||
PREFERRED_VERSION_u-boot = "v2017.03%"
|
||||
|
||||
KERNEL_DEVICETREE = "sun4i-a10-pcduino.dtb"
|
||||
UBOOT_MACHINE = "Linksprite_pcDuino_defconfig"
|
||||
SUNXI_FEX_FILE = "sys_config/a10/pcduino.fex"
|
@ -11,7 +11,7 @@ COMPATIBLE_MACHINE = "(sun4i|sun5i|sun7i)"
|
||||
|
||||
SRC_URI = "git://github.com/linux-sunxi/sunxi-boards.git;protocol=git"
|
||||
# Increase PV with SRCREV change
|
||||
SRCREV = "bf02cb81d1fe5996758322dc74e66808c1c7ad38"
|
||||
SRCREV = "496ef0fbd166cc2395daa76dd3c359357420963d"
|
||||
|
||||
S = "${WORKDIR}/git"
|
||||
|
||||
|
@ -0,0 +1,13 @@
|
||||
diff --git a/arch/arm/dts/sun7i-a20-olinuxino-lime2-emmc.dts b/arch/arm/dts/sun7i-a20-olinuxino-lime2-emmc.dts
|
||||
index 5ea4915f6d..10d307408f 100644
|
||||
--- a/arch/arm/dts/sun7i-a20-olinuxino-lime2-emmc.dts
|
||||
+++ b/arch/arm/dts/sun7i-a20-olinuxino-lime2-emmc.dts
|
||||
@@ -56,7 +56,7 @@
|
||||
};
|
||||
|
||||
&pio {
|
||||
- mmc2_pins_nrst: mmc2@0 {
|
||||
+ mmc2_pins_nrst: mmc2-rst-pin {
|
||||
allwinner,pins = "PC16";
|
||||
allwinner,function = "gpio_out";
|
||||
allwinner,drive = <SUN4I_PINCTRL_10_MA>;
|
@ -0,0 +1,58 @@
|
||||
diff --git a/board/sunxi/MAINTAINERS b/board/sunxi/MAINTAINERS
|
||||
index 1c8817375d..1d3742c744 100644
|
||||
--- a/board/sunxi/MAINTAINERS
|
||||
+++ b/board/sunxi/MAINTAINERS
|
||||
@@ -89,6 +89,11 @@ M: Iain Paton <ipaton0@gmail.com>
|
||||
S: Maintained
|
||||
F: configs/A20-OLinuXino-Lime2_defconfig
|
||||
|
||||
+A20-OLINUXINO-LIME2-EMMC BOARD
|
||||
+M: Olliver Schinagl <oliver@schinagl.nl>
|
||||
+S: Maintained
|
||||
+F: configs/A20-OLinuXino-Lime2-eMMC_defconfig
|
||||
+
|
||||
A33-OLINUXINO BOARD
|
||||
M: Stefan Mavrodiev <stefan.mavrodiev@gmail.com>
|
||||
S: Maintained
|
||||
diff --git a/configs/A20-OLinuXino-Lime2-eMMC_defconfig b/configs/A20-OLinuXino-Lime2-eMMC_defconfig
|
||||
new file mode 100644
|
||||
index 0000000000..034ae983a5
|
||||
--- /dev/null
|
||||
+++ b/configs/A20-OLinuXino-Lime2-eMMC_defconfig
|
||||
@@ -0,0 +1,36 @@
|
||||
+CONFIG_ARM=y
|
||||
+CONFIG_ARCH_SUNXI=y
|
||||
+CONFIG_MACH_SUN7I=y
|
||||
+CONFIG_DRAM_CLK=384
|
||||
+CONFIG_MMC0_CD_PIN="PH1"
|
||||
+CONFIG_MMC_SUNXI_SLOT_EXTRA=2
|
||||
+CONFIG_USB0_VBUS_PIN="PC17"
|
||||
+CONFIG_USB0_VBUS_DET="PH5"
|
||||
+CONFIG_I2C1_ENABLE=y
|
||||
+CONFIG_SATAPWR="PC3"
|
||||
+CONFIG_DEFAULT_DEVICE_TREE="sun7i-a20-olinuxino-lime2-emmc"
|
||||
+CONFIG_AHCI=y
|
||||
+# CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
|
||||
+CONFIG_SPL=y
|
||||
+CONFIG_SPL_I2C_SUPPORT=y
|
||||
+# CONFIG_CMD_IMLS is not set
|
||||
+# CONFIG_CMD_FLASH is not set
|
||||
+CONFIG_CMD_DFU=y
|
||||
+CONFIG_CMD_USB_MASS_STORAGE=y
|
||||
+# CONFIG_CMD_FPGA is not set
|
||||
+# CONFIG_SPL_DOS_PARTITION is not set
|
||||
+# CONFIG_SPL_ISO_PARTITION is not set
|
||||
+# CONFIG_SPL_PARTITION_UUIDS is not set
|
||||
+CONFIG_DFU_RAM=y
|
||||
+CONFIG_ETH_DESIGNWARE=y
|
||||
+CONFIG_RGMII=y
|
||||
+CONFIG_SUN7I_GMAC=y
|
||||
+CONFIG_AXP_ALDO3_VOLT=2800
|
||||
+CONFIG_AXP_ALDO4_VOLT=2800
|
||||
+CONFIG_USB_EHCI_HCD=y
|
||||
+CONFIG_USB_MUSB_GADGET=y
|
||||
+CONFIG_USB_GADGET=y
|
||||
+CONFIG_USB_GADGET_DOWNLOAD=y
|
||||
+CONFIG_G_DNL_MANUFACTURER="Allwinner Technology"
|
||||
+CONFIG_G_DNL_VENDOR_NUM=0x1f3a
|
||||
+CONFIG_G_DNL_PRODUCT_NUM=0x1010
|
@ -1,4 +1,11 @@
|
||||
setenv bootargs console=${console} console=tty1 root=/dev/mmcblk0p2 rootwait panic=10 ${extra}
|
||||
# Default to (primary) SD
|
||||
rootdev=mmcblk0p2
|
||||
if itest.b *0x28 == 0x02 ; then
|
||||
# U-Boot loaded from eMMC or secondary SD so use it for rootfs too
|
||||
echo "U-boot loaded from eMMC or secondary SD"
|
||||
rootdev=mmcblk1p2
|
||||
fi
|
||||
setenv bootargs console=${console} console=tty1 root=/dev/${rootdev} rootwait panic=10 ${extra}
|
||||
load mmc 0:1 ${fdt_addr_r} ${fdtfile} || load mmc 0:1 ${fdt_addr_r} boot/${fdtfile}
|
||||
load mmc 0:1 ${kernel_addr_r} zImage || load mmc 0:1 ${kernel_addr_r} boot/zImage || load mmc 0:1 ${kernel_addr_r} uImage || load mmc 0:1 ${kernel_addr_r} boot/uImage
|
||||
bootz ${kernel_addr_r} - ${fdt_addr_r} || bootm ${kernel_addr_r} - ${fdt_addr_r}
|
||||
|
@ -18,7 +18,11 @@ UBOOT_MACHINE_olinuxino-a20 = "A20-OLinuXino-Micro_config"
|
||||
UBOOT_MACHINE_olinuxino-a10s = "A10s-OLinuXino-Micro_config"
|
||||
UBOOT_MACHINE_meleg = "Mele_A1000G_config"
|
||||
|
||||
SRC_URI = "git://github.com/linux-sunxi/u-boot-sunxi.git;protocol=git;branch=sunxi"
|
||||
SRC_URI = " \
|
||||
git://github.com/linux-sunxi/u-boot-sunxi.git;protocol=git;branch=sunxi \
|
||||
file://0002-gcc5-fixes.patch \
|
||||
file://0003-gcc6-fixes.patch \
|
||||
"
|
||||
|
||||
PE = "1"
|
||||
|
||||
|
197
recipes-bsp/u-boot/u-boot-sunxi/0002-gcc5-fixes.patch
Normal file
197
recipes-bsp/u-boot/u-boot-sunxi/0002-gcc5-fixes.patch
Normal file
@ -0,0 +1,197 @@
|
||||
From a5e50d6fd7321d0bc60fda2db938c170d09f9dee Mon Sep 17 00:00:00 2001
|
||||
From: Trevor Woerner <twoerner@gmail.com>
|
||||
Date: Thu, 24 Sep 2015 22:36:02 -0400
|
||||
Subject: [PATCH] gcc5 fixes
|
||||
|
||||
gcc5 is pickier about inline functions defined in headers.
|
||||
|
||||
Signed-off-by: Trevor Woerner <twoerner@gmail.com>
|
||||
---
|
||||
arch/arm/include/asm/io.h | 12 ++++----
|
||||
common/board_f.c | 18 ++++++------
|
||||
common/main.c | 2 +-
|
||||
include/linux/compiler-gcc5.h | 65 +++++++++++++++++++++++++++++++++++++++++++
|
||||
4 files changed, 81 insertions(+), 16 deletions(-)
|
||||
create mode 100644 include/linux/compiler-gcc5.h
|
||||
|
||||
diff --git a/arch/arm/include/asm/io.h b/arch/arm/include/asm/io.h
|
||||
index 6a1f05a..2f6925b 100644
|
||||
--- a/arch/arm/include/asm/io.h
|
||||
+++ b/arch/arm/include/asm/io.h
|
||||
@@ -75,7 +75,7 @@ static inline phys_addr_t virt_to_phys(void * vaddr)
|
||||
#define __arch_putw(v,a) (*(volatile unsigned short *)(a) = (v))
|
||||
#define __arch_putl(v,a) (*(volatile unsigned int *)(a) = (v))
|
||||
|
||||
-extern inline void __raw_writesb(unsigned long addr, const void *data,
|
||||
+static inline void __raw_writesb(unsigned long addr, const void *data,
|
||||
int bytelen)
|
||||
{
|
||||
uint8_t *buf = (uint8_t *)data;
|
||||
@@ -83,7 +83,7 @@ extern inline void __raw_writesb(unsigned long addr, const void *data,
|
||||
__arch_putb(*buf++, addr);
|
||||
}
|
||||
|
||||
-extern inline void __raw_writesw(unsigned long addr, const void *data,
|
||||
+static inline void __raw_writesw(unsigned long addr, const void *data,
|
||||
int wordlen)
|
||||
{
|
||||
uint16_t *buf = (uint16_t *)data;
|
||||
@@ -91,7 +91,7 @@ extern inline void __raw_writesw(unsigned long addr, const void *data,
|
||||
__arch_putw(*buf++, addr);
|
||||
}
|
||||
|
||||
-extern inline void __raw_writesl(unsigned long addr, const void *data,
|
||||
+static inline void __raw_writesl(unsigned long addr, const void *data,
|
||||
int longlen)
|
||||
{
|
||||
uint32_t *buf = (uint32_t *)data;
|
||||
@@ -99,21 +99,21 @@ extern inline void __raw_writesl(unsigned long addr, const void *data,
|
||||
__arch_putl(*buf++, addr);
|
||||
}
|
||||
|
||||
-extern inline void __raw_readsb(unsigned long addr, void *data, int bytelen)
|
||||
+static inline void __raw_readsb(unsigned long addr, void *data, int bytelen)
|
||||
{
|
||||
uint8_t *buf = (uint8_t *)data;
|
||||
while(bytelen--)
|
||||
*buf++ = __arch_getb(addr);
|
||||
}
|
||||
|
||||
-extern inline void __raw_readsw(unsigned long addr, void *data, int wordlen)
|
||||
+static inline void __raw_readsw(unsigned long addr, void *data, int wordlen)
|
||||
{
|
||||
uint16_t *buf = (uint16_t *)data;
|
||||
while(wordlen--)
|
||||
*buf++ = __arch_getw(addr);
|
||||
}
|
||||
|
||||
-extern inline void __raw_readsl(unsigned long addr, void *data, int longlen)
|
||||
+static inline void __raw_readsl(unsigned long addr, void *data, int longlen)
|
||||
{
|
||||
uint32_t *buf = (uint32_t *)data;
|
||||
while(longlen--)
|
||||
diff --git a/common/board_f.c b/common/board_f.c
|
||||
index f285bad..72b421c 100644
|
||||
--- a/common/board_f.c
|
||||
+++ b/common/board_f.c
|
||||
@@ -78,24 +78,24 @@ DECLARE_GLOBAL_DATA_PTR;
|
||||
************************************************************************
|
||||
* May be supplied by boards if desired
|
||||
*/
|
||||
-inline void __coloured_LED_init(void) {}
|
||||
+void __coloured_LED_init(void) {}
|
||||
void coloured_LED_init(void)
|
||||
__attribute__((weak, alias("__coloured_LED_init")));
|
||||
-inline void __red_led_on(void) {}
|
||||
+void __red_led_on(void) {}
|
||||
void red_led_on(void) __attribute__((weak, alias("__red_led_on")));
|
||||
-inline void __red_led_off(void) {}
|
||||
+void __red_led_off(void) {}
|
||||
void red_led_off(void) __attribute__((weak, alias("__red_led_off")));
|
||||
-inline void __green_led_on(void) {}
|
||||
+void __green_led_on(void) {}
|
||||
void green_led_on(void) __attribute__((weak, alias("__green_led_on")));
|
||||
-inline void __green_led_off(void) {}
|
||||
+void __green_led_off(void) {}
|
||||
void green_led_off(void) __attribute__((weak, alias("__green_led_off")));
|
||||
-inline void __yellow_led_on(void) {}
|
||||
+void __yellow_led_on(void) {}
|
||||
void yellow_led_on(void) __attribute__((weak, alias("__yellow_led_on")));
|
||||
-inline void __yellow_led_off(void) {}
|
||||
+void __yellow_led_off(void) {}
|
||||
void yellow_led_off(void) __attribute__((weak, alias("__yellow_led_off")));
|
||||
-inline void __blue_led_on(void) {}
|
||||
+void __blue_led_on(void) {}
|
||||
void blue_led_on(void) __attribute__((weak, alias("__blue_led_on")));
|
||||
-inline void __blue_led_off(void) {}
|
||||
+void __blue_led_off(void) {}
|
||||
void blue_led_off(void) __attribute__((weak, alias("__blue_led_off")));
|
||||
|
||||
/*
|
||||
diff --git a/common/main.c b/common/main.c
|
||||
index 8b6f274..3312b90 100644
|
||||
--- a/common/main.c
|
||||
+++ b/common/main.c
|
||||
@@ -27,7 +27,7 @@ DECLARE_GLOBAL_DATA_PTR;
|
||||
/*
|
||||
* Board-specific Platform code can reimplement show_boot_progress () if needed
|
||||
*/
|
||||
-void inline __show_boot_progress (int val) {}
|
||||
+void __show_boot_progress (int val) {}
|
||||
void show_boot_progress (int val) __attribute__((weak, alias("__show_boot_progress")));
|
||||
|
||||
#define MAX_DELAY_STOP_STR 32
|
||||
diff --git a/include/linux/compiler-gcc5.h b/include/linux/compiler-gcc5.h
|
||||
new file mode 100644
|
||||
index 0000000..c8c5659
|
||||
--- /dev/null
|
||||
+++ b/include/linux/compiler-gcc5.h
|
||||
@@ -0,0 +1,65 @@
|
||||
+#ifndef __LINUX_COMPILER_H
|
||||
+#error "Please don't include <linux/compiler-gcc5.h> directly, include <linux/compiler.h> instead."
|
||||
+#endif
|
||||
+
|
||||
+#define __used __attribute__((__used__))
|
||||
+#define __must_check __attribute__((warn_unused_result))
|
||||
+#define __compiler_offsetof(a, b) __builtin_offsetof(a, b)
|
||||
+
|
||||
+/* Mark functions as cold. gcc will assume any path leading to a call
|
||||
+ to them will be unlikely. This means a lot of manual unlikely()s
|
||||
+ are unnecessary now for any paths leading to the usual suspects
|
||||
+ like BUG(), printk(), panic() etc. [but let's keep them for now for
|
||||
+ older compilers]
|
||||
+
|
||||
+ Early snapshots of gcc 4.3 don't support this and we can't detect this
|
||||
+ in the preprocessor, but we can live with this because they're unreleased.
|
||||
+ Maketime probing would be overkill here.
|
||||
+
|
||||
+ gcc also has a __attribute__((__hot__)) to move hot functions into
|
||||
+ a special section, but I don't see any sense in this right now in
|
||||
+ the kernel context */
|
||||
+#define __cold __attribute__((__cold__))
|
||||
+
|
||||
+#define __UNIQUE_ID(prefix) __PASTE(__PASTE(__UNIQUE_ID_, prefix), __COUNTER__)
|
||||
+
|
||||
+#ifndef __CHECKER__
|
||||
+# define __compiletime_warning(message) __attribute__((warning(message)))
|
||||
+# define __compiletime_error(message) __attribute__((error(message)))
|
||||
+#endif /* __CHECKER__ */
|
||||
+
|
||||
+/*
|
||||
+ * Mark a position in code as unreachable. This can be used to
|
||||
+ * suppress control flow warnings after asm blocks that transfer
|
||||
+ * control elsewhere.
|
||||
+ *
|
||||
+ * Early snapshots of gcc 4.5 don't support this and we can't detect
|
||||
+ * this in the preprocessor, but we can live with this because they're
|
||||
+ * unreleased. Really, we need to have autoconf for the kernel.
|
||||
+ */
|
||||
+#define unreachable() __builtin_unreachable()
|
||||
+
|
||||
+/* Mark a function definition as prohibited from being cloned. */
|
||||
+#define __noclone __attribute__((__noclone__))
|
||||
+
|
||||
+/*
|
||||
+ * Tell the optimizer that something else uses this function or variable.
|
||||
+ */
|
||||
+#define __visible __attribute__((externally_visible))
|
||||
+
|
||||
+/*
|
||||
+ * GCC 'asm goto' miscompiles certain code sequences:
|
||||
+ *
|
||||
+ * http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58670
|
||||
+ *
|
||||
+ * Work it around via a compiler barrier quirk suggested by Jakub Jelinek.
|
||||
+ *
|
||||
+ * (asm goto is automatically volatile - the naming reflects this.)
|
||||
+ */
|
||||
+#define asm_volatile_goto(x...) do { asm goto(x); asm (""); } while (0)
|
||||
+
|
||||
+#ifdef CONFIG_ARCH_USE_BUILTIN_BSWAP
|
||||
+#define __HAVE_BUILTIN_BSWAP32__
|
||||
+#define __HAVE_BUILTIN_BSWAP64__
|
||||
+#define __HAVE_BUILTIN_BSWAP16__
|
||||
+#endif /* CONFIG_ARCH_USE_BUILTIN_BSWAP */
|
||||
--
|
||||
2.6.0.rc3
|
||||
|
69
recipes-bsp/u-boot/u-boot-sunxi/0003-gcc6-fixes.patch
Normal file
69
recipes-bsp/u-boot/u-boot-sunxi/0003-gcc6-fixes.patch
Normal file
@ -0,0 +1,69 @@
|
||||
diff -urN git-ORIG/include/linux/compiler-gcc6.h git/include/linux/compiler-gcc6.h
|
||||
--- git-ORIG/include/linux/compiler-gcc6.h 1969-12-31 19:00:00.000000000 -0500
|
||||
+++ git/include/linux/compiler-gcc6.h 2017-04-09 19:50:16.920945874 -0400
|
||||
@@ -0,0 +1,65 @@
|
||||
+#ifndef __LINUX_COMPILER_H
|
||||
+#error "Please don't include <linux/compiler-gcc5.h> directly, include <linux/compiler.h> instead."
|
||||
+#endif
|
||||
+
|
||||
+#define __used __attribute__((__used__))
|
||||
+#define __must_check __attribute__((warn_unused_result))
|
||||
+#define __compiler_offsetof(a, b) __builtin_offsetof(a, b)
|
||||
+
|
||||
+/* Mark functions as cold. gcc will assume any path leading to a call
|
||||
+ to them will be unlikely. This means a lot of manual unlikely()s
|
||||
+ are unnecessary now for any paths leading to the usual suspects
|
||||
+ like BUG(), printk(), panic() etc. [but let's keep them for now for
|
||||
+ older compilers]
|
||||
+
|
||||
+ Early snapshots of gcc 4.3 don't support this and we can't detect this
|
||||
+ in the preprocessor, but we can live with this because they're unreleased.
|
||||
+ Maketime probing would be overkill here.
|
||||
+
|
||||
+ gcc also has a __attribute__((__hot__)) to move hot functions into
|
||||
+ a special section, but I don't see any sense in this right now in
|
||||
+ the kernel context */
|
||||
+#define __cold __attribute__((__cold__))
|
||||
+
|
||||
+#define __UNIQUE_ID(prefix) __PASTE(__PASTE(__UNIQUE_ID_, prefix), __COUNTER__)
|
||||
+
|
||||
+#ifndef __CHECKER__
|
||||
+# define __compiletime_warning(message) __attribute__((warning(message)))
|
||||
+# define __compiletime_error(message) __attribute__((error(message)))
|
||||
+#endif /* __CHECKER__ */
|
||||
+
|
||||
+/*
|
||||
+ * Mark a position in code as unreachable. This can be used to
|
||||
+ * suppress control flow warnings after asm blocks that transfer
|
||||
+ * control elsewhere.
|
||||
+ *
|
||||
+ * Early snapshots of gcc 4.5 don't support this and we can't detect
|
||||
+ * this in the preprocessor, but we can live with this because they're
|
||||
+ * unreleased. Really, we need to have autoconf for the kernel.
|
||||
+ */
|
||||
+#define unreachable() __builtin_unreachable()
|
||||
+
|
||||
+/* Mark a function definition as prohibited from being cloned. */
|
||||
+#define __noclone __attribute__((__noclone__))
|
||||
+
|
||||
+/*
|
||||
+ * Tell the optimizer that something else uses this function or variable.
|
||||
+ */
|
||||
+#define __visible __attribute__((externally_visible))
|
||||
+
|
||||
+/*
|
||||
+ * GCC 'asm goto' miscompiles certain code sequences:
|
||||
+ *
|
||||
+ * http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58670
|
||||
+ *
|
||||
+ * Work it around via a compiler barrier quirk suggested by Jakub Jelinek.
|
||||
+ *
|
||||
+ * (asm goto is automatically volatile - the naming reflects this.)
|
||||
+ */
|
||||
+#define asm_volatile_goto(x...) do { asm goto(x); asm (""); } while (0)
|
||||
+
|
||||
+#ifdef CONFIG_ARCH_USE_BUILTIN_BSWAP
|
||||
+#define __HAVE_BUILTIN_BSWAP32__
|
||||
+#define __HAVE_BUILTIN_BSWAP64__
|
||||
+#define __HAVE_BUILTIN_BSWAP16__
|
||||
+#endif /* CONFIG_ARCH_USE_BUILTIN_BSWAP */
|
@ -19,19 +19,26 @@ file://Licenses/lgpl-2.1.txt;md5=4fbd65380cdd255951079008b364516c \
|
||||
file://Licenses/x11.txt;md5=b46f176c847b8742db02126fb8af92e2 \
|
||||
"
|
||||
|
||||
COMPATIBLE_MACHINE = "(sun4i|sun5i|sun7i)"
|
||||
COMPATIBLE_MACHINE = "(sun4i|sun5i|sun7i|sun8i)"
|
||||
|
||||
DEFAULT_PREFERENCE_sun4i="1"
|
||||
DEFAULT_PREFERENCE_sun5i="1"
|
||||
DEFAULT_PREFERENCE_sun7i="1"
|
||||
DEFAULT_PREFERENCE_sun8i="1"
|
||||
|
||||
SRC_URI += "file://boot.cmd"
|
||||
SRC_URI = "git://git.denx.de/u-boot.git;branch=master \
|
||||
file://boot.cmd \
|
||||
file://U-Boot-PATCHv4-1-2-ARM-dts-sunxi-Change-node-name-for-pwrseq-pin-on-Olinuxino-lime2-emmc.patch \
|
||||
file://U-Boot-PATCHv4-2-2-sun7i-Add-support-for-Olimex-A20-OLinuXino-LIME2-eMMC.patch \
|
||||
"
|
||||
|
||||
SRCREV = "33711bdd4a4dce942fb5ae85a68899a8357bdd94"
|
||||
SRCREV = "8537ddd769f460d7fb7a62a3dcc9669049702e51"
|
||||
|
||||
PV = "v2015.07${SRCPV}"
|
||||
PV = "v2017.03+git${SRCPV}"
|
||||
|
||||
PE = "1"
|
||||
PE = "2"
|
||||
|
||||
S = "${WORKDIR}/git"
|
||||
|
||||
SPL_BINARY="u-boot-sunxi-with-spl.bin"
|
||||
|
||||
@ -39,5 +46,5 @@ UBOOT_ENV_SUFFIX = "scr"
|
||||
UBOOT_ENV = "boot"
|
||||
|
||||
do_compile_append() {
|
||||
${S}/tools/mkimage -C none -A arm -T script -d ${WORKDIR}/boot.cmd ${WORKDIR}/${UBOOT_ENV_BINARY}
|
||||
${B}/tools/mkimage -C none -A arm -T script -d ${WORKDIR}/boot.cmd ${WORKDIR}/${UBOOT_ENV_BINARY}
|
||||
}
|
265
recipes-devtools/python/files/olinuxino-a20som/mapping.h
Normal file
265
recipes-devtools/python/files/olinuxino-a20som/mapping.h
Normal file
@ -0,0 +1,265 @@
|
||||
/*
|
||||
*
|
||||
* This file is part of pyA20SOM.
|
||||
* mapping.h is python GPIO extension.
|
||||
*
|
||||
* Copyright (c) 2014 Stefan Mavrodiev @ OLIMEX LTD, <support@olimex.com>
|
||||
*
|
||||
* pyA20SOM is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 2 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
|
||||
* MA 02110-1301, USA.
|
||||
*/
|
||||
|
||||
#ifndef __MAPPING_H
|
||||
#define __MAPPING_H
|
||||
|
||||
#include "gpio_lib.h"
|
||||
|
||||
/**
|
||||
Structure that describe all gpio
|
||||
*/
|
||||
typedef struct _pin {
|
||||
char name[10]; // The processor pin
|
||||
int offset; // Memory offset for the pin
|
||||
int pin_number; // Number on the connector
|
||||
}pin_t;
|
||||
|
||||
typedef struct _gpio {
|
||||
char connector_name[10];
|
||||
pin_t pins[41];
|
||||
}gpio_t;
|
||||
|
||||
|
||||
gpio_t gpio[] = {
|
||||
{"lcd",
|
||||
{
|
||||
{ "PD16", SUNXI_GPD(16), 5 },
|
||||
{ "PD17", SUNXI_GPD(17), 6 },
|
||||
{ "PD18", SUNXI_GPD(18), 7 },
|
||||
{ "PD19", SUNXI_GPD(19), 8 },
|
||||
{ "PD20", SUNXI_GPD(20), 9 },
|
||||
{ "PD21", SUNXI_GPD(21), 10 },
|
||||
{ "PD22", SUNXI_GPD(22), 11 },
|
||||
{ "PD23", SUNXI_GPD(23), 12 },
|
||||
{ "PD8", SUNXI_GPD(8), 13 },
|
||||
{ "PD9", SUNXI_GPD(9), 14 },
|
||||
{ "PD10", SUNXI_GPD(10), 15 },
|
||||
{ "PD11", SUNXI_GPD(11), 16 },
|
||||
{ "PD12", SUNXI_GPD(12), 17 },
|
||||
{ "PD13", SUNXI_GPD(13), 18 },
|
||||
{ "PD14", SUNXI_GPD(14), 19 },
|
||||
{ "PD15", SUNXI_GPD(15), 20 },
|
||||
{ "PD0", SUNXI_GPD(0), 21 },
|
||||
{ "PD1", SUNXI_GPD(1), 22 },
|
||||
{ "PD2", SUNXI_GPD(2), 23 },
|
||||
{ "PD3", SUNXI_GPD(3), 24 },
|
||||
{ "PD4", SUNXI_GPD(4), 25 },
|
||||
{ "PD5", SUNXI_GPD(5), 26 },
|
||||
{ "PD6", SUNXI_GPD(6), 27 },
|
||||
{ "PD7", SUNXI_GPD(7), 28 },
|
||||
{ "PD26", SUNXI_GPD(26), 29 },
|
||||
{ "PD27", SUNXI_GPD(27), 30 },
|
||||
{ "PD24", SUNXI_GPD(24), 31 },
|
||||
{ "PD25", SUNXI_GPD(25), 32 },
|
||||
{ "PH7", SUNXI_GPH(7), 35 },
|
||||
{ "PB2", SUNXI_GPB(2), 36 },
|
||||
{
|
||||
{ 0, 0, 0}
|
||||
},
|
||||
}
|
||||
},
|
||||
{"gpio1",
|
||||
{
|
||||
{ "PB9", SUNXI_GPB(9), 7 },
|
||||
{ "PH5", SUNXI_GPH(5), 9 },
|
||||
{ "PH4", SUNXI_GPH(4), 11 },
|
||||
{ "PH6", SUNXI_GPH(6), 13 },
|
||||
{ "PH3", SUNXI_GPH(3), 15 },
|
||||
{ "PI0", SUNXI_GPI(0), 29 },
|
||||
{ "PI1", SUNXI_GPI(1), 31 },
|
||||
{ "PI2", SUNXI_GPI(2), 33 },
|
||||
{ "PI3", SUNXI_GPI(3), 35 },
|
||||
{ "PI10", SUNXI_GPI(10), 37 },
|
||||
{ "PI11", SUNXI_GPI(11), 39 },
|
||||
{ "PI14", SUNXI_GPI(14), 40 },
|
||||
{
|
||||
{ 0, 0, 0}
|
||||
},
|
||||
}
|
||||
},
|
||||
{"gpio2",
|
||||
{
|
||||
{ "PB22", SUNXI_GPB(22), 21 },
|
||||
{ "PB23", SUNXI_GPB(23), 22 },
|
||||
{ "PA0", SUNXI_GPA(0), 29 },
|
||||
{ "PA1", SUNXI_GPA(1), 27 },
|
||||
{ "PA2", SUNXI_GPA(2), 25 },
|
||||
{ "PA3", SUNXI_GPA(3), 23 },
|
||||
{ "PA4", SUNXI_GPA(4), 30 },
|
||||
{ "PA5", SUNXI_GPA(5), 28 },
|
||||
{ "PA6", SUNXI_GPA(6), 26 },
|
||||
{ "PA7", SUNXI_GPA(7), 24 },
|
||||
{ "PA8", SUNXI_GPA(8), 33 },
|
||||
{ "PA9", SUNXI_GPA(9), 35 },
|
||||
{ "PA10", SUNXI_GPA(10), 31 },
|
||||
{ "PA11", SUNXI_GPA(11), 37 },
|
||||
{ "PA12", SUNXI_GPA(12), 39 },
|
||||
{ "PA13", SUNXI_GPA(13), 32 },
|
||||
{ "PA14", SUNXI_GPA(14), 34 },
|
||||
{ "PA15", SUNXI_GPA(15), 36 },
|
||||
{ "PA16", SUNXI_GPA(16), 38 },
|
||||
{ "PA17", SUNXI_GPA(17), 40 },
|
||||
|
||||
{
|
||||
{ 0, 0, 0}
|
||||
},
|
||||
}
|
||||
},
|
||||
|
||||
{"gpio3",
|
||||
{
|
||||
{ "PH0", SUNXI_GPH(0), 5 },
|
||||
{ "PH2", SUNXI_GPH(2), 7 },
|
||||
{ "PH8", SUNXI_GPH(8), 9 },
|
||||
{ "PH9", SUNXI_GPH(9), 11 },
|
||||
{ "PH10", SUNXI_GPH(10), 13 },
|
||||
{ "PH11", SUNXI_GPH(11), 15 },
|
||||
{ "PH12", SUNXI_GPH(12), 17 },
|
||||
{ "PH13", SUNXI_GPH(13), 19 },
|
||||
{ "PH14", SUNXI_GPH(14), 21 },
|
||||
{ "PH15", SUNXI_GPH(15), 23 },
|
||||
{ "PH16", SUNXI_GPH(16), 25 },
|
||||
{ "PH17", SUNXI_GPH(17), 27 },
|
||||
{ "PH18", SUNXI_GPH(18), 29 },
|
||||
{ "PH19", SUNXI_GPH(19), 31 },
|
||||
{ "PH20", SUNXI_GPH(20), 33 },
|
||||
{ "PH21", SUNXI_GPH(21), 35 },
|
||||
{ "PH22", SUNXI_GPH(22), 37 },
|
||||
{ "PH23", SUNXI_GPH(23), 39 },
|
||||
|
||||
{ "PB3", SUNXI_GPB(3), 6 },
|
||||
{ "PB4", SUNXI_GPB(4), 8 },
|
||||
{ "PB5", SUNXI_GPB(5), 10 },
|
||||
{ "PB6", SUNXI_GPB(6), 12 },
|
||||
{ "PB7", SUNXI_GPB(7), 14 },
|
||||
{ "PB8", SUNXI_GPB(8), 16 },
|
||||
{ "PB10", SUNXI_GPB(10), 18 },
|
||||
{ "PB11", SUNXI_GPB(11), 20 },
|
||||
{ "PB12", SUNXI_GPB(12), 22 },
|
||||
{ "PB13", SUNXI_GPB(13), 24 },
|
||||
{ "PB14", SUNXI_GPB(14), 26 },
|
||||
{ "PB15", SUNXI_GPB(15), 28 },
|
||||
{ "PB16", SUNXI_GPB(16), 30 },
|
||||
{ "PB17", SUNXI_GPB(17), 32 },
|
||||
{ "PH24", SUNXI_GPH(24), 34 },
|
||||
{ "PH25", SUNXI_GPH(25), 36 },
|
||||
{ "PH26", SUNXI_GPH(26), 38 },
|
||||
{ "PH27", SUNXI_GPH(27), 40 },
|
||||
{
|
||||
{ 0, 0, 0}
|
||||
},
|
||||
}
|
||||
},
|
||||
|
||||
{"gpio4",
|
||||
{
|
||||
{ "PB0", SUNXI_GPB(0), 5 },
|
||||
{ "PB1", SUNXI_GPB(1), 7 },
|
||||
{ "PE0", SUNXI_GPE(0), 6 },
|
||||
{ "PE1", SUNXI_GPE(1), 8 },
|
||||
{ "PE2", SUNXI_GPE(2), 10 },
|
||||
{ "PE3", SUNXI_GPE(3), 12 },
|
||||
{ "PE4", SUNXI_GPE(4), 14 },
|
||||
{ "PE5", SUNXI_GPE(5), 16 },
|
||||
{ "PE6", SUNXI_GPE(0), 18 },
|
||||
{ "PE7", SUNXI_GPE(0), 9 },
|
||||
{ "PE8", SUNXI_GPE(0), 11 },
|
||||
{ "PE9", SUNXI_GPE(0), 13 },
|
||||
{ "PE10", SUNXI_GPE(0), 15 },
|
||||
{ "PE11", SUNXI_GPE(0), 17 },
|
||||
{ "PI20", SUNXI_GPI(20), 19 },
|
||||
{ "PI21", SUNXI_GPI(21), 20 },
|
||||
{ "PB18", SUNXI_GPB(18), 21 },
|
||||
{ "PB19", SUNXI_GPB(19), 22 },
|
||||
{ "PI16", SUNXI_GPI(16), 23 },
|
||||
{ "PI17", SUNXI_GPI(17), 24 },
|
||||
{ "PI18", SUNXI_GPI(18), 25 },
|
||||
{ "PI19", SUNXI_GPI(19), 26 },
|
||||
{ "PI12", SUNXI_GPI(12), 27 },
|
||||
{ "PI13", SUNXI_GPI(13), 28 },
|
||||
{ "PB20", SUNXI_GPB(20), 29 },
|
||||
{ "PB21", SUNXI_GPB(21), 30 },
|
||||
{ "PC22", SUNXI_GPC(22), 31 },
|
||||
{ "PC21", SUNXI_GPC(21), 32 },
|
||||
{ "PC20", SUNXI_GPC(20), 33 },
|
||||
{ "PC19", SUNXI_GPC(21), 34 },
|
||||
{ "PI15", SUNXI_GPI(15), 36 },
|
||||
{
|
||||
{ 0, 0, 0}
|
||||
},
|
||||
}
|
||||
},
|
||||
|
||||
{"gpio5",
|
||||
{
|
||||
{ "PG0", SUNXI_GPG(0), 1 },
|
||||
{ "PG1", SUNXI_GPG(1), 3 },
|
||||
{ "PG2", SUNXI_GPG(2), 5 },
|
||||
{ "PG3", SUNXI_GPG(3), 7 },
|
||||
{ "PG4", SUNXI_GPG(4), 9 },
|
||||
{ "PG5", SUNXI_GPG(5), 11 },
|
||||
{ "PG6", SUNXI_GPG(6), 13 },
|
||||
{ "PG7", SUNXI_GPG(7), 15 },
|
||||
{ "PG8", SUNXI_GPG(8), 17 },
|
||||
{ "PG9", SUNXI_GPG(9), 19 },
|
||||
{ "PG10", SUNXI_GPG(10), 21 },
|
||||
{ "PG11", SUNXI_GPG(11), 23 },
|
||||
{ "PC8", SUNXI_GPC(8), 25 },
|
||||
{ "PC9", SUNXI_GPC(9), 27 },
|
||||
{ "PC10", SUNXI_GPC(10), 29 },
|
||||
{ "PC11", SUNXI_GPC(11), 31 },
|
||||
{ "PC12", SUNXI_GPC(12), 33 },
|
||||
{ "PC13", SUNXI_GPC(13), 35 },
|
||||
{ "PC14", SUNXI_GPC(14), 37 },
|
||||
{ "PC15", SUNXI_GPC(15), 39 },
|
||||
{ "PI6", SUNXI_GPI(6), 4 },
|
||||
{ "PI7", SUNXI_GPI(7), 6 },
|
||||
{ "PI8", SUNXI_GPI(8), 8 },
|
||||
{ "PI9", SUNXI_GPI(9), 10 },
|
||||
{ "PI4", SUNXI_GPI(4), 12 },
|
||||
{ "PI5", SUNXI_GPI(5), 14 },
|
||||
{ "PC16", SUNXI_GPC(16), 16 },
|
||||
{ "PC17", SUNXI_GPC(17), 18 },
|
||||
{ "PC18", SUNXI_GPC(18), 20 },
|
||||
{ "PC23", SUNXI_GPC(23), 22 },
|
||||
{ "PC24", SUNXI_GPC(24), 24 },
|
||||
{ "PC7", SUNXI_GPC(7), 26 },
|
||||
{ "PC6", SUNXI_GPC(6), 28 },
|
||||
{ "PC5", SUNXI_GPC(5), 30 },
|
||||
{ "PC3", SUNXI_GPC(3), 32 },
|
||||
{ "PC2", SUNXI_GPC(2), 34 },
|
||||
{ "PC1", SUNXI_GPC(1), 36 },
|
||||
{ "PC0", SUNXI_GPC(0), 38 },
|
||||
{ "PC4", SUNXI_GPC(4), 40 },
|
||||
{
|
||||
{ 0, 0, 0}
|
||||
},
|
||||
}
|
||||
},
|
||||
|
||||
};
|
||||
|
||||
|
||||
|
||||
#endif
|
@ -1,5 +1,5 @@
|
||||
--- pyA20-0.2.0/setup.py 2014-09-04 12:17:18.000000000 +0200
|
||||
+++ pyA20-0.2.0/setup.py 2014-11-24 17:44:37.000000000 +0100
|
||||
--- 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:
|
||||
|
@ -2,13 +2,13 @@ DESCRIPTION = "A module to control Allwinner GPIO,SPI and I2C channels"
|
||||
HOMEPAGE = "https://pypi.python.org/pypi/pyA20"
|
||||
SECTION = "devel/python"
|
||||
LICENSE = "MIT"
|
||||
LIC_FILES_CHKSUM = "file://PKG-INFO;md5=b4cb7d5da6f1efc1d0bf487169e83985"
|
||||
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)"
|
||||
COMPATIBLE_MACHINE = "(olinuxino-a13|olinuxino-a10|olinuxino-a20|olinuxino-a10lime|olinuxino-a20lime|olinuxino-a20lime2|olinuxino-a13som|olinuxino-a20som)"
|
||||
|
||||
SRC_URI = "http://pypi.python.org/packages/source/p/pyA20/pyA20-${PV}.tar.gz \
|
||||
SRC_URI = "https://pypi.python.org/packages/source/p/pyA20/pyA20-${PV}.tar.gz \
|
||||
file://setup.py.patch \
|
||||
file://mapping.h \
|
||||
"
|
||||
@ -20,5 +20,5 @@ do_compile_prepend() {
|
||||
cp ${WORKDIR}/mapping.h ${S}/pyA20/gpio/mapping.h
|
||||
}
|
||||
|
||||
SRC_URI[md5sum] = "b4115859834f09ebd389f810f2ffefb9"
|
||||
SRC_URI[sha256sum] = "9855747d9bbdfcce6b460fcd67d953155e39f4e002a9a4c573910248b451dad8"
|
||||
SRC_URI[md5sum] = "2290066bbe274000c53693959a8005b4"
|
||||
SRC_URI[sha256sum] = "b15e4ee1016b7eb52001cbccde3751868624a88d2adbb9adc5404628f7e59e7e"
|
24
recipes-devtools/python/pya20som_0.2.1.bb
Normal file
24
recipes-devtools/python/pya20som_0.2.1.bb
Normal 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"
|
@ -0,0 +1,28 @@
|
||||
From 054886253f4f559b351a94e1e6ebfd5eb504461f Mon Sep 17 00:00:00 2001
|
||||
From: Trevor Woerner <twoerner@gmail.com>
|
||||
Date: Thu, 24 Sep 2015 23:38:11 -0400
|
||||
Subject: [PATCH] fix test build
|
||||
|
||||
Allow the test application to build and link successfully.
|
||||
|
||||
Signed-off-by: Trevor Woerner <twoerner@gmail.com>
|
||||
---
|
||||
test/Makefile | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/test/Makefile b/test/Makefile
|
||||
index 700416e..51481c9 100644
|
||||
--- a/test/Makefile
|
||||
+++ b/test/Makefile
|
||||
@@ -5,7 +5,7 @@ CFLAGS ?= -Wall
|
||||
all: test
|
||||
|
||||
test: ../config.mk test.c
|
||||
- $(CC) $(CFLAGS) -o $@ test.c -lEGL -lGLESv2
|
||||
+ $(CC) $(CFLAGS) -I../include -L../../image/usr/lib -o $@ test.c -lEGL -lGLESv2 -lX11
|
||||
|
||||
clean:
|
||||
rm -f test
|
||||
--
|
||||
2.6.0.rc3
|
||||
|
@ -0,0 +1,136 @@
|
||||
From 15d91ef25234ff402f4288273989693f2d402d9d Mon Sep 17 00:00:00 2001
|
||||
From: Raoul Hecky <raoul.hecky@gmail.com>
|
||||
Date: Fri, 10 Jan 2014 14:44:53 +0100
|
||||
Subject: [PATCH] Add missing GLchar definition, some gl/gles apps needs that
|
||||
to compile correctly
|
||||
|
||||
Build pkg-config files for gles and egl and install them
|
||||
|
||||
Fix .pc creation
|
||||
|
||||
add correct driver version in .pc
|
||||
---
|
||||
.gitignore | 1 +
|
||||
Makefile | 1 +
|
||||
Makefile.pc | 21 +++++++++++++++++++++
|
||||
egl.pc.in | 11 +++++++++++
|
||||
gles_cm.pc.in | 11 +++++++++++
|
||||
glesv2.pc.in | 11 +++++++++++
|
||||
include/GLES/gl.h | 1 +
|
||||
include/GLES2/gl2.h | 1 +
|
||||
8 files changed, 58 insertions(+)
|
||||
create mode 100644 Makefile.pc
|
||||
create mode 100644 egl.pc.in
|
||||
create mode 100644 gles_cm.pc.in
|
||||
create mode 100644 glesv2.pc.in
|
||||
|
||||
diff --git a/.gitignore b/.gitignore
|
||||
index 6865abf..e8a3713 100644
|
||||
--- a/.gitignore
|
||||
+++ b/.gitignore
|
||||
@@ -1,2 +1,3 @@
|
||||
config.mk
|
||||
*~
|
||||
+*.pc
|
||||
diff --git a/Makefile b/Makefile
|
||||
index 60d4a0f..94845ea 100644
|
||||
--- a/Makefile
|
||||
+++ b/Makefile
|
||||
@@ -21,6 +21,7 @@ clean:
|
||||
install: config.mk
|
||||
$(MAKE) -C lib install
|
||||
$(MAKE) -C include install
|
||||
+ $(MAKE) -f Makefile.pc
|
||||
|
||||
test: config.mk
|
||||
$(MAKE) -C test test
|
||||
diff --git a/Makefile.pc b/Makefile.pc
|
||||
new file mode 100644
|
||||
index 0000000..01097fd
|
||||
--- /dev/null
|
||||
+++ b/Makefile.pc
|
||||
@@ -0,0 +1,21 @@
|
||||
+include Makefile.setup
|
||||
+include config.mk
|
||||
+
|
||||
+all:
|
||||
+ echo "prefix=$(prefix)" > egl.pc
|
||||
+ cat egl.pc.in >> egl.pc
|
||||
+ sed -i "s/MVERSION/$MALI_VERSION/g" egl.pc
|
||||
+ echo "prefix=$(prefix)" > gles_cm.pc
|
||||
+ cat gles_cm.pc.in >> gles_cm.pc
|
||||
+ sed -i "s/MVERSION/$MALI_VERSION/g" gles_cm.pc
|
||||
+ echo "prefix=$(prefix)" > glesv2.pc
|
||||
+ cat glesv2.pc.in >> glesv2.pc
|
||||
+ sed -i "s/MVERSION/$MALI_VERSION/g" glesv2.pc
|
||||
+
|
||||
+install: egl.pc gles_cm.pc glesv2.pc
|
||||
+ $(MKDIR) $(libdir)/pkgconfig
|
||||
+ $(INSTALL_DATA) $^ $(libdir)/pkgconfig
|
||||
+
|
||||
+clean:
|
||||
+ $(RM) egl.pc gles_cm.pc glesv2.pc
|
||||
+
|
||||
diff --git a/egl.pc.in b/egl.pc.in
|
||||
new file mode 100644
|
||||
index 0000000..0697183
|
||||
--- /dev/null
|
||||
+++ b/egl.pc.in
|
||||
@@ -0,0 +1,11 @@
|
||||
+exec_prefix=${prefix}
|
||||
+libdir=${prefix}/lib
|
||||
+includedir=${prefix}/include
|
||||
+
|
||||
+Name: egl
|
||||
+Description: Mali EGL library
|
||||
+Requires.private:
|
||||
+Version: MVERSION
|
||||
+Libs: -L${libdir} -lEGL
|
||||
+Libs.private: -lm -lpthread -ldl
|
||||
+Cflags: -I${includedir}
|
||||
diff --git a/gles_cm.pc.in b/gles_cm.pc.in
|
||||
new file mode 100644
|
||||
index 0000000..22bc348
|
||||
--- /dev/null
|
||||
+++ b/gles_cm.pc.in
|
||||
@@ -0,0 +1,11 @@
|
||||
+exec_prefix=${prefix}
|
||||
+libdir=${prefix}/lib
|
||||
+includedir=${prefix}/include
|
||||
+
|
||||
+Name: gles_cm
|
||||
+Description: Mali OpenGL ES 1.1 CM library
|
||||
+Requires.private:
|
||||
+Version: MVERSION
|
||||
+Libs: -L${libdir} -lGLES_CM
|
||||
+Libs.private: -lm -lpthread -ldl
|
||||
+Cflags: -I${includedir}
|
||||
diff --git a/glesv2.pc.in b/glesv2.pc.in
|
||||
new file mode 100644
|
||||
index 0000000..efef2ed
|
||||
--- /dev/null
|
||||
+++ b/glesv2.pc.in
|
||||
@@ -0,0 +1,11 @@
|
||||
+exec_prefix=${prefix}
|
||||
+libdir=${prefix}/lib
|
||||
+includedir=${prefix}/include
|
||||
+
|
||||
+Name: glesv2
|
||||
+Description: Mali OpenGL ES 2.0 library
|
||||
+Requires.private:
|
||||
+Version: MVERSION
|
||||
+Libs: -L${libdir} -lGLESv2
|
||||
+Libs.private: -lm -lpthread -ldl
|
||||
+Cflags: -I${includedir}
|
||||
diff --git a/include/GLES/gl.h b/include/GLES/gl.h
|
||||
index 858f394..a6bb591 100644
|
||||
--- a/include/GLES/gl.h
|
||||
+++ b/include/GLES/gl.h
|
||||
@@ -29,6 +29,7 @@ typedef float GLfloat;
|
||||
typedef float GLclampf;
|
||||
typedef signed int GLfixed;
|
||||
typedef signed int GLclampx;
|
||||
+typedef char GLchar;
|
||||
|
||||
typedef int * GLintptr;
|
||||
typedef int * GLsizeiptr;
|
@ -0,0 +1,30 @@
|
||||
From 95bbd40135f96b473d4c713317e485d0049580cd Mon Sep 17 00:00:00 2001
|
||||
From: Raoul Hecky <raoul.hecky@gmail.com>
|
||||
Date: Tue, 8 Apr 2014 08:10:12 +0200
|
||||
Subject: [PATCH] Fix sed to replace by the correct var
|
||||
|
||||
---
|
||||
Makefile.pc | 6 +++---
|
||||
1 file changed, 3 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/Makefile.pc b/Makefile.pc
|
||||
index 01097fd..c51d18c 100644
|
||||
--- a/Makefile.pc
|
||||
+++ b/Makefile.pc
|
||||
@@ -4,13 +4,13 @@ include config.mk
|
||||
all:
|
||||
echo "prefix=$(prefix)" > egl.pc
|
||||
cat egl.pc.in >> egl.pc
|
||||
- sed -i "s/MVERSION/$MALI_VERSION/g" egl.pc
|
||||
+ sed -i "s/MVERSION/${MALI_VERSION}/g" egl.pc
|
||||
echo "prefix=$(prefix)" > gles_cm.pc
|
||||
cat gles_cm.pc.in >> gles_cm.pc
|
||||
- sed -i "s/MVERSION/$MALI_VERSION/g" gles_cm.pc
|
||||
+ sed -i "s/MVERSION/${MALI_VERSION}/g" gles_cm.pc
|
||||
echo "prefix=$(prefix)" > glesv2.pc
|
||||
cat glesv2.pc.in >> glesv2.pc
|
||||
- sed -i "s/MVERSION/$MALI_VERSION/g" glesv2.pc
|
||||
+ sed -i "s/MVERSION/${MALI_VERSION}/g" glesv2.pc
|
||||
|
||||
install: egl.pc gles_cm.pc glesv2.pc
|
||||
$(MKDIR) $(libdir)/pkgconfig
|
@ -3,36 +3,68 @@ DESCRIPTION = "libGLES for the A10/A13 Allwinner processor with Mali 400 (X11)"
|
||||
LICENSE = "Proprietary"
|
||||
LIC_FILES_CHKSUM = "file://README;md5=1b81a178e80ee888ee4571772699ab2c"
|
||||
|
||||
COMPATIBLE_MACHINE = "(sun4i|sun5i|sun7i)"
|
||||
DEPENDS = "virtual/libx11 libxau libxdmcp libdrm dri2proto libdri2 libump"
|
||||
COMPATIBLE_MACHINE = "(sun4i|sun5i|sun7i|sun8i)"
|
||||
|
||||
# These libraries shouldn't get installed in world builds unless something
|
||||
# explicitly depends upon them.
|
||||
EXCLUDE_FROM_WORLD = "1"
|
||||
PROVIDES = "virtual/libgles1 virtual/libgles2 virtual/egl"
|
||||
|
||||
inherit distro_features_check
|
||||
REQUIRED_DISTRO_FEATURES = "opengl"
|
||||
# There's only hardfp version available
|
||||
python __anonymous() {
|
||||
tunes = d.getVar("TUNE_FEATURES", True)
|
||||
if not tunes:
|
||||
return
|
||||
if "callconvention-hard" not in tunes:
|
||||
pkgn = d.getVar("PN", True)
|
||||
pkgv = d.getVar("PV", True)
|
||||
raise bb.parse.SkipPackage("%s-%s ONLY supports hardfp mode for now" % (pkgn, pkgv))
|
||||
}
|
||||
|
||||
SRCREV_pn-${PN} = "d343311efc8db166d8371b28494f0f27b6a58724"
|
||||
SRC_URI = "gitsm://github.com/linux-sunxi/sunxi-mali.git \
|
||||
file://0001-Add-EGLSyncKHR-EGLTimeKHR-and-GLChar-definition.patch"
|
||||
file://0001-Add-EGLSyncKHR-EGLTimeKHR-and-GLChar-definition.patch \
|
||||
file://0002-Add-missing-GLchar-definition.patch \
|
||||
file://0003-Fix-sed-to-replace-by-the-correct-var.patch \
|
||||
file://0001-fix-test-build.patch \
|
||||
"
|
||||
|
||||
S = "${WORKDIR}/git"
|
||||
|
||||
DEPENDS = "libdrm dri2proto libump"
|
||||
|
||||
PACKAGECONFIG ??= "${@base_contains('DISTRO_FEATURES', 'x11', 'x11', '', d)} ${@base_contains('DISTRO_FEATURES', 'wayland', 'wayland', '', d)}"
|
||||
PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11', '', d)} ${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'wayland', '', d)}"
|
||||
PACKAGECONFIG[wayland] = "EGL_TYPE=framebuffer,,,"
|
||||
PACKAGECONFIG[x11] = "EGL_TYPE=x11,,virtual/libx11 libxau libxdmcp libdri2,"
|
||||
|
||||
# Inhibit warnings about files being stripped, we can't do anything about it.
|
||||
INHIBIT_PACKAGE_DEBUG_SPLIT = "1"
|
||||
INHIBIT_PACKAGE_STRIP = "1"
|
||||
INHIBIT_SYSROOT_STRIP = "1"
|
||||
|
||||
do_configure() {
|
||||
DESTDIR=${D}/ VERSION=r3p0 ABI=armhf ${EXTRA_OECONF} make config
|
||||
DESTDIR=${D}/ VERSION=r3p0 ABI=armhf make ${EXTRA_OEMAKE} config
|
||||
}
|
||||
|
||||
do_install() {
|
||||
make -f Makefile.pc
|
||||
|
||||
# install headers
|
||||
install -d -m 0755 ${D}${includedir}/EGL
|
||||
install -m 0755 ${S}/include/EGL/*.h ${D}${includedir}/EGL/
|
||||
install -d -m 0755 ${D}${includedir}/GLES
|
||||
install -m 0755 ${S}/include/GLES/*.h ${D}${includedir}/GLES/
|
||||
install -d -m 0755 ${D}${includedir}/GLES2
|
||||
install -m 0755 ${S}/include/GLES2/*.h ${D}${includedir}/GLES2/
|
||||
install -d -m 0755 ${D}${includedir}/KHR
|
||||
install -m 0755 ${S}/include/KHR/*.h ${D}${includedir}/KHR/
|
||||
|
||||
# Copy the .pc files
|
||||
install -d -m 0755 ${D}${libdir}/pkgconfig
|
||||
install -m 0644 ${S}/egl.pc ${D}${libdir}/pkgconfig/
|
||||
install -m 0644 ${S}/gles_cm.pc ${D}${libdir}/pkgconfig/
|
||||
install -m 0644 ${S}/glesv2.pc ${D}${libdir}/pkgconfig/
|
||||
|
||||
install -d ${D}${libdir}
|
||||
install -d ${D}${includedir}
|
||||
|
||||
@ -49,10 +81,22 @@ do_install() {
|
||||
rm ${D}${libdir}/$flib
|
||||
ln -sf libMali.so.3 ${D}${libdir}/$flib
|
||||
done
|
||||
|
||||
DESTDIR=${D}/ VERSION=r3p0 ABI=armhf make ${EXTRA_OEMAKE} test
|
||||
install -d ${D}${bindir}
|
||||
install -m 0755 ${S}/test/test ${D}${bindir}/sunximali-test
|
||||
}
|
||||
|
||||
# Packages like xf86-video-fbturbo dlopen() libUMP.so, so we do need to ship the .so files in ${PN}
|
||||
PACKAGES =+ "${PN}-test"
|
||||
|
||||
RPROVIDES_${PN} += "libGLESv2.so libEGL.so libGLESv2.so libGLESv1_CM.so libMali.so"
|
||||
RDEPENDS_${PN}-test = "${PN}"
|
||||
|
||||
FILES_${PN} += "${libdir}/lib*.so"
|
||||
FILES_${PN}-dev = "${includedir}"
|
||||
FILES_${PN}-dev = "${includedir} ${libdir}/pkgconfig/*"
|
||||
FILES_${PN}-test = "${bindir}/sunximali-test"
|
||||
|
||||
# These are closed binaries generated elsewhere so don't check ldflags & text relocations
|
||||
INSANE_SKIP_${PN} = "dev-so ldflags textrel"
|
||||
INSANE_SKIP_${PN}-test = "dev-so ldflags textrel"
|
||||
|
@ -1,79 +0,0 @@
|
||||
From c525c0b5d8eada982c99442454fcf7b8364e10b3 Mon Sep 17 00:00:00 2001
|
||||
From: Florian Boor <florian@kernelconcepts.de>
|
||||
Date: Fri, 1 Apr 2011 23:30:21 +0200
|
||||
Subject: [PATCH] Support reading coordinates from multitouch devices.
|
||||
|
||||
Signed-off-by: Florian Boor <florian@kernelconcepts.de>
|
||||
Signed-off-by: Christopher Larson <kergoth@gmail.com>
|
||||
---
|
||||
plugins/input-raw.c | 33 +++++++++++++++++++++++----------
|
||||
1 file changed, 23 insertions(+), 10 deletions(-)
|
||||
|
||||
diff --git a/plugins/input-raw.c b/plugins/input-raw.c
|
||||
index 4396eab..1e48505 100644
|
||||
--- a/plugins/input-raw.c
|
||||
+++ b/plugins/input-raw.c
|
||||
@@ -40,6 +40,11 @@
|
||||
# define KEY_CNT (KEY_MAX+1)
|
||||
#endif
|
||||
|
||||
+#ifndef ABS_MT_POSITION_X
|
||||
+# define ABS_MT_POSITION_X 0x35 /* Center X ellipse position */
|
||||
+# define ABS_MT_POSITION_Y 0x36 /* Center Y ellipse position */
|
||||
+#endif
|
||||
+
|
||||
#include "tslib-private.h"
|
||||
|
||||
#define GRAB_EVENTS_WANTED 1
|
||||
@@ -160,16 +165,17 @@ static int ts_input_read(struct tslib_module_info *inf,
|
||||
}
|
||||
break;
|
||||
case EV_SYN:
|
||||
- /* Fill out a new complete event */
|
||||
- if (pen_up) {
|
||||
- samp->x = 0;
|
||||
- samp->y = 0;
|
||||
- samp->pressure = 0;
|
||||
- pen_up = 0;
|
||||
- } else {
|
||||
- samp->x = i->current_x;
|
||||
- samp->y = i->current_y;
|
||||
- samp->pressure = i->current_p;
|
||||
+ if (ev.code == SYN_REPORT) {
|
||||
+ /* Fill out a new complete event */
|
||||
+ if (pen_up) {
|
||||
+ samp->x = 0;
|
||||
+ samp->y = 0;
|
||||
+ samp->pressure = 0;
|
||||
+ pen_up = 0;
|
||||
+ } else {
|
||||
+ samp->x = i->current_x;
|
||||
+ samp->y = i->current_y;
|
||||
+ samp->pressure = i->current_p;
|
||||
}
|
||||
samp->tv = ev.time;
|
||||
#ifdef DEBUG
|
||||
@@ -179,6 +185,7 @@ static int ts_input_read(struct tslib_module_info *inf,
|
||||
#endif /* DEBUG */
|
||||
samp++;
|
||||
total++;
|
||||
+ }
|
||||
break;
|
||||
case EV_ABS:
|
||||
switch (ev.code) {
|
||||
@@ -188,6 +195,12 @@ static int ts_input_read(struct tslib_module_info *inf,
|
||||
case ABS_Y:
|
||||
i->current_y = ev.value;
|
||||
break;
|
||||
+ case ABS_MT_POSITION_X:
|
||||
+ i->current_x = ev.value;
|
||||
+ break;
|
||||
+ case ABS_MT_POSITION_Y:
|
||||
+ i->current_y = ev.value;
|
||||
+ break;
|
||||
case ABS_PRESSURE:
|
||||
i->current_p = ev.value;
|
||||
break;
|
||||
--
|
||||
1.8.1.4
|
||||
|
@ -5,11 +5,11 @@ DESCRIPTION = "X.Org X server -- A10/A13 display driver"
|
||||
LICENSE = "MIT-X"
|
||||
LIC_FILES_CHKSUM = "file://COPYING;md5=f91dc3ee5ce59eb4b528e67e98a31266"
|
||||
|
||||
DEPENDS += "sunxi-mali"
|
||||
DEPENDS += "sunxi-mali libump xf86driproto"
|
||||
|
||||
PE = "3"
|
||||
PV = "0.3.1+git${SRCPV}"
|
||||
SRCREV_pn-${PN} = "eed17d5586c3b4dfcf0b5976e8b947b171d4897c"
|
||||
PV = "0.5.1+git${SRCPV}"
|
||||
SRCREV_pn-${PN} = "e094e3c8f9004ca3347694bd05b99d136e8621b9"
|
||||
|
||||
SRC_URI = "git://github.com/ssvb/xf86-video-fbturbo.git;protocol=http;branch=master \
|
||||
file://20-fbturbo.conf"
|
||||
|
@ -0,0 +1,35 @@
|
||||
From 3116d37651d77125bf50f81f859b1278e02ccce6 Mon Sep 17 00:00:00 2001
|
||||
From: Emmanuel Vadot <manu@bidouilliste.com>
|
||||
Date: Wed, 14 Dec 2016 15:57:24 +0100
|
||||
Subject: [PATCH] ARM: dts: sunxi: Change node name for pwrseq pin on
|
||||
Olinuxino-lime2-emmc
|
||||
|
||||
The node name for the power seq pin is mmc2@0 like the mmc2_pins_a one.
|
||||
This makes the original node (mmc2_pins_a) scrapped out of the dtb and
|
||||
result in a unusable eMMC if U-Boot didn't configured the pins to the
|
||||
correct functions.
|
||||
|
||||
Upstream-Status: Backport from v4.10
|
||||
|
||||
Signed-off-by: Emmanuel Vadot <manu@bidouilliste.com>
|
||||
Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
|
||||
---
|
||||
arch/arm/boot/dts/sun7i-a20-olinuxino-lime2-emmc.dts | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/arch/arm/boot/dts/sun7i-a20-olinuxino-lime2-emmc.dts b/arch/arm/boot/dts/sun7i-a20-olinuxino-lime2-emmc.dts
|
||||
index 5ea4915..10d3074 100644
|
||||
--- a/arch/arm/boot/dts/sun7i-a20-olinuxino-lime2-emmc.dts
|
||||
+++ b/arch/arm/boot/dts/sun7i-a20-olinuxino-lime2-emmc.dts
|
||||
@@ -56,7 +56,7 @@
|
||||
};
|
||||
|
||||
&pio {
|
||||
- mmc2_pins_nrst: mmc2@0 {
|
||||
+ mmc2_pins_nrst: mmc2-rst-pin {
|
||||
allwinner,pins = "PC16";
|
||||
allwinner,function = "gpio_out";
|
||||
allwinner,drive = <SUN4I_PINCTRL_10_MA>;
|
||||
--
|
||||
2.7.4
|
||||
|
@ -0,0 +1,276 @@
|
||||
From a66aaac889f09425ff0f3ddb27aca46ae02d6eea Mon Sep 17 00:00:00 2001
|
||||
From: Joe Perches <joe@perches.com>
|
||||
Date: Thu, 25 Jun 2015 15:01:02 -0700
|
||||
Subject: [PATCH] compiler-gcc: integrate the various compiler-gcc[345].h files
|
||||
|
||||
As gcc major version numbers are going to advance rather rapidly in the
|
||||
future, there's no real value in separate files for each compiler
|
||||
version.
|
||||
|
||||
Deduplicate some of the macros #defined in each file too.
|
||||
|
||||
Neaten comments using normal kernel commenting style.
|
||||
|
||||
Upstream-Status: Backport
|
||||
|
||||
Signed-off-by: Joe Perches <joe@perches.com>
|
||||
Cc: Andi Kleen <andi@firstfloor.org>
|
||||
Cc: Michal Marek <mmarek@suse.cz>
|
||||
Cc: Segher Boessenkool <segher@kernel.crashing.org>
|
||||
Cc: Sasha Levin <levinsasha928@gmail.com>
|
||||
Cc: Anton Blanchard <anton@samba.org>
|
||||
Cc: Alan Modra <amodra@gmail.com>
|
||||
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
|
||||
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
||||
Signed-off-by: Jonathan Liu <net147@gmail.com>
|
||||
---
|
||||
include/linux/compiler-gcc.h | 120 ++++++++++++++++++++++++++++++++++++++++--
|
||||
include/linux/compiler-gcc3.h | 23 --------
|
||||
include/linux/compiler-gcc4.h | 74 --------------------------
|
||||
3 files changed, 116 insertions(+), 101 deletions(-)
|
||||
delete mode 100644 include/linux/compiler-gcc3.h
|
||||
delete mode 100644 include/linux/compiler-gcc4.h
|
||||
|
||||
diff --git a/include/linux/compiler-gcc.h b/include/linux/compiler-gcc.h
|
||||
index 7970e31..727add9 100644
|
||||
--- a/include/linux/compiler-gcc.h
|
||||
+++ b/include/linux/compiler-gcc.h
|
||||
@@ -97,10 +97,122 @@
|
||||
#define __maybe_unused __attribute__((unused))
|
||||
#define __always_unused __attribute__((unused))
|
||||
|
||||
-#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__)
|
||||
+/* gcc version specific checks */
|
||||
+
|
||||
+#if GCC_VERSION < 30200
|
||||
+# error Sorry, your compiler is too old - please upgrade it.
|
||||
+#endif
|
||||
+
|
||||
+#if GCC_VERSION < 30300
|
||||
+# define __used __attribute__((__unused__))
|
||||
+#else
|
||||
+# define __used __attribute__((__used__))
|
||||
+#endif
|
||||
+
|
||||
+#ifdef CONFIG_GCOV_KERNEL
|
||||
+# if GCC_VERSION < 30400
|
||||
+# error "GCOV profiling support for gcc versions below 3.4 not included"
|
||||
+# endif /* __GNUC_MINOR__ */
|
||||
+#endif /* CONFIG_GCOV_KERNEL */
|
||||
+
|
||||
+#if GCC_VERSION >= 30400
|
||||
+#define __must_check __attribute__((warn_unused_result))
|
||||
+#endif
|
||||
+
|
||||
+#if GCC_VERSION >= 40000
|
||||
+
|
||||
+/* GCC 4.1.[01] miscompiles __weak */
|
||||
+#ifdef __KERNEL__
|
||||
+# if GCC_VERSION >= 40100 && GCC_VERSION <= 40101
|
||||
+# error Your version of gcc miscompiles the __weak directive
|
||||
+# endif
|
||||
+#endif
|
||||
+
|
||||
+#define __used __attribute__((__used__))
|
||||
+#define __compiler_offsetof(a, b) \
|
||||
+ __builtin_offsetof(a, b)
|
||||
+
|
||||
+#if GCC_VERSION >= 40100 && GCC_VERSION < 40600
|
||||
+# define __compiletime_object_size(obj) __builtin_object_size(obj, 0)
|
||||
+#endif
|
||||
+
|
||||
+#if GCC_VERSION >= 40300
|
||||
+/* Mark functions as cold. gcc will assume any path leading to a call
|
||||
+ * to them will be unlikely. This means a lot of manual unlikely()s
|
||||
+ * are unnecessary now for any paths leading to the usual suspects
|
||||
+ * like BUG(), printk(), panic() etc. [but let's keep them for now for
|
||||
+ * older compilers]
|
||||
+ *
|
||||
+ * Early snapshots of gcc 4.3 don't support this and we can't detect this
|
||||
+ * in the preprocessor, but we can live with this because they're unreleased.
|
||||
+ * Maketime probing would be overkill here.
|
||||
+ *
|
||||
+ * gcc also has a __attribute__((__hot__)) to move hot functions into
|
||||
+ * a special section, but I don't see any sense in this right now in
|
||||
+ * the kernel context
|
||||
+ */
|
||||
+#define __cold __attribute__((__cold__))
|
||||
+
|
||||
+#define __UNIQUE_ID(prefix) __PASTE(__PASTE(__UNIQUE_ID_, prefix), __COUNTER__)
|
||||
+
|
||||
+#ifndef __CHECKER__
|
||||
+# define __compiletime_warning(message) __attribute__((warning(message)))
|
||||
+# define __compiletime_error(message) __attribute__((error(message)))
|
||||
+#endif /* __CHECKER__ */
|
||||
+#endif /* GCC_VERSION >= 40300 */
|
||||
+
|
||||
+#if GCC_VERSION >= 40500
|
||||
+/*
|
||||
+ * Mark a position in code as unreachable. This can be used to
|
||||
+ * suppress control flow warnings after asm blocks that transfer
|
||||
+ * control elsewhere.
|
||||
+ *
|
||||
+ * Early snapshots of gcc 4.5 don't support this and we can't detect
|
||||
+ * this in the preprocessor, but we can live with this because they're
|
||||
+ * unreleased. Really, we need to have autoconf for the kernel.
|
||||
+ */
|
||||
+#define unreachable() __builtin_unreachable()
|
||||
+
|
||||
+/* Mark a function definition as prohibited from being cloned. */
|
||||
+#define __noclone __attribute__((__noclone__))
|
||||
+
|
||||
+#endif /* GCC_VERSION >= 40500 */
|
||||
+
|
||||
+#if GCC_VERSION >= 40600
|
||||
+/*
|
||||
+ * Tell the optimizer that something else uses this function or variable.
|
||||
+ */
|
||||
+#define __visible __attribute__((externally_visible))
|
||||
+#endif
|
||||
+
|
||||
+/*
|
||||
+ * GCC 'asm goto' miscompiles certain code sequences:
|
||||
+ *
|
||||
+ * http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58670
|
||||
+ *
|
||||
+ * Work it around via a compiler barrier quirk suggested by Jakub Jelinek.
|
||||
+ *
|
||||
+ * (asm goto is automatically volatile - the naming reflects this.)
|
||||
+ */
|
||||
+#define asm_volatile_goto(x...) do { asm goto(x); asm (""); } while (0)
|
||||
+
|
||||
+#ifdef CONFIG_ARCH_USE_BUILTIN_BSWAP
|
||||
+#if GCC_VERSION >= 40400
|
||||
+#define __HAVE_BUILTIN_BSWAP32__
|
||||
+#define __HAVE_BUILTIN_BSWAP64__
|
||||
+#endif
|
||||
+#if GCC_VERSION >= 40800 || (defined(__powerpc__) && GCC_VERSION >= 40600)
|
||||
+#define __HAVE_BUILTIN_BSWAP16__
|
||||
+#endif
|
||||
+#endif /* CONFIG_ARCH_USE_BUILTIN_BSWAP */
|
||||
+
|
||||
+#if GCC_VERSION >= 50000
|
||||
+#define KASAN_ABI_VERSION 4
|
||||
+#elif GCC_VERSION >= 40902
|
||||
+#define KASAN_ABI_VERSION 3
|
||||
+#endif
|
||||
+
|
||||
+#endif /* gcc version >= 40000 specific checks */
|
||||
|
||||
#if !defined(__noclone)
|
||||
#define __noclone /* not needed */
|
||||
diff --git a/include/linux/compiler-gcc3.h b/include/linux/compiler-gcc3.h
|
||||
deleted file mode 100644
|
||||
index 37d4124..0000000
|
||||
--- a/include/linux/compiler-gcc3.h
|
||||
+++ /dev/null
|
||||
@@ -1,23 +0,0 @@
|
||||
-#ifndef __LINUX_COMPILER_H
|
||||
-#error "Please don't include <linux/compiler-gcc3.h> directly, include <linux/compiler.h> instead."
|
||||
-#endif
|
||||
-
|
||||
-#if __GNUC_MINOR__ < 2
|
||||
-# error Sorry, your compiler is too old - please upgrade it.
|
||||
-#endif
|
||||
-
|
||||
-#if __GNUC_MINOR__ >= 3
|
||||
-# define __used __attribute__((__used__))
|
||||
-#else
|
||||
-# define __used __attribute__((__unused__))
|
||||
-#endif
|
||||
-
|
||||
-#if __GNUC_MINOR__ >= 4
|
||||
-#define __must_check __attribute__((warn_unused_result))
|
||||
-#endif
|
||||
-
|
||||
-#ifdef CONFIG_GCOV_KERNEL
|
||||
-# if __GNUC_MINOR__ < 4
|
||||
-# error "GCOV profiling support for gcc versions below 3.4 not included"
|
||||
-# endif /* __GNUC_MINOR__ */
|
||||
-#endif /* CONFIG_GCOV_KERNEL */
|
||||
diff --git a/include/linux/compiler-gcc4.h b/include/linux/compiler-gcc4.h
|
||||
deleted file mode 100644
|
||||
index 91b1aa8..0000000
|
||||
--- a/include/linux/compiler-gcc4.h
|
||||
+++ /dev/null
|
||||
@@ -1,74 +0,0 @@
|
||||
-#ifndef __LINUX_COMPILER_H
|
||||
-#error "Please don't include <linux/compiler-gcc4.h> directly, include <linux/compiler.h> instead."
|
||||
-#endif
|
||||
-
|
||||
-/* GCC 4.1.[01] miscompiles __weak */
|
||||
-#ifdef __KERNEL__
|
||||
-# if __GNUC_MINOR__ == 1 && __GNUC_PATCHLEVEL__ <= 1
|
||||
-# error Your version of gcc miscompiles the __weak directive
|
||||
-# endif
|
||||
-#endif
|
||||
-
|
||||
-#define __used __attribute__((__used__))
|
||||
-#define __must_check __attribute__((warn_unused_result))
|
||||
-#define __compiler_offsetof(a,b) __builtin_offsetof(a,b)
|
||||
-
|
||||
-#if __GNUC_MINOR__ >= 3
|
||||
-/* Mark functions as cold. gcc will assume any path leading to a call
|
||||
- to them will be unlikely. This means a lot of manual unlikely()s
|
||||
- are unnecessary now for any paths leading to the usual suspects
|
||||
- like BUG(), printk(), panic() etc. [but let's keep them for now for
|
||||
- older compilers]
|
||||
-
|
||||
- Early snapshots of gcc 4.3 don't support this and we can't detect this
|
||||
- in the preprocessor, but we can live with this because they're unreleased.
|
||||
- Maketime probing would be overkill here.
|
||||
-
|
||||
- gcc also has a __attribute__((__hot__)) to move hot functions into
|
||||
- a special section, but I don't see any sense in this right now in
|
||||
- the kernel context */
|
||||
-#define __cold __attribute__((__cold__))
|
||||
-
|
||||
-#define __linktime_error(message) __attribute__((__error__(message)))
|
||||
-
|
||||
-/*
|
||||
- * GCC 'asm goto' miscompiles certain code sequences:
|
||||
- *
|
||||
- * http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58670
|
||||
- *
|
||||
- * Work it around via a compiler barrier quirk suggested by Jakub Jelinek.
|
||||
- * Fixed in GCC 4.8.2 and later versions.
|
||||
- *
|
||||
- * (asm goto is automatically volatile - the naming reflects this.)
|
||||
- */
|
||||
-#if GCC_VERSION <= 40801
|
||||
-# define asm_volatile_goto(x...) do { asm goto(x); asm (""); } while (0)
|
||||
-#else
|
||||
-# define asm_volatile_goto(x...) do { asm goto(x); } while (0)
|
||||
-#endif
|
||||
-
|
||||
-#if __GNUC_MINOR__ >= 5
|
||||
-/*
|
||||
- * Mark a position in code as unreachable. This can be used to
|
||||
- * suppress control flow warnings after asm blocks that transfer
|
||||
- * control elsewhere.
|
||||
- *
|
||||
- * Early snapshots of gcc 4.5 don't support this and we can't detect
|
||||
- * this in the preprocessor, but we can live with this because they're
|
||||
- * unreleased. Really, we need to have autoconf for the kernel.
|
||||
- */
|
||||
-#define unreachable() __builtin_unreachable()
|
||||
-
|
||||
-/* Mark a function definition as prohibited from being cloned. */
|
||||
-#define __noclone __attribute__((__noclone__))
|
||||
-
|
||||
-#endif
|
||||
-#endif
|
||||
-
|
||||
-#if __GNUC_MINOR__ > 0
|
||||
-#define __compiletime_object_size(obj) __builtin_object_size(obj, 0)
|
||||
-#endif
|
||||
-#if __GNUC_MINOR__ >= 4 && !defined(__CHECKER__)
|
||||
-#define __compiletime_warning(message) __attribute__((warning(message)))
|
||||
-#define __compiletime_error(message) __attribute__((error(message)))
|
||||
-#endif
|
||||
--
|
||||
2.10.0
|
||||
|
135
recipes-kernel/linux/linux-sunxi/0001-gcc5-fixes.patch
Normal file
135
recipes-kernel/linux/linux-sunxi/0001-gcc5-fixes.patch
Normal file
@ -0,0 +1,135 @@
|
||||
From 83b0b8a7b9cb658d3cc980b4fbcbb2cc8b257ccf Mon Sep 17 00:00:00 2001
|
||||
From: Trevor Woerner <twoerner@gmail.com>
|
||||
Date: Thu, 24 Sep 2015 17:07:26 -0400
|
||||
Subject: [PATCH] gcc5 fixes
|
||||
|
||||
gcc5 is pickier about inline functions defined in headers.
|
||||
|
||||
Signed-off-by: Trevor Woerner <twoerner@gmail.com>
|
||||
---
|
||||
drivers/net/wireless/rtl8188eu/include/ieee80211.h | 4 ++--
|
||||
drivers/net/wireless/rtl8189es/include/ieee80211.h | 4 ++--
|
||||
drivers/net/wireless/rtl8192cu/include/ieee80211.h | 8 ++++----
|
||||
drivers/net/wireless/rtl8723as/include/ieee80211.h | 4 ++--
|
||||
drivers/staging/rtl8712/ieee80211.h | 4 ++--
|
||||
5 files changed, 12 insertions(+), 12 deletions(-)
|
||||
|
||||
diff --git a/drivers/net/wireless/rtl8188eu/include/ieee80211.h b/drivers/net/wireless/rtl8188eu/include/ieee80211.h
|
||||
index 1ae96a5..7a301c5 100644
|
||||
--- a/drivers/net/wireless/rtl8188eu/include/ieee80211.h
|
||||
+++ b/drivers/net/wireless/rtl8188eu/include/ieee80211.h
|
||||
@@ -1188,12 +1188,12 @@ enum ieee80211_state {
|
||||
(((Addr[2]) & 0xff) == 0xff) && (((Addr[3]) & 0xff) == 0xff) && (((Addr[4]) & 0xff) == 0xff) && \
|
||||
(((Addr[5]) & 0xff) == 0xff))
|
||||
#else
|
||||
-extern __inline int is_multicast_mac_addr(const u8 *addr)
|
||||
+static __inline int is_multicast_mac_addr(const u8 *addr)
|
||||
{
|
||||
return ((addr[0] != 0xff) && (0x01 & addr[0]));
|
||||
}
|
||||
|
||||
-extern __inline int is_broadcast_mac_addr(const u8 *addr)
|
||||
+static __inline int is_broadcast_mac_addr(const u8 *addr)
|
||||
{
|
||||
return ((addr[0] == 0xff) && (addr[1] == 0xff) && (addr[2] == 0xff) && \
|
||||
(addr[3] == 0xff) && (addr[4] == 0xff) && (addr[5] == 0xff));
|
||||
diff --git a/drivers/net/wireless/rtl8189es/include/ieee80211.h b/drivers/net/wireless/rtl8189es/include/ieee80211.h
|
||||
index 1ae96a5..7a301c5 100644
|
||||
--- a/drivers/net/wireless/rtl8189es/include/ieee80211.h
|
||||
+++ b/drivers/net/wireless/rtl8189es/include/ieee80211.h
|
||||
@@ -1188,12 +1188,12 @@ enum ieee80211_state {
|
||||
(((Addr[2]) & 0xff) == 0xff) && (((Addr[3]) & 0xff) == 0xff) && (((Addr[4]) & 0xff) == 0xff) && \
|
||||
(((Addr[5]) & 0xff) == 0xff))
|
||||
#else
|
||||
-extern __inline int is_multicast_mac_addr(const u8 *addr)
|
||||
+static __inline int is_multicast_mac_addr(const u8 *addr)
|
||||
{
|
||||
return ((addr[0] != 0xff) && (0x01 & addr[0]));
|
||||
}
|
||||
|
||||
-extern __inline int is_broadcast_mac_addr(const u8 *addr)
|
||||
+static __inline int is_broadcast_mac_addr(const u8 *addr)
|
||||
{
|
||||
return ((addr[0] == 0xff) && (addr[1] == 0xff) && (addr[2] == 0xff) && \
|
||||
(addr[3] == 0xff) && (addr[4] == 0xff) && (addr[5] == 0xff));
|
||||
diff --git a/drivers/net/wireless/rtl8192cu/include/ieee80211.h b/drivers/net/wireless/rtl8192cu/include/ieee80211.h
|
||||
index 86e9726..950691d 100644
|
||||
--- a/drivers/net/wireless/rtl8192cu/include/ieee80211.h
|
||||
+++ b/drivers/net/wireless/rtl8192cu/include/ieee80211.h
|
||||
@@ -1149,12 +1149,12 @@ enum ieee80211_state {
|
||||
#define MAC_FMT "%02x:%02x:%02x:%02x:%02x:%02x"
|
||||
#define MAC_ARG(x) ((u8*)(x))[0],((u8*)(x))[1],((u8*)(x))[2],((u8*)(x))[3],((u8*)(x))[4],((u8*)(x))[5]
|
||||
|
||||
-extern __inline int is_multicast_mac_addr(const u8 *addr)
|
||||
+static __inline int is_multicast_mac_addr(const u8 *addr)
|
||||
{
|
||||
return ((addr[0] != 0xff) && (0x01 & addr[0]));
|
||||
}
|
||||
|
||||
-extern __inline int is_broadcast_mac_addr(const u8 *addr)
|
||||
+static __inline int is_broadcast_mac_addr(const u8 *addr)
|
||||
{
|
||||
return ((addr[0] == 0xff) && (addr[1] == 0xff) && (addr[2] == 0xff) && \
|
||||
(addr[3] == 0xff) && (addr[4] == 0xff) && (addr[5] == 0xff));
|
||||
@@ -1177,7 +1177,7 @@ typedef struct tx_pending_t{
|
||||
#define IEEE_G (1<<2)
|
||||
#define IEEE_MODE_MASK (IEEE_A|IEEE_B|IEEE_G)
|
||||
|
||||
-extern __inline int ieee80211_is_empty_essid(const char *essid, int essid_len)
|
||||
+static __inline int ieee80211_is_empty_essid(const char *essid, int essid_len)
|
||||
{
|
||||
/* Single white space is for Linksys APs */
|
||||
if (essid_len == 1 && essid[0] == ' ')
|
||||
@@ -1193,7 +1193,7 @@ extern __inline int ieee80211_is_empty_essid(const char *essid, int essid_len)
|
||||
return 1;
|
||||
}
|
||||
|
||||
-extern __inline int ieee80211_get_hdrlen(u16 fc)
|
||||
+static __inline int ieee80211_get_hdrlen(u16 fc)
|
||||
{
|
||||
int hdrlen = 24;
|
||||
|
||||
diff --git a/drivers/net/wireless/rtl8723as/include/ieee80211.h b/drivers/net/wireless/rtl8723as/include/ieee80211.h
|
||||
index bf24c3b..f8046ee 100644
|
||||
--- a/drivers/net/wireless/rtl8723as/include/ieee80211.h
|
||||
+++ b/drivers/net/wireless/rtl8723as/include/ieee80211.h
|
||||
@@ -1176,12 +1176,12 @@ enum ieee80211_state {
|
||||
(((Addr[2]) & 0xff) == 0xff) && (((Addr[3]) & 0xff) == 0xff) && (((Addr[4]) & 0xff) == 0xff) && \
|
||||
(((Addr[5]) & 0xff) == 0xff))
|
||||
#else
|
||||
-extern __inline int is_multicast_mac_addr(const u8 *addr)
|
||||
+static __inline int is_multicast_mac_addr(const u8 *addr)
|
||||
{
|
||||
return ((addr[0] != 0xff) && (0x01 & addr[0]));
|
||||
}
|
||||
|
||||
-extern __inline int is_broadcast_mac_addr(const u8 *addr)
|
||||
+static __inline int is_broadcast_mac_addr(const u8 *addr)
|
||||
{
|
||||
return ((addr[0] == 0xff) && (addr[1] == 0xff) && (addr[2] == 0xff) && \
|
||||
(addr[3] == 0xff) && (addr[4] == 0xff) && (addr[5] == 0xff));
|
||||
diff --git a/drivers/staging/rtl8712/ieee80211.h b/drivers/staging/rtl8712/ieee80211.h
|
||||
index 3c0092b..1e7b55b 100644
|
||||
--- a/drivers/staging/rtl8712/ieee80211.h
|
||||
+++ b/drivers/staging/rtl8712/ieee80211.h
|
||||
@@ -734,7 +734,7 @@ enum ieee80211_state {
|
||||
#define IEEE_G (1<<2)
|
||||
#define IEEE_MODE_MASK (IEEE_A|IEEE_B|IEEE_G)
|
||||
|
||||
-extern inline int ieee80211_is_empty_essid(const char *essid, int essid_len)
|
||||
+static inline int ieee80211_is_empty_essid(const char *essid, int essid_len)
|
||||
{
|
||||
/* Single white space is for Linksys APs */
|
||||
if (essid_len == 1 && essid[0] == ' ')
|
||||
@@ -748,7 +748,7 @@ extern inline int ieee80211_is_empty_essid(const char *essid, int essid_len)
|
||||
return 1;
|
||||
}
|
||||
|
||||
-extern inline int ieee80211_get_hdrlen(u16 fc)
|
||||
+static inline int ieee80211_get_hdrlen(u16 fc)
|
||||
{
|
||||
int hdrlen = 24;
|
||||
|
||||
--
|
||||
2.6.0.rc3
|
||||
|
@ -0,0 +1,50 @@
|
||||
From ef4fea130eeb70eff4f3a549fd3f6e9b11437550 Mon Sep 17 00:00:00 2001
|
||||
From: ZaneZam <cyxman@yahoo.com>
|
||||
Date: Thu, 26 Mar 2015 14:50:10 +0100
|
||||
Subject: [PATCH] arm: LLVMLinux: use static inline in ARM ftrace.h
|
||||
|
||||
With compilers which follow the C99 standard (like modern versions of gcc and
|
||||
clang), "extern inline" does the wrong thing (emits code for an externally
|
||||
linkable version of the inline function). In this case using static inline
|
||||
and removing the NULL version of return_address in return_address.c does
|
||||
the right thing.
|
||||
|
||||
Signed-off-by: Behan Webster <behanw@converseincode.com>
|
||||
Reviewed-by: Mark Charlebois <charlebm@gmail.com>
|
||||
|
||||
source: http://www.serverphorums.com/read.php?12,880351,880351#msg-880351
|
||||
---
|
||||
arch/arm/include/asm/ftrace.h | 2 +-
|
||||
arch/arm/kernel/return_address.c | 2 ++
|
||||
2 files changed, 3 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/arch/arm/include/asm/ftrace.h b/arch/arm/include/asm/ftrace.h
|
||||
index f89515a..2bb8cac 100644
|
||||
--- a/arch/arm/include/asm/ftrace.h
|
||||
+++ b/arch/arm/include/asm/ftrace.h
|
||||
@@ -45,7 +45,7 @@ void *return_address(unsigned int);
|
||||
|
||||
#else
|
||||
|
||||
-extern inline void *return_address(unsigned int level)
|
||||
+static inline void *return_address(unsigned int level)
|
||||
{
|
||||
return NULL;
|
||||
}
|
||||
diff --git a/arch/arm/kernel/return_address.c b/arch/arm/kernel/return_address.c
|
||||
index f1aef84..49477f0 100644
|
||||
--- a/arch/arm/kernel/return_address.c
|
||||
+++ b/arch/arm/kernel/return_address.c
|
||||
@@ -62,10 +62,12 @@ void *return_address(unsigned int level)
|
||||
/* #warning "TODO: return_address should use unwind tables" */
|
||||
#endif
|
||||
|
||||
+/*
|
||||
void *return_address(unsigned int level)
|
||||
{
|
||||
return NULL;
|
||||
}
|
||||
+*/
|
||||
|
||||
#endif /* if defined(CONFIG_FRAME_POINTER) && !defined(CONFIG_ARM_UNWIND) / else */
|
||||
|
@ -3,22 +3,21 @@ require linux.inc
|
||||
DESCRIPTION = "Linux kernel for Allwinner a10/a20 processors"
|
||||
|
||||
COMPATIBLE_MACHINE = "(sun4i|sun5i|sun7i)"
|
||||
RDEPENDS_${PN} += "sunxi-board-fex"
|
||||
|
||||
PV = "3.4.90"
|
||||
PV = "3.4.104"
|
||||
PR = "r1"
|
||||
# Last tested version by myself
|
||||
SRCREV_pn-${PN} = "e37d760b363888f3a65cd6455c99a75cac70a7b8"
|
||||
SRCREV_pn-${PN} = "d47d367036be38c5180632ec8a3ad169a4593a88"
|
||||
|
||||
MACHINE_KERNEL_PR_append = "a"
|
||||
|
||||
SRC_URI += "git://github.com/linux-sunxi/linux-sunxi.git;branch=sunxi-3.4;protocol=git \
|
||||
http://archlinuxarm.org/builder/src/0001-cgroup-add-xattr-support-sunxi.patch;name=cgroup-patch \
|
||||
file://0001-compiler-gcc-integrate-the-various-compiler-gcc-345-.patch \
|
||||
file://0002-use-static-inline-in-ARM-ftrace.patch \
|
||||
file://0001-gcc5-fixes.patch \
|
||||
file://defconfig \
|
||||
"
|
||||
|
||||
SRC_URI[cgroup-patch.md5sum] = "4aa5087e3396f3179b61ccd478e9e604"
|
||||
SRC_URI[cgroup-patch.sha256sum] = "f9f9cb55eb6f8abf322830afd7a5f4a090e539add75e0ed1f1016b5351a9b533"
|
||||
|
||||
S = "${WORKDIR}/git"
|
||||
|
||||
#fix QA issue "Files/directories were installed but not shipped: /usr/src/debug"
|
||||
@ -26,31 +25,31 @@ INHIBIT_PACKAGE_DEBUG_SPLIT = "1"
|
||||
|
||||
do_configure_prepend() {
|
||||
#fix arch QA issues ("Architecture did not match")
|
||||
rm ${S}/drivers/net/wireless/rtxx7x/tools/bin2h
|
||||
rm ${S}/modules/wifi/ar6302/AR6K_SDK_ISC.build_3.1_RC.329/host/lib/wac/wac
|
||||
rm ${S}/modules/wifi/ar6302/AR6K_SDK_ISC.build_3.1_RC.329/host/tools/pal_host_intf/pal_app
|
||||
rm ${S}/modules/wifi/nano-c047.12/obj/hic-proxy
|
||||
rm ${S}/modules/wifi/nano-c047.12/obj/x_mac_4.69.axf
|
||||
rm ${S}/modules/wifi/nano-c047.12/obj/x_mac_patch_4_65.axf
|
||||
rm ${S}/modules/wifi/nano-c047.12/obj/x_mac_4.66.axf
|
||||
rm ${S}/modules/wifi/nano-c047.12/obj/x_mac-v4.68.axf
|
||||
rm ${S}/modules/wifi/nano-c047.12/obj/x_mac.axf
|
||||
rm ${S}/modules/wifi/bcm40181/open-src/src/wl/exe/wl
|
||||
rm ${S}/modules/wifi/bcm40181/open-src/src/wl/exe/socket_noasd/x86/wl_server_socket
|
||||
rm ${S}/modules/wifi/bcm40181/open-src/src/wl/exe/wifi_noasd/x86/wl_server_serial
|
||||
rm ${S}/modules/wifi/bcm40181/open-src/src/wl/exe/wifi_noasd/x86/wl_server_wifi
|
||||
rm ${S}/modules/wifi/bcm40181/open-src/src/wl/exe/make/wl
|
||||
rm ${S}/modules/wifi/bcm40181/open-src/src/wl/exe/make/socket_noasd/x86/wl_server_socket
|
||||
rm ${S}/modules/wifi/bcm40181/open-src/src/wl/exe/make/wifi_noasd/x86/wl_server_serial
|
||||
rm ${S}/modules/wifi/bcm40181/open-src/src/wl/exe/make/wifi_noasd/x86/wl_server_wifi
|
||||
rm ${S}/modules/wifi/bcm40181/open-src/src/wl/exe/make/dongle_noasd/x86/wl_server_dongle
|
||||
rm ${S}/modules/wifi/bcm40181/open-src/src/wl/exe/dongle_noasd/x86/wl_server_dongle
|
||||
rm ${S}/modules/wifi/bcm40181/apps/tc_cli
|
||||
rm ${S}/modules/wifi/bcm40181/apps/wfa_ca
|
||||
rm ${S}/modules/wifi/bcm40181/apps/dhd
|
||||
rm ${S}/modules/wifi/bcm40181/apps/ca_cli
|
||||
rm -f ${S}/drivers/net/wireless/rtxx7x/tools/bin2h
|
||||
rm -f ${S}/modules/wifi/ar6302/AR6K_SDK_ISC.build_3.1_RC.329/host/lib/wac/wac
|
||||
rm -f ${S}/modules/wifi/ar6302/AR6K_SDK_ISC.build_3.1_RC.329/host/tools/pal_host_intf/pal_app
|
||||
rm -f ${S}/modules/wifi/nano-c047.12/obj/hic-proxy
|
||||
rm -f ${S}/modules/wifi/nano-c047.12/obj/x_mac_4.69.axf
|
||||
rm -f ${S}/modules/wifi/nano-c047.12/obj/x_mac_patch_4_65.axf
|
||||
rm -f ${S}/modules/wifi/nano-c047.12/obj/x_mac_4.66.axf
|
||||
rm -f ${S}/modules/wifi/nano-c047.12/obj/x_mac-v4.68.axf
|
||||
rm -f ${S}/modules/wifi/nano-c047.12/obj/x_mac.axf
|
||||
rm -f ${S}/modules/wifi/bcm40181/open-src/src/wl/exe/wl
|
||||
rm -f ${S}/modules/wifi/bcm40181/open-src/src/wl/exe/socket_noasd/x86/wl_server_socket
|
||||
rm -f ${S}/modules/wifi/bcm40181/open-src/src/wl/exe/wifi_noasd/x86/wl_server_serial
|
||||
rm -f ${S}/modules/wifi/bcm40181/open-src/src/wl/exe/wifi_noasd/x86/wl_server_wifi
|
||||
rm -f ${S}/modules/wifi/bcm40181/open-src/src/wl/exe/make/wl
|
||||
rm -f ${S}/modules/wifi/bcm40181/open-src/src/wl/exe/make/socket_noasd/x86/wl_server_socket
|
||||
rm -f ${S}/modules/wifi/bcm40181/open-src/src/wl/exe/make/wifi_noasd/x86/wl_server_serial
|
||||
rm -f ${S}/modules/wifi/bcm40181/open-src/src/wl/exe/make/wifi_noasd/x86/wl_server_wifi
|
||||
rm -f ${S}/modules/wifi/bcm40181/open-src/src/wl/exe/make/dongle_noasd/x86/wl_server_dongle
|
||||
rm -f ${S}/modules/wifi/bcm40181/open-src/src/wl/exe/dongle_noasd/x86/wl_server_dongle
|
||||
rm -f ${S}/modules/wifi/bcm40181/apps/tc_cli
|
||||
rm -f ${S}/modules/wifi/bcm40181/apps/wfa_ca
|
||||
rm -f ${S}/modules/wifi/bcm40181/apps/dhd
|
||||
rm -f ${S}/modules/wifi/bcm40181/apps/ca_cli
|
||||
|
||||
#fix ldflags QA issues ("No GNU_HASH in the elf binary")
|
||||
rm ${S}/modules/wifi/usi-bcm4329/v4.218.248.15/apps/epi_ttcp
|
||||
rm ${S}/modules/wifi/bcm40181/apps/epi_ttcp
|
||||
rm -f ${S}/modules/wifi/usi-bcm4329/v4.218.248.15/apps/epi_ttcp
|
||||
rm -f ${S}/modules/wifi/bcm40181/apps/epi_ttcp
|
||||
}
|
||||
|
@ -3,6 +3,7 @@ CONFIG_POSIX_MQUEUE=y
|
||||
CONFIG_FHANDLE=y
|
||||
CONFIG_NO_HZ=y
|
||||
CONFIG_HIGH_RES_TIMERS=y
|
||||
CONFIG_CGROUPS=y
|
||||
CONFIG_BSD_PROCESS_ACCT=y
|
||||
CONFIG_BSD_PROCESS_ACCT_V3=y
|
||||
CONFIG_TASKSTATS=y
|
||||
@ -490,6 +491,7 @@ CONFIG_INPUT_TOUCHSCREEN=y
|
||||
CONFIG_TOUCHSCREEN_SUN4I=y
|
||||
CONFIG_INPUT_MISC=y
|
||||
CONFIG_INPUT_AXP20X_PEK=y
|
||||
CONFIG_INPUT_EVDEV=y
|
||||
CONFIG_SERIAL_8250=y
|
||||
CONFIG_SERIAL_8250_CONSOLE=y
|
||||
CONFIG_SERIAL_8250_NR_UARTS=8
|
||||
@ -500,13 +502,16 @@ CONFIG_SERIAL_OF_PLATFORM=y
|
||||
CONFIG_I2C=y
|
||||
CONFIG_I2C_CHARDEV=y
|
||||
CONFIG_I2C_MV64XXX=y
|
||||
CONFIG_I2C_SUN6I_P2WI=y
|
||||
CONFIG_SPI=y
|
||||
CONFIG_SPI_SPIDEV=y
|
||||
CONFIG_SPI_SUN4I=y
|
||||
CONFIG_SPI_SUN6I=y
|
||||
CONFIG_GPIO_SYSFS=y
|
||||
CONFIG_POWER_SUPPLY=y
|
||||
CONFIG_POWER_RESET=y
|
||||
CONFIG_THERMAL=y
|
||||
CONFIG_THERMAL_OF=y
|
||||
CONFIG_CPU_THERMAL=y
|
||||
CONFIG_WATCHDOG=y
|
||||
CONFIG_SUNXI_WATCHDOG=y
|
||||
@ -683,6 +688,27 @@ CONFIG_USB_EHCI_HCD=y
|
||||
CONFIG_USB_EHCI_HCD_PLATFORM=y
|
||||
CONFIG_USB_OHCI_HCD=y
|
||||
CONFIG_USB_OHCI_HCD_PLATFORM=y
|
||||
CONFIG_USB_SERIAL=m
|
||||
CONFIG_USB_SERIAL_GENERIC=y
|
||||
CONFIG_USB_SERIAL_SIMPLE=m
|
||||
CONFIG_USB_SERIAL_CP210X=m
|
||||
CONFIG_USB_SERIAL_FTDI_SIO=m
|
||||
CONFIG_USB_SERIAL_KEYSPAN=m
|
||||
CONFIG_USB_SERIAL_KEYSPAN_MPR=y
|
||||
CONFIG_USB_SERIAL_KEYSPAN_USA28=y
|
||||
CONFIG_USB_SERIAL_KEYSPAN_USA28X=y
|
||||
CONFIG_USB_SERIAL_KEYSPAN_USA28XA=y
|
||||
CONFIG_USB_SERIAL_KEYSPAN_USA28XB=y
|
||||
CONFIG_USB_SERIAL_KEYSPAN_USA19=y
|
||||
CONFIG_USB_SERIAL_KEYSPAN_USA18X=y
|
||||
CONFIG_USB_SERIAL_KEYSPAN_USA19W=y
|
||||
CONFIG_USB_SERIAL_KEYSPAN_USA19QI=y
|
||||
CONFIG_USB_SERIAL_KEYSPAN_USA49W=y
|
||||
CONFIG_USB_SERIAL_KEYSPAN_USA49WLC=y
|
||||
CONFIG_USB_SERIAL_KLSI=m
|
||||
CONFIG_USB_SERIAL_MOS7720=m
|
||||
CONFIG_USB_SERIAL_MOS7840=m
|
||||
CONFIG_USB_SERIAL_PL2303=m
|
||||
CONFIG_MMC=y
|
||||
CONFIG_MMC_SUNXI=y
|
||||
CONFIG_LEDS_CLASS=y
|
||||
@ -716,13 +742,32 @@ CONFIG_RTC_CLASS=y
|
||||
# CONFIG_RTC_INTF_PROC is not set
|
||||
CONFIG_RTC_DRV_SUN6I=y
|
||||
CONFIG_RTC_DRV_SUNXI=y
|
||||
CONFIG_DMADEVICES=y
|
||||
CONFIG_DMA_SUN6I=y
|
||||
# CONFIG_IOMMU_SUPPORT is not set
|
||||
CONFIG_EXTCON=y
|
||||
CONFIG_PWM=y
|
||||
CONFIG_PWM_SUN4I=y
|
||||
CONFIG_PHY_SUN4I_USB=y
|
||||
CONFIG_PHY_SUN9I_USB=y
|
||||
CONFIG_EXT4_FS=y
|
||||
CONFIG_XFS_FS=m
|
||||
CONFIG_XFS_POSIX_ACL=y
|
||||
CONFIG_BTRFS_FS=m
|
||||
CONFIG_BTRFS_FS_POSIX_ACL=y
|
||||
CONFIG_FANOTIFY=y
|
||||
CONFIG_AUTOFS4_FS=m
|
||||
CONFIG_FUSE_FS=m
|
||||
CONFIG_OVERLAY_FS=m
|
||||
CONFIG_FSCACHE=m
|
||||
CONFIG_FSCACHE_STATS=y
|
||||
CONFIG_FSCACHE_HISTOGRAM=y
|
||||
CONFIG_CACHEFILES=m
|
||||
CONFIG_CACHEFILES_HISTOGRAM=y
|
||||
CONFIG_ISO9660_FS=m
|
||||
CONFIG_JOLIET=y
|
||||
CONFIG_ZISOFS=y
|
||||
CONFIG_UDF_FS=m
|
||||
CONFIG_VFAT_FS=y
|
||||
CONFIG_TMPFS=y
|
||||
CONFIG_NFS_FS=y
|
||||
@ -732,8 +777,10 @@ CONFIG_ROOT_NFS=y
|
||||
CONFIG_NLS_CODEPAGE_437=y
|
||||
CONFIG_NLS_ISO8859_1=y
|
||||
CONFIG_PRINTK_TIME=y
|
||||
CONFIG_CRYPTO_DEV_SUN4I_SS=y
|
||||
CONFIG_ARM_CRYPTO=y
|
||||
CONFIG_CRYPTO_SHA1_ARM_NEON=y
|
||||
CONFIG_CRYPTO_SHA256_ARM=y
|
||||
CONFIG_CRYPTO_SHA512_ARM_NEON=y
|
||||
CONFIG_CRYPTO_AES_ARM_BS=y
|
||||
CONFIG_USB_STORAGE=y
|
||||
|
@ -16,9 +16,9 @@ KERNEL_EXTRA_ARGS += "LOADADDR=${UBOOT_ENTRYPOINT}"
|
||||
|
||||
S = "${WORKDIR}/linux-${PV}"
|
||||
|
||||
SRC_URI[md5sum] = "96c2c77b1c54ba01cfd8fc2d13fbf828"
|
||||
SRC_URI[sha256sum] = "96dd2c30984408a8a2211463618c3564514239f1e4335f6bc461c4b9a9bae30b"
|
||||
SRC_URI[md5sum] = "2944984c89c272115649c4a08b43f8d0"
|
||||
SRC_URI[sha256sum] = "c4bc5ed6e73ed7393cc1b3714b822664224ab866db114eed663de1315718a4e1"
|
||||
|
||||
SRC_URI += "https://www.kernel.org/pub/linux/kernel/v4.x/linux-${PV}.tar.xz \
|
||||
SRC_URI = "https://www.kernel.org/pub/linux/kernel/v4.x/linux-${PV}.tar.xz \
|
||||
file://defconfig \
|
||||
"
|
25
recipes-kernel/linux/linux_4.9.20.bb
Normal file
25
recipes-kernel/linux/linux_4.9.20.bb
Normal file
@ -0,0 +1,25 @@
|
||||
SECTION = "kernel"
|
||||
DESCRIPTION = "Mainline Linux kernel"
|
||||
LICENSE = "GPLv2"
|
||||
LIC_FILES_CHKSUM = "file://COPYING;md5=d7810fab7487fb0aad327b76f1be7cd7"
|
||||
COMPATIBLE_MACHINE = "(sun4i|sun5i|sun7i)"
|
||||
|
||||
inherit kernel
|
||||
|
||||
require recipes-kernel/linux/linux-dtb.inc
|
||||
require linux.inc
|
||||
|
||||
# Pull in the devicetree files into the rootfs
|
||||
RDEPENDS_kernel-base += "kernel-devicetree"
|
||||
|
||||
KERNEL_EXTRA_ARGS += "LOADADDR=${UBOOT_ENTRYPOINT}"
|
||||
|
||||
S = "${WORKDIR}/linux-${PV}"
|
||||
|
||||
SRC_URI[md5sum] = "f824815a579334f76b85b2c79893ceb4"
|
||||
SRC_URI[sha256sum] = "48660806dd32fb8dcbcf5932291bf6cc7d29240070372230871e0f56fea81341"
|
||||
|
||||
SRC_URI = "https://www.kernel.org/pub/linux/kernel/v4.x/linux-${PV}.tar.xz \
|
||||
file://defconfig \
|
||||
file://0001-ARM-dts-sunxi-Change-node-name-for-pwrseq-pin-on-Oli.patch \
|
||||
"
|
@ -2,7 +2,7 @@ SECTION = "kernel"
|
||||
DESCRIPTION = "Mainline Linux kernel"
|
||||
LICENSE = "GPLv2"
|
||||
LIC_FILES_CHKSUM = "file://COPYING;md5=d7810fab7487fb0aad327b76f1be7cd7"
|
||||
COMPATIBLE_MACHINE = "(sun4i|sun5i|sun7i)"
|
||||
COMPATIBLE_MACHINE = "(sun4i|sun5i|sun7i|sun8i)"
|
||||
|
||||
inherit kernel
|
||||
|
||||
@ -18,11 +18,11 @@ DEFAULT_PREFERENCE = "-1"
|
||||
|
||||
KERNEL_EXTRA_ARGS += "LOADADDR=${UBOOT_ENTRYPOINT}"
|
||||
|
||||
# 4.2 rc4
|
||||
PV = "4.1+4.2rc4.git${SRCPV}"
|
||||
SRCREV_pn-${PN} = "cbfe8fa6cd672011c755c3cd85c9ffd4e2d10a6f"
|
||||
# 4.11.0-rc5
|
||||
PV = "4.11.0+git${SRCPV}"
|
||||
SRCREV_pn-${PN} = "81d4bab4ce87228c37ab14a885438544af5c9ce6"
|
||||
|
||||
SRC_URI += "git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git;protocol=git;branch=master \
|
||||
SRC_URI = "git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git;protocol=git;branch=master \
|
||||
file://defconfig \
|
||||
"
|
||||
S = "${WORKDIR}/git"
|
||||
|
@ -1,16 +1,14 @@
|
||||
DESCRIPTION = "Tools to help hacking Allwinner A10 and A20"
|
||||
|
||||
LICENSE = "GPLv2+"
|
||||
LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
|
||||
LIC_FILES_CHKSUM = "file://LICENSE.md;md5=97bd67b5d0309e452b637f76e1c9a23c"
|
||||
|
||||
PV = "1.0+git${SRCPV}"
|
||||
PKGV = "1.0+git${GITPKGV}"
|
||||
PR = "r3"
|
||||
SRCREV = "ed6f7969d80b91048b0ed95ccb61cc98f46fead7"
|
||||
PR = "r0"
|
||||
|
||||
DEPENDS += "libusb"
|
||||
|
||||
SRC_URI = "git://github.com/linux-sunxi/sunxi-tools;protocol=git"
|
||||
SRCREV = "9a3d62aa0c820b3dd42ba3409b2043f4143683cd"
|
||||
|
||||
S = "${WORKDIR}/git"
|
||||
|
||||
@ -23,13 +21,12 @@ CFLAGS_class-native = "-std=c99 -D_POSIX_C_SOURCE=200112L -I./include"
|
||||
|
||||
do_install() {
|
||||
install -d ${D}/${bindir}
|
||||
install -m 755 ${S}/bootinfo ${D}/${bindir}
|
||||
install -m 755 ${S}/sunxi-bootinfo ${D}/${bindir}
|
||||
install -m 755 ${S}/bin2fex ${D}/${bindir}
|
||||
install -m 755 ${S}/fel ${D}/${bindir}
|
||||
install -m 755 ${S}/sunxi-fel ${D}/${bindir}
|
||||
install -m 755 ${S}/fel-gpio ${D}/${bindir}
|
||||
install -m 755 ${S}/fex2bin ${D}/${bindir}
|
||||
install -m 755 ${S}/fexc ${D}/${bindir}
|
||||
install -m 755 ${S}/nand-part ${D}/${bindir}
|
||||
install -m 755 ${S}/pio ${D}/${bindir}
|
||||
install -m 755 ${S}/usb-boot ${D}/${bindir}
|
||||
install -m 755 ${S}/sunxi-fexc ${D}/${bindir}
|
||||
install -m 755 ${S}/sunxi-nand-part ${D}/${bindir}
|
||||
install -m 755 ${S}/sunxi-pio ${D}/${bindir}
|
||||
}
|
||||
|
Reference in New Issue
Block a user