101 Commits
fido ... morty

Author SHA1 Message Date
318c872680 sdcard_image-sunxi: fix dependency loop
As suggested by Andrei Gherzan (see #178):

"The current implementation inherits sdcard_image-sunxi.bbclass
unconditionally which in turn, sets two depends on do_rootfs
unconditionally again.

This means that if I want to build an initramfs image in the
kernel image I will get a dependency loop."

Signed-off-by: Enrico Butera <ebutera@users.sourceforge.net>
(cherry picked from commit a84d6a40c1)
2017-04-27 10:19:42 +02:00
3fd8a3fcc7 Merge pull request #179 from koenkooi/uboot-gcc6-morty
u-boot-sunxi: gcc6 fix
2017-04-25 23:41:52 +02:00
41e1179afb u-boot-sunxi: gcc6 fix
Fix the following build error when compiling u-boot-sunxi with gcc6:

	linux/compiler-gcc6.h: No such file or directory

Signed-off-by: Trevor Woerner <twoerner@gmail.com>
2017-04-25 07:49:43 +02:00
12e77f9741 Merge pull request #166 from xpete/disabletslib
Disable tslib bbappend

Its usefulness is unknown and it's the only recipe that make us depend on meta-oe
(cherry picked from commit aaf413d6a7)
2017-04-11 21:42:34 +02:00
941171c912 sdcard_image-sunxi: build fix
Signed-off-by: Enrico Butera <ebutera@users.sourceforge.net>
2017-04-06 23:09:47 +02:00
7fad64eefd Merge pull request #170 from xpete/sunxi-tools_1.4_update
fixes sunxi-tools build and updates to lastest version (1.4)
2017-04-02 23:13:41 +02:00
7bfffa0671 PR reset to 0 2017-04-01 16:02:53 +01:00
54164a628a fixes sunxi-tools build and updates to lastest version (1.4) 2017-03-31 18:16:36 +01:00
1848d697ad fixed recipe name, updated version and A20-SOM support added
(cherry picked from commit 88b2d34302)
2017-02-07 13:26:43 +01:00
d94f784d4d added a20som support to pyA20
(cherry picked from commit d1593cf467)
2017-02-07 13:26:26 +01:00
7f791bd576 Fix Olimex A20 SOM configuration
* Added missing kernel device tree definition.
* Updated U-Boot definiton.

(cherry picked from commit be22a388db)
2017-01-18 21:39:50 +01:00
7f88e6c78e Merge pull request #159 from jamespettigrew/master
Add support for FriendlyARM NanoPi Neo board
2017-01-12 18:30:37 +01:00
0a77e55428 Add support for FriendlyARM NanoPi Neo board
Signed-off-by: James Pettigrew <james@innovum.com.au>
2017-01-12 11:24:59 +11:00
e372befda7 Bump Linux kernel version to 4.4.40
Signed-off-by: Enrico Butera <ebutera@users.sourceforge.net>
2017-01-08 20:59:29 +01:00
10f37db26c Merge pull request #157 from geomatsi/orange-pi-one-support
Add support for Orange Pi One board
2016-12-16 17:32:14 +01:00
2b1cafc104 pcduino: bump preferred u-boot and kernel versions
Bump preferred u-boot and kernel versions:
- kernel 4.9
- u-boot 2016.11

Signed-off-by: Sergey Matyukevich <geomatsi@gmail.com>
2016-12-15 23:10:24 +03:00
fe66ceacb5 sunxi-mail: fix bitbake QA issues for sunxi-mali
Fix QA issues for sunxi-mali-test package:
- add proper RDEPENDS
- don't check closed binary for sections, relocations, etc

Signed-off-by: Sergey Matyukevich <geomatsi@gmail.com>
2016-12-14 22:55:47 +03:00
75fe4617ce Add support for Orange Pi One board
Add machine description for Orange Pi One board.

Signed-off-by: Sergey Matyukevich <geomatsi@gmail.com>
2016-12-14 22:53:24 +03:00
3ef9217ad7 Change PV for kernel git version
Bump kernel git version to enable support for sun8i boards.

Signed-off-by: Sergey Matyukevich <geomatsi@gmail.com>
2016-12-14 22:52:24 +03:00
0dcdc4edf9 sun8i: add new SoC family
Add config for sun8i SoC family and specify preferred BSP components.

Signed-off-by: Sergey Matyukevich <geomatsi@gmail.com>
2016-12-14 22:49:57 +03:00
0b21d3bd2f Merge pull request #156 from net147/getvar-fixes
sunxi-mali: Use d.getVar
2016-12-05 11:31:24 +01:00
3bd237ac1b sunxi-mali: Use d.getVar
The bb.data API is deprecated, use d.getVar instead.

Signed-off-by: Jonathan Liu <net147@gmail.com>
2016-12-03 22:34:28 +11:00
1c38e7fa72 Merge pull request #154 from net147/doc-fixes
README.md: Clean up build instructions
2016-11-28 13:12:45 +01:00
49f7a659b4 Merge pull request #153 from net147/u-boot-2016.11
u-boot: update to 2016.11
2016-11-28 13:12:14 +01:00
72d35fc0a6 README.md: Clean up build instructions
The linux-sunxi can now be built with GCC 6 so the GCCVERSION variable
doesn't need to be set anymore.

Signed-off-by: Jonathan Liu <net147@gmail.com>
2016-11-26 12:38:44 +11:00
11e16d173f u-boot: update to 2016.11
Signed-off-by: Jonathan Liu <net147@gmail.com>
2016-11-17 12:40:19 +11:00
f246bc943a Merge pull request #152 from gizero/fix-u-boot-build
u-boot_2016.09.01: fix build with new upstream u-boot.inc
2016-11-03 21:17:22 +01:00
6dfe134952 u-boot_2016.09.01: fix build with new upstream u-boot.inc
Commit b36056af20e981433f143556d511dec5644930fc in oe-core master
(matching commit in poky master is a40f5d34065129ab19a3c981cbb38f854e9ae0ec)
moved some bits out of u-boot.inc (from oe-core) into u-boot-common_${PV}.inc. This
breaks many u-boot recipes in the wild, including u-boot_2016.09.01 from this layer
since the variable S itself results undefined.

Explicitly setting S fixes the issue.
2016-11-03 18:07:44 +01:00
4ab93061c2 Merge pull request #150 from net147/u-boot-2016.09
u-boot: update to 2016.09.01
2016-09-26 09:45:28 +02:00
3dc1fc4103 u-boot: update to 2016.09.01
Signed-off-by: Jonathan Liu <net147@gmail.com>
2016-09-26 17:29:51 +10:00
1a840570a9 Merge pull request #149 from net147/gcc6-fixes
linux-sunxi: fix compiling with GCC 6
2016-09-26 09:23:58 +02:00
0c6af07690 linux-sunxi: fix compiling with GCC 6
Fixes the following compile error with GCC 6:
[...]/kernel-source/include/linux/compiler-gcc.h:103:30: fatal error: linux/compiler-gcc6.h: No such file or directory

Signed-off-by: Jonathan Liu <net147@gmail.com>
2016-09-25 21:53:32 +10:00
54321d7854 Merge pull request #147 from twoerner/contrib/twoerner/fixes-01
tslib: remove un-referenced patch
2016-09-17 13:58:08 +02:00
b87043d683 tslib: remove un-referenced patch
This patch is no longer referenced in any recipe, therefore remove it.

Signed-off-by: Trevor Woerner <twoerner@gmail.com>
2016-09-15 08:53:48 -04:00
bb8656b63e Merge pull request #146 from net147/image-class-fixes
sdcard_image-sunxi.bbclass: remove redundant IMAGEDATESTAMP
2016-09-13 08:01:33 +02:00
93ec9da1e4 sdcard_image-sunxi.bbclass: remove redundant IMAGEDATESTAMP
The IMAGE_NAME variable already contains the date and time so it is
redundant to also include the date again with IMAGEDATESTAMP
when writing to image-version-info in the boot partition.

Signed-off-by: Jonathan Liu <net147@gmail.com>
2016-09-13 12:04:05 +10:00
1c06816a26 Merge pull request #145 from net147/image-class-fixes
Image class fixes
2016-09-12 10:50:47 +02:00
f6417032a0 sdcard_image-sunxi.bbclass: add vardepsexclude to fix taskhash mismatch
IMAGEDATESTAMP may change while bitbake is running which can result in
a taskhash mismatch error for do_image_sunxi_sdimg.

Signed-off-by: Jonathan Liu <net147@gmail.com>
2016-09-11 22:18:11 +10:00
26c32a3228 sdcard_image-sunxi.bbclass: fix copying device tree files not working
The image class assumes the working directory is the directory
containg the kernel and device tree files but this isn't always the
case.

Signed-off-by: Jonathan Liu <net147@gmail.com>
2016-09-09 22:43:21 +10:00
0da0fd6531 sdcard_image-sunxi.bbclass: change deployment dir to IMGDEPLOYIDR
This fixes building images after OE-Core revision
6d969bacc718e21a5246d4da9bf9639dcae29b02.

Signed-off-by: Jonathan Liu <net147@gmail.com>
2016-09-09 22:23:12 +10:00
5564b58b56 Merge pull request #142 from net147/u-boot-out-of-tree
u-boot: fix out-of-tree builds
2016-09-07 08:21:47 +02:00
53712dd3bb Merge pull request #143 from koenkooi/mali-float
sunxi-mali: error out earlier on non-hf builds
2016-09-07 08:21:07 +02:00
63410209ad sunxi-mali: error out earlier on non-hf builds
This will now error out during parsing instead of during do_compile as
well as having a better error message.

Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
2016-09-06 11:53:08 +02:00
a3b6faa731 u-boot: fix out-of-tree builds
Signed-off-by: Jonathan Liu <net147@gmail.com>
2016-08-23 21:48:08 +10:00
b00caff43d Merge pull request #140 from jlucius/master
Update Kernel and U-Boot versions
2016-06-25 16:16:17 +02:00
11dee5bc94 Change PV for kernel git version
Signed-off-by: Jens Lucius <info@jenslucius.com>
2016-06-25 14:02:53 +02:00
f74be86e4a Update Mainline, Git Kernel
Update Mainline kernel from 4.4.6 to 4.4.13
Update Git kernel from 4.5.0 to 4.7 rc4

Signed-off-by: Jens Lucius <info@jenslucius.com>
2016-06-21 13:25:53 +02:00
7c1e4b303b Update U-Boot to 2016.05
Update to 2016.05 from 2016.03.

Signed-off-by: Jens Lucius <info@jenslucius.com>
2016-06-21 13:17:58 +02:00
9e15c68634 Merge pull request #5 from linux-sunxi/master
Merge sunxi-master
2016-06-12 11:52:23 +02:00
69f56d3f94 Merge pull request #136 from twoerner/master
sunxi-mali: build fixes
2016-06-05 09:59:02 +02:00
9b77af849d sunxi-mali_git: base_contains() -> bb.utils.contains()
base_contains() is deprecated in favour of bb.utils.contains().

Signed-off-by: Trevor Woerner <twoerner@gmail.com>
2016-06-04 18:00:15 -04:00
3830f90aaa sunxi-mali_git: fix make args
Previously ${EXTRA_OECONF} had been added to the 'make' invocations, but this
doesn't work if, say, EXTRA_OECONF is set to '--disable-shared'. What was
probably meant was to add ${EXTRA_OEMAKE}.

Signed-off-by: Trevor Woerner <twoerner@gmail.com>
2016-06-04 17:58:10 -04:00
35d98632f3 Merge pull request #135 from geomatsi/add-pcduino-support
Add support for pcduino devices
2016-05-20 13:13:49 +02:00
941e978370 Add support for pcduino devices
Add support for LinkSprite pcDuino1 device and its flavors
including pcduino-lite and pcduino-lite-wifi:

- add pcduino machine description
- enable CONFIG_SPI_SPIDEV in upstream kernel defconfig to provide simple userspace access
  to SPI devices on Arduino shields

Signed-off-by: Sergey Matyukevich <geomatsi@gmail.com>
2016-05-18 22:17:42 +03:00
51fe0eecc6 Merge pull request #132 from jlucius/master
Bump kernel and U-Boot
2016-03-24 10:17:22 +01:00
8c13f0de1b Bump Kernel versions
Stable kernel to 4.4.6
Git kernel to 4.5

Signed-off-by: Jens Lucius <info@jenslucius.com>
2016-03-20 19:17:19 +01:00
06828aab99 Remove old U-Boot 2016-03-20 19:16:33 +01:00
5d98843b7d Bump U-Boot to 2016.03 2016-03-20 19:15:03 +01:00
eb616d74b2 Add CONFIG_INPUT_EVDEV to kernel config
Signed-off-by: Jens Lucius info@jenslucius.com
2016-03-01 15:02:22 +01:00
ae9ea2876a fix u-boot build break with current master
The current yocto master adds a patch for the beaglebone to the u-boot.inc, which breaks the build.
Explicitly set SRC_URI to prevent that.

Signed-off-by: Jens Lucius info@jenslucius.com
2016-03-01 14:51:37 +01:00
a5a6479522 set default preference to mainline kernel
Signed-off-by: Jens Lucius info@jenslucius.com
2016-03-01 14:42:19 +01:00
50aaadc70d Bump kernel and U-Boot
Bump mainline kernel to 4.4.3 (from 4.1.15)
Bump git kernel to 4.5 rc6 (from 4.4 rc5)
Bump U-Boot to 2016.01 (from 2015.10)

Signed-off-by: Jens Lucius info@jenslucius.com
2016-02-29 21:15:28 +01:00
3eea4723ba Merge pull request #4 from linux-sunxi/master
Merge sunxi-master
2016-02-29 20:54:00 +01:00
849a2266d5 olinuxino-a20lime2: fix UBOOT_MACHINE
Signed-off-by: Enrico Butera <ebutera@users.sourceforge.net>
2016-02-13 20:01:25 +01:00
e51d5cfdee Merge pull request #128 from jlucius/master
Bump kernel versions
2015-12-16 14:48:31 +01:00
d2ccb1d993 Bump kernel versions
Bump stable kernel to 4.1.15
Bump git kernel to 4.4rc5

Signed-off-by: Jens Lucius info@jenslucius.com
2015-12-16 06:23:35 +01:00
e238cc158a Merge pull request #127 from jlucius/master
Remove image dependency on fex for mainline
2015-12-08 21:38:12 +01:00
07c07fcd78 use RDEPENDS instead of DEPENDS for sunxi-kernel
Signed-off-by: Jens Lucius info@jenslucius.com
2015-11-21 18:11:46 +01:00
b05f2dbb8b Remove image dependency on fex for mainline
Remove image dependency on building fex files which are not needed
any more for mainline kernel (replaced by devicetree).
Add dependency for fex to linux-sunxi kernel.
Also update to latest sunxi-linux revision.

Signed-off-by: Jens Lucius <info@jenslucius.com>
2015-11-19 16:58:24 +01:00
b9acc14280 Merge pull request #124 from Noxenious/master
Update kernel and u-boot
2015-10-24 23:43:11 +02:00
b5e93023fb update u-boot, kernel
- Update U-Boot from 2015.07 to 2015.10
- Update mainline kernel from 4.1.7 to 4.1.10
- Update git kernel from 4.3rc2 to 4.3rc6

Signed-off-by: Jens Lucius <info@jenslucius.com>
2015-10-23 09:48:58 +02:00
4f75b81ab2 Merge pull request #3 from linux-sunxi/master
Update from Master
2015-10-22 16:11:07 +02:00
14da837096 Merge pull request #121 from twoerner/contrib/twoerner/patches-v2
linux-sunxi_3.4: bump kernel version
2015-09-26 11:04:14 +02:00
b4357af03b sunxi-mali test
The sunxi-mali repository includes a test application, enable support for
building and generating a new package (sunxi-mali-test) so it can be included
in an image at the user's discretion.

Signed-off-by: Trevor Woerner <twoerner@gmail.com>
2015-09-25 22:46:33 -04:00
888ddfd531 more gcc5 fixes
gcc5 is pickier about inline code in header files.

Signed-off-by: Trevor Woerner <twoerner@gmail.com>
2015-09-25 22:46:33 -04:00
72ea1fe7df linux-sunxi_3.4: bump kernel version
Update to the latest linux-sunxi kernel on the sunxi-3.4 branch.

Signed-off-by: Trevor Woerner <twoerner@gmail.com>
2015-09-25 22:46:33 -04:00
54d3993da4 Merge pull request #123 from twoerner/contrib/twoerner/maliopengl
sunxi-mali: remove opengl requirement
2015-09-26 01:46:39 +02:00
2f8da55176 sunxi-mali: remove opengl requirement
The mali driver supports OpenGL ES and doesn't require OpenGL in any way. It
is completely feasible to install mali and run OpenGL ES-only apps against it
without any need for OpenGL whatsoever.

Signed-off-by: Trevor Woerner <twoerner@gmail.com>
2015-09-25 18:10:54 -04:00
fe162b176d Merge pull request #122 from twoerner/contrib/twoerner/turbodep
xf86-video-fbturbo: add DEPENDS
2015-09-25 23:58:20 +02:00
b660f3a9dc xf86-video-fbturbo: add DEPENDS
Signed-off-by: Trevor Woerner <twoerner@gmail.com>
2015-09-25 17:50:04 -04:00
f6b855d948 Merge pull request #119 from twoerner/master
linux-sunxi_3.4.bb: allow rm to fail
2015-09-23 23:43:22 +02:00
43a6a5ecc8 linux-sunxi_3.4.bb: allow rm to fail
When building a second time, allow the 'rm' command to fail silently since
these files may have been removed from a failed previous build.

Signed-off-by: Trevor Woerner <twoerner@gmail.com>
2015-09-23 14:15:48 -04:00
17645719ad Merge pull request #118 from twoerner/master
linux-sunxi_3.4.bb: add line continuation
2015-09-23 17:50:29 +02:00
08c5a4bfb8 linux-sunxi_3.4.bb: add line continuation
ERROR: ParseError at meta-sunxi/recipes-kernel/linux/linux-sunxi_3.4.bb:17:
       unparsed line: SRC_URI

Signed-off-by: Trevor Woerner <twoerner@gmail.com>
2015-09-23 11:24:05 -04:00
1cdd083d2b Merge pull request #117 from Noxenious/master
linux-sunxi: add patches for gcc5
2015-09-23 13:24:14 +02:00
062c1477cf linux-sunxi: add patches for gcc5
The linux-sunxi 3.4 kernel could not be compiled with gcc5 (which
is standard in master now). Add two patches to make it compile again.

- Add missing compiler-gcc5.h
- Fix "multiple definition of `return_address'" errors

Open issue: All realtek wifi drivers fail to compile. Because of this
keep info to switch back to gcc4 in readme.

Signed-off-by: Jens Lucius <info@jenslucius.com>
2015-09-23 12:06:26 +02:00
7372a11da5 Merge pull request #116 from Noxenious/master
sunxi-mali: fix build errors with current master
2015-09-23 10:04:11 +02:00
318e9aa826 sunxi-mali: fix build errors with current master
When trying to build sunxi-mali with current master there is a strip
error introduced in a patch trying to strip the rootfs. Disable striping.
Also fix an error where external recipes would not find the libaries.

Signed-off-by: Jens Lucius <info@jenslucius.com>
2015-09-23 09:00:24 +02:00
50b4227876 Merge pull request #114 from Noxenious/master
sunxi-mali fixes
2015-09-22 20:35:06 +02:00
0a2034bb3c sunxi-mali: install .pc files, add patches
Add installation of .pc and header files. Add compile patches to fix errors.
Original fix by raoulh, already included in meta-sunxi dora branch by naguirre.

Ported to master branch and no not switch away from sunxi-mali git repo, instead just
add the needed patches on top of it.

Signed-off-by: Jens Lucius <info@jenslucius.com>
2015-09-22 17:02:09 +02:00
8f1c8f67cf fbturbo: increase version, depend libump
- increase version number to correct version (0.5.1)
- depend on libump

Signed-off-by: Jens Lucius <info@jenslucius.com>
2015-09-22 16:58:44 +02:00
9d864e2510 Merge pull request #112 from Noxenious/master
Update kernel, sunxi-board-fex, sunxi-tools, fbturbo, switch from ext3 to ext4
2015-09-22 12:49:06 +02:00
eac21d7734 Merge pull request #113 from twoerner/master
README.md: improve instructions for sunxi versions
2015-09-22 08:16:14 +02:00
d32866858f README.md: improve instructions for sunxi versions
If the user wants to build the sunxi version of the kernel they can specify
the PREFERRED_PROVIDER block in their conf/local.conf (i.e. they don't need to
edit the layer explicitly).

Also, now that gcc-5.2 is the default on master, inform the user how they can
continue to build the sunxi version (3.4%) version of the kernel by forcing
the compiler to version 4.9.

Signed-off-by: Trevor Woerner <twoerner@gmail.com>
2015-09-21 22:04:36 -04:00
82672a440b adjust git kernel version 2015-09-21 16:59:07 +02:00
0693369edc update fbturbo to latest version
Signed-off-by: Jens Lucius <info@jenslucius.com>
2015-09-21 15:55:45 +02:00
b66da9c3bb update sunxi-tools
The complete fel boot has been reworked, making it possible to boot
mainline u-boot via fel mode, also supports Allwinner H3, A80 and A88.

Signed-off-by: Jens Lucius <info@jenslucius.com>
2015-09-21 15:54:00 +02:00
4e261ffb96 update kernel versions
- Update kernel from 4.1.3 to 4.1.7
- Update git kernel from 4.2rc4 to 4.3rc2
- Sync defconfig with latest version

Signed-off-by: Jens Lucius <info@jenslucius.com>
2015-09-21 15:51:59 +02:00
5127517a14 update to latest sunxi-board-fex
Signed-off-by: Jens Lucius <info@jenslucius.com>
2015-09-21 14:34:35 +02:00
784e893ac5 change filesystem from ext3 to ext4
ext3 filesystem is getting deprecated in favor of ext4 and openembedded
will default to ext4 in the next release, so switch to ext4 as well.

Signed-off-by: Jens Lucius <info@jenslucius.com>
2015-09-21 14:32:41 +02:00
92b8be8139 Merge pull request #2 from linux-sunxi/master
Update from Master
2015-09-16 11:15:45 +02:00
32 changed files with 1406 additions and 179 deletions

View File

@ -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
===========

View File

@ -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

View 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"

View 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.9.0+git%"
PREFERRED_VERSION_u-boot = "v2016.11%"
KERNEL_DEVICETREE = "sun8i-h3-nanopi-neo.dtb"
UBOOT_MACHINE = "nanopi_neo_defconfig"
DEFAULTTUNE = "cortexa7hf-neon-vfpv4"

View File

@ -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"

View File

@ -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"

View 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.9.0+git%"
PREFERRED_VERSION_u-boot = "v2016.11%"
KERNEL_DEVICETREE = "sun8i-h3-orangepi-one.dtb"
UBOOT_MACHINE = "orangepi_one_defconfig"
DEFAULTTUNE = "cortexa7hf-neon-vfpv4"

12
conf/machine/pcduino.conf Normal file
View 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.9.0+git%"
PREFERRED_VERSION_u-boot = "v2016.11%"
KERNEL_DEVICETREE = "sun4i-a10-pcduino.dtb"
UBOOT_MACHINE = "Linksprite_pcDuino_defconfig"
SUNXI_FEX_FILE = "sys_config/a10/pcduino.fex"

View File

@ -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"

View File

@ -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"

View 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

View 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 */

View File

@ -19,19 +19,23 @@ 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"
SRCREV = "33711bdd4a4dce942fb5ae85a68899a8357bdd94"
SRCREV = "29e0cfb4f77f7aa369136302cee14a91e22dca71"
PV = "v2015.07${SRCPV}"
PV = "v2016.11+git${SRCPV}"
PE = "1"
PE = "2"
S = "${WORKDIR}/git"
SPL_BINARY="u-boot-sunxi-with-spl.bin"
@ -39,5 +43,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}
}

View 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

View File

@ -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:

View File

@ -2,11 +2,11 @@ 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 \
file://setup.py.patch \
@ -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"

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 = "http://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

@ -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

View File

@ -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;

View File

@ -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

View File

@ -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"

View File

@ -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

View File

@ -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"

View File

@ -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

View 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

View File

@ -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 */

View File

@ -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
}

View File

@ -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,7 +502,9 @@ 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
@ -716,7 +720,12 @@ 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
@ -732,6 +741,7 @@ 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

View File

@ -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 \
"

View File

@ -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.9.0
PV = "4.9.0+git${SRCPV}"
SRCREV_pn-${PN} = "69973b830859bc6529a7a0468ba0d80ee5117826"
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"

View File

@ -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}
}