Full Version: Kernel for A64 git
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Pages: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
All problem just normal crappiness mostly.
I pushed a new Kernel minor build bringing some additional file system support and fixing hw-supported ahash registration which was broken. See first post of this thread for details.

Get 3.10.101-1-pine64-longsleep-41 from

Update like this (as root, not sudo!) on any of my images:
bash <(curl -s
bash <(curl -s
Hey, /u/longsleep - with kernel 4.6 now official, are you going to be working on porting that back down, or do you think it'll 'just work'???


maybe i should give it a try while waiting for a response...
I will not port anything down whatever you mean by that. Its quite the opposite direction - just that Kernel 4.6 has basic A64 SoC support is of little consequence for the Pine64 right now. See my response at
Ahh.. i got too excited when I saw the A64 SoC support.

I wish i had the C skills and kernel knowledge to help out. I'm much better on the system management/scripting side of things.
I pushed a new Kernel minor build backporting apparmor 3 to get full support for secure containers. This means the XFS module is no longer included as it is incompatible. See first post of this thread for the complete list.

Get 3.10.101-2-pine64-longsleep-48 from

Update like this (as root, not sudo!) on any of my images:
bash <(curl -s
bash <(curl -s
I pushed a new Kernel minor, backporting the last missing bit to support unprivileged secure containers. This means Pine64 now has full support for the LXD container hypervisor (see for details).

Get 3.10.101-3-pine64-longsleep-50 from

Update like this (as root, not sudo!) on any of my images:
bash <(curl -s
bash <(curl -s
I just pushed a new awesom Kernel release together with an update to the update scripts. Starting with 3.10.101-4-pine64-longsleep-51 the Kernel release supports out-of-tree building of modules and DKMS. For example this makes it possible to install ZFS on Ubuntu and the Kernel modules will compile automatically on installation and on every future Kernel update.

Get 3.10.101-4-pine64-longsleep-51 from

Update like this (as root, not sudo!) on any of my images:
bash <(curl -s
bash <(curl -s
Great work, longsleep!

I guess this means that the script I wrote to do a full-from-source compile won't be needed anymore, now that out-of-tree modules work.

change is good. :-)
(02-14-2016, 03:00 AM)longsleep Wrote: [ -> ]To easily build the Kernel as provided in the BSP i have added it to Git including patches to make it actually compile and work suitably:

Use it together with my build tools at to create working and bootable Linux images from source.

The Kernel and U-Boot from the BSP uses the device tree from and a suitable Kernel configuration is at

Start with reading and do not forget about U-Boot

I publish compiled Linux Kernel builds for image builders from that tree. This gives you Kernel, initrd, dtb and modules which can be easily combined with any rootfs.

Download BSP Linux Kernel tarball

Release history:

**3.10.65-2-pine64-longsleep-39 (20160305)**
- Initial public release

**3.10.65-2-pine64-longsleep-39-1 (20160306)**
- Updated tarball to use new U-Boot file structure

**3.10.65-2-pine64-longsleep-39-2 (20160311)**
- Updated device tree for better thermal behavior
- uEnv.txt is now in tarball
- Kernel firmware is now included
- Kernel headers are now included

**3.10.65-2-pine64-longsleep-43 (20160311)**
- Enabled media platform devices (video)
- Enabled USB UVC and CPiA2 camera driver
- Enabled video engine (cedar_ve)
- Enabled various rc drivers

**3.10.65-3-pine64-longsleep-2 (20160319)**
- Tagged as 3.10.65-3-pine64
- Added device tree for Pine64 512MB/100M NIC model
- Enabled support for USB audio
- Critical shut down is now at 108°C (was 100°C)
- Disabled Kernel mode realtime group scheduling

**3.10.65-4-pine64-longsleep-16 (20160403)**
- Tagged as 3.10.65-4-pine64
- Fixed Ethernet Kernel crash when booted with more than 1GB RAM

**3.10.65-5-pine64-longsleep-19 (20160415)**
- Tagged as 3.10.65-5-pine64
- Support misc input devices (uinput, gpio) as module
- Tree cleanup (thanks to Alexander Graf)
- Fixed EFI boot (thanks to Alexander Graf)
- Removed FEX parsing (thanks to Alexander Graf)
- Fix a possible oops while loading codec (thanks to Alexander Graf)
- Support USB serial devices (cp210x, ftdi_sio) as module
- Support CIFS as module

**3.10.65-7-pine64-longsleep-28 (20160415)**
- Tagged as 3.10.65-7-pine64
- Backported crc32 arm64 optimizations from mainline
- Support more USB serial devices (ch341) as module
- Support more USB devices (acm, printers) as module
- Various crypto modules are now built-in
- Removed and cleaned up lots of debugging
- Audio codec sound driver is no longer built-in and now a module (HDMI audio still built-in)

**3.10.101-0-pine64-longsleep-39 (20160507)**
- Tagged as 3.10.101-0-pine64
- Merged with Linux stable 3.10 tree up to the current 3.10.101 (All say thanks to Mikhail which did the work for Armbian)
- Ported framebuffer patch over from OpenELEC for H3 fixing resolution switching (Thanks to Jernej Škrabec for pointing me to it)
- Enable vsync wait (porting patch from OpenELEC for H3)
- Enable task account support for iotop support (Thanks to Christoph Bayer)
- Enable I2C support (Thanks to Martin Ayotte)
- Enable a ton of USB wifi network drivers as module (see here)
- Enable network scheduling modules

**3.10.101-1-pine64-longsleep-41 (20160516)**
- Tagged as 3.10.101-1-pine64
- Enable XFS, FS2FS and HFS+ as module
- Fix sunxi-ss ahash registration and disable SHA-224
- Enable BLK_DEV_BSG for better udev compatibility

**3.10.101-2-pine64-longsleep-48 (20160521)**
- Tagged as 3.10.101-2-pine64
- Enable various netfilter and namespace features to make LXD happy
- Disable XFS module (not compatible with user namespaces in Kernel 3.10)
- Backported apparmor3
- Enable/changed various additional features to for complete secure container support

**3.10.101-3-pine64-longsleep-50 (20160524)**
- Tagged as 3.10.101-3-pine64
- Backported capability dropping in user namespaces, fixing unprivileged containers

**3.10.101-4-pine64-longsleep-51 (20160526)**
- Tagged as 3.10.101-4-pine64
- Release tarballs now include proper headers in /usr/src/linux-headers-<version>
- All gear for out-of-tree module compile now included and at correct location, fixes DKMS support
- Enable network bonding module
- Include network dummy
- Include sound sequencer
- Enable virtual midi and dummy sound sequencer module

To make your own Linux image with this Kernel, check out my simple image releases which combine U-Boot and a suitable disk layout at for details and download.

Released tarballs are signed with a detached GPG signature (.asc) signed by my personal key 0x090EF0DB. Get the key and verify that the download is intact and unmodified.
gpg --keyserver --recv-keys 090EF0DB
gpg --with-fingerprint arch-pine64-*.xz.asc

To update both Kernel an U-Boot to the latest releases, run the following commands (as root):
bash <(curl -s
bash <(curl -s
and reboot.

Your feedback is most welcome.

How to add to support into the official linux kernel tree ?
Pages: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18