Linux Mainline
#1
Information 
I released a few new builds that fix a bunch of problems but also enables first initial headless compile of the mainline kernel: https://github.com/ayufan-rock64/linux-build/releases.

You can find all patches added on top of u-boot and kernel here:
https://github.com/ayufan-rock64/linux-mainline-kernel
https://github.com/ayufan-rock64/linux-u...ine-master

What does work?
- eMMC and SD,
- GbE ethernet, 100M ethernet,
- PXE and USB booting via U-boot,
- SPI accessible from U-boot and Kernel,
- Power/standby leds,
- Power key,
- Persistent eth0 and eth1 address,

What does not?
- Everything else probably, like HDMI, Mali, cpu scaling.

Usage?
This is suitable for testing and headless use.

How to install?
Code:
wget https://github.com/ayufan-rock64/linux-build/releases/download/0.5.5/linux-image-4.13.0-rc1-rockchip-ayufan-93-ga1d4fc4_0.5.5_arm64.deb
dpkg -i linux-image-4.13.0-rc1-rockchip-ayufan-93-ga1d4fc4_0.5.5_arm64.deb

^^ This will only work when running on one of my images. It will not work with Official images.
^^ In above you may want to look at https://github.com/ayufan-rock64/linux-build/releases and get the latest archive.

How to uninstall?
Code:
dpkg -r linux-image-4.13.0-rc1-rockchip-ayufan-93-ga1d4fc4

Remarks?
All my builds since 0.5.x do use mainline u-boot with some extra patches.
Homepage: https://ayufan.eu

Releases:
Rock/Pro 64/Pinebook Pro: LinuxChromium OS
So/Pine A64/Pinebook: LinuxAndroid 6.0Android 7.1

Buy me a Beer
  Reply
#2
This is amazing work.  Thank you!  However, it does raise a question.  Is there/will there be a simple way to upgrade as these new fixes come out that does not require a complete re-flash?  I apologize if this is an obvious question.

Thank you!
  Reply
#3
Yes. Just install a new kernel on top of my image. Use Debian package.
Homepage: https://ayufan.eu

Releases:
Rock/Pro 64/Pinebook Pro: LinuxChromium OS
So/Pine A64/Pinebook: LinuxAndroid 6.0Android 7.1

Buy me a Beer
  Reply
#4
Some performance numbers:

mainline:
Code:
[email protected]:~# uname -a
Linux rock64 4.13.0-rc1-rockchip-ayufan-1-00195-ga1d4fc4 #3 SMP PREEMPT Tue Aug 29 10:47:42 CEST 2017 aarch64 GNU/Linux
[email protected]:~# cryptsetup benchmark
# Tests are approximate using memory only (no storage IO).
PBKDF2-sha1        75328 iterations per second
PBKDF2-sha256      50180 iterations per second
PBKDF2-sha512      38460 iterations per second
PBKDF2-ripemd160   67702 iterations per second
PBKDF2-whirlpool    5184 iterations per second
#  Algorithm | Key |  Encryption |  Decryption
    aes-cbc   128b   200.5 MiB/s   271.7 MiB/s
serpent-cbc   128b    12.9 MiB/s    14.3 MiB/s
twofish-cbc   128b    16.0 MiB/s    15.9 MiB/s
    aes-cbc   256b   171.7 MiB/s   241.5 MiB/s
serpent-cbc   256b    13.0 MiB/s    14.3 MiB/s
twofish-cbc   256b    16.0 MiB/s    15.9 MiB/s
    aes-xts   256b   232.6 MiB/s   235.3 MiB/s
serpent-xts   256b    13.5 MiB/s    14.6 MiB/s
twofish-xts   256b    16.9 MiB/s    16.0 MiB/s
    aes-xts   512b   210.7 MiB/s   209.5 MiB/s
serpent-xts   512b    13.8 MiB/s    14.6 MiB/s
twofish-xts   512b    17.2 MiB/s    16.0 MiB/s

4.4 kernel:
Code:
[email protected]:~# uname -a
Linux rock64 4.4.77-rockchip-ayufan-92 #1 SMP Mon Aug 28 19:38:29 UTC 2017 aarch64 GNU/Linux
[email protected]:~# cryptsetup benchmark
# Tests are approximate using memory only (no storage IO).
PBKDF2-sha1       163840 iterations per second
PBKDF2-sha256     108503 iterations per second
PBKDF2-sha512      82643 iterations per second
PBKDF2-ripemd160  144035 iterations per second
PBKDF2-whirlpool   11115 iterations per second
#  Algorithm | Key |  Encryption |  Decryption
    aes-cbc   128b   341.0 MiB/s   422.9 MiB/s
serpent-cbc   128b           N/A           N/A
twofish-cbc   128b    29.0 MiB/s    29.0 MiB/s
    aes-cbc   256b   299.6 MiB/s   394.3 MiB/s
serpent-cbc   256b           N/A           N/A
twofish-cbc   256b    29.1 MiB/s    29.0 MiB/s
    aes-xts   256b   381.1 MiB/s   379.3 MiB/s
serpent-xts   256b           N/A           N/A
twofish-xts   256b           N/A           N/A
    aes-xts   512b   352.1 MiB/s   353.2 MiB/s
serpent-xts   512b           N/A           N/A
twofish-xts   512b           N/A           N/A
Homepage: https://ayufan.eu

Releases:
Rock/Pro 64/Pinebook Pro: LinuxChromium OS
So/Pine A64/Pinebook: LinuxAndroid 6.0Android 7.1

Buy me a Beer
  Reply
#5
This is awesome! Thanks! I'll volunteer to test. So what do I do? Download the 3 Debian packages for 4.13.0-rc1 to /tmp then run sudo dpkg -i linux-headers-4.13*.deb linux-image-4.13*.deb ? In Grub machine, I have to run update-grub but what about this?
  Reply
#6
(08-29-2017, 06:18 AM)rontant Wrote: This is awesome! Thanks! I'll volunteer to test. So what do I do? Download the 3 Debian packages for 4.13.0-rc1 to /tmp then run sudo dpkg -i linux-headers-4.13*.deb linux-image-4.13*.deb ? In Grub machine, I have to run update-grub but what about this?

@rontant, it would be great if you could document the process.  I would be happy to test the process on my 4GB Rock64 running the previous release of Debian Stretch minimal.  There is nothing running on the board and so it will not be an issue if a reimage is required.
  Reply
#7
(08-28-2017, 04:00 PM)ayufan Wrote: How to install?
Code:
wget https://github.com/ayufan-rock64/linux-build/releases/download/0.5.5/linux-image-4.13.0-rc1-rockchip-ayufan-93-ga1d4fc4_0.5.5_arm64.deb
dpkg -i linux-image-4.13.0-rc1-rockchip-ayufan-93-ga1d4fc4_0.5.5_arm64.deb

^^ This will only work when running on one of my images. It will not work with Official images.
^^ In above you may want to look at https://github.com/ayufan-rock64/linux-build/releases and get the latest archive.

I installed from your Strech minimal 4.4.77. I can only report that after reboot into the new kernel, the ssh connection (via Bitvise SSH client) becomes very unstable (frequent disconnection and terminal keyboard becomes sluggish). Dmesg freezes half way and disconnect the SSH client.


Code:
[email protected]:~$ uname -a
Linux rock64 4.4.77-rockchip-ayufan-93 #1 SMP Tue Aug 29 09:35:00 UTC 2017 aarch64 GNU/Linux
[email protected]:~$ wget https://github.com/ayufan-rock64/linux-build/releases/download/0.5.5/linux-image-4.13.0-rc1-rockchip-ayufan-93-ga1d4fc4_0.5.5_arm64.deb
--2017-08-29 09:59:47--  https://github.com/ayufan-rock64/linux-build/releases/download/0.5.5/linux-image-4.13.0-rc1-rockchip-ayufan-93-ga1d4fc4_0.5.5_arm64.deb
Resolving github.com (github.com)... 192.30.255.112, 192.30.255.113
Connecting to github.com (github.com)|192.30.255.112|:443... connected.
HTTP request sent, awaiting response... 302 Found
Location: https://github-production-release-asset-2e65be.s3.amazonaws.com/93933234/d3006ae8-8cb8-11e7-8416-7d0337669e00?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAIWNJYAX4CSVEH53A%2F20170830%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20170830T030242Z&X-Amz-Expires=300&X-Amz-Signature=7f821c1e9835fafeb8eba697a66d38f88dec2ff8c2dfb6c0f5dcaea83db6475c&X-Amz-SignedHeaders=host&actor_id=0&response-content-disposition=attachment%3B%20filename%3Dlinux-image-4.13.0-rc1-rockchip-ayufan-93-ga1d4fc4_0.5.5_arm64.deb&response-content-type=application%2Foctet-stream [following]
--2017-08-29 09:59:48--  https://github-production-release-asset-2e65be.s3.amazonaws.com/93933234/d3006ae8-8cb8-11e7-8416-7d0337669e00?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAIWNJYAX4CSVEH53A%2F20170830%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20170830T030242Z&X-Amz-Expires=300&X-Amz-Signature=7f821c1e9835fafeb8eba697a66d38f88dec2ff8c2dfb6c0f5dcaea83db6475c&X-Amz-SignedHeaders=host&actor_id=0&response-content-disposition=attachment%3B%20filename%3Dlinux-image-4.13.0-rc1-rockchip-ayufan-93-ga1d4fc4_0.5.5_arm64.deb&response-content-type=application%2Foctet-stream
Resolving github-production-release-asset-2e65be.s3.amazonaws.com (github-production-release-asset-2e65be.s3.amazonaws.com)... 52.216.160.19
Connecting to github-production-release-asset-2e65be.s3.amazonaws.com (github-production-release-asset-2e65be.s3.amazonaws.com)|52.216.160.19|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 10422630 (9.9M) [application/octet-stream]
Saving to: 'linux-image-4.13.0-rc1-rockchip-ayufan-93-ga1d4fc4_0.5.5_arm64.deb'

linux-image-4.13.0-rc1-r 100%[==================================>]   9.94M   805KB/s    in 29s

2017-08-30 03:03:12 (348 KB/s) - 'linux-image-4.13.0-rc1-rockchip-ayufan-93-ga1d4fc4_0.5.5_arm64.deb' saved [10422630/10422630]

[email protected]:~$ sudo dpkg -i linux-image-4.13.0-rc1-rockchip-ayufan-93-ga1d4fc4_0.5.5_arm64.deb
[sudo] password for rock64:
Selecting previously unselected package linux-image-4.13.0-rc1-rockchip-ayufan-93-ga1d4fc4.
(Reading database ... 37090 files and directories currently installed.)
Preparing to unpack linux-image-4.13.0-rc1-rockchip-ayufan-93-ga1d4fc4_0.5.5_arm64.deb ...
Unpacking linux-image-4.13.0-rc1-rockchip-ayufan-93-ga1d4fc4 (0.5.5) ...
Setting up linux-image-4.13.0-rc1-rockchip-ayufan-93-ga1d4fc4 (0.5.5) ...
update-initramfs: Generating /boot/initrd.img-4.13.0-rc1-rockchip-ayufan-93-ga1d4fc4
Warning: root device  does not exist
Using DTB: rk3328-rock64.dtb
Installing /usr/lib/linux-image-4.13.0-rc1-rockchip-ayufan-93-ga1d4fc4/rockchip/rk3328-rock64.dtb into /boot/dtbs/4.13.0-rc1-rockchip-ayufan-93-ga1d4fc4/rk3328-rock64.dtb
Installing new rk3328-rock64.dtb.
Installing /usr/lib/linux-image-4.13.0-rc1-rockchip-ayufan-93-ga1d4fc4/rockchip/rk3328-rock64.dtb into /boot/dtbs/4.13.0-rc1-rockchip-ayufan-93-ga1d4fc4/rk3328-rock64.dtb
Taking backup of rk3328-rock64.dtb.
Installing new rk3328-rock64.dtb.
flash-kernel: deferring update (trigger activated)
Using DTB: rk3328-rock64.dtb
Installing /usr/lib/linux-image-4.13.0-rc1-rockchip-ayufan-93-ga1d4fc4/rockchip/rk3328-rock64.dtb into /boot/dtbs/4.13.0-rc1-rockchip-ayufan-93-ga1d4fc4/rk3328-rock64.dtb
Taking backup of rk3328-rock64.dtb.
Installing new rk3328-rock64.dtb.
Installing /usr/lib/linux-image-4.13.0-rc1-rockchip-ayufan-93-ga1d4fc4/rockchip/rk3328-rock64.dtb into /boot/dtbs/4.13.0-rc1-rockchip-ayufan-93-ga1d4fc4/rk3328-rock64.dtb
Taking backup of rk3328-rock64.dtb.
Installing new rk3328-rock64.dtb.
flash-kernel: deferring update (trigger activated)
Processing triggers for flash-kernel (3.79) ...
Using DTB: rk3328-rock64.dtb
Installing /usr/lib/linux-image-4.13.0-rc1-rockchip-ayufan-93-ga1d4fc4/rockchip/rk3328-rock64.dtb into /boot/dtbs/4.13.0-rc1-rockchip-ayufan-93-ga1d4fc4/rk3328-rock64.dtb
Taking backup of rk3328-rock64.dtb.
Installing new rk3328-rock64.dtb.
flash-kernel: installing version 4.13.0-rc1-rockchip-ayufan-93-ga1d4fc4
Taking backup of Image.
Installing new Image.
Taking backup of initrd.img.
Installing new initrd.img.
Taking backup of dtb.
Installing new dtb.

[email protected]:~$ sudo reboot
  Reply
#8
(08-28-2017, 04:00 PM)ayufan Wrote: I released a few new builds that fix a bunch of problems but also enables first initial headless compile of the mainline kernel: https://github.com/ayufan-rock64/linux-build/releases.

You can find all patches added on top of u-boot and kernel here:
https://github.com/ayufan-rock64/linux-mainline-kernel
https://github.com/ayufan-rock64/linux-u...ine-master

What does work?
- eMMC and SD,
- GbE ethernet, 100M ethernet,
- PXE and USB booting via U-boot,
- SPI accessible from U-boot and Kernel,
- Power/standby leds,
- Power key,
- Persistent eth0 and eth1 address,

What does not?
- Everything else probably, like HDMI, Mali, cpu scaling.

Usage?
This is suitable for testing and headless use.

How to install?
Code:
wget https://github.com/ayufan-rock64/linux-build/releases/download/0.5.5/linux-image-4.13.0-rc1-rockchip-ayufan-93-ga1d4fc4_0.5.5_arm64.deb
dpkg -i linux-image-4.13.0-rc1-rockchip-ayufan-93-ga1d4fc4_0.5.5_arm64.deb

^^ This will only work when running on one of my images. It will not work with Official images.
^^ In above you may want to look at https://github.com/ayufan-rock64/linux-build/releases and get the latest archive.

How to uninstall?
Code:
dpkg -r linux-image-4.13.0-rc1-rockchip-ayufan-93-ga1d4fc4

Remarks?
All my builds since 0.5.x do use mainline u-boot with some extra patches.

Downloaded the "linux-build-rock-64-92" last night and ran it this evening. Then I realized there was already a "linux-build-rock-64-93". Can't keep up!

To test Build 92 I took the conservative approach of flashing a new microSD:
- I downloaded xenial-mate-rock64-0.5.4-92-arm64.img.xz
- extracted with 7-zip
- imaged a new microSD by selecting the downloaded and extracted .img file.
- booted a production Rock64 w/ 4 GB

Everything seems fine with one error notice.
  Error: Sorry, Ubuntu 16.04 has experienced an internal error.
  Executable path:
    /usr/bin/Ubuntu-mate-welcome
Not sure when this showed up. I had selected the Welcome -> Software button and tried a few categories that were empty. After a reboot I haven't seen this again, but haven't played with the Welcome window.

Otherwise Ethernet, USB, etc. all seem fine and better than the previous release version, Build 83. Tested that Ethernet connects on boot and shows good throughput on Xfinity speed test. Connected an Adata USB3 flash drive to the USB3 port and transferred some files. 

FYI, uname -a gives:
Linux rock64 4.4.77-rockchip-ayufan-92 #1 SMP Mon Aug 28 19:38:29 UTC 2017 aarch64 (three times) GNU/Linux

Keep up the super excellent work! Many Thanks!
moravecz
  Reply
#9
Thanks for the info Ayufan. I was hoping I'd find commands to update to the most recent build. Unfortunately I think I bricked my Xenial Mate ROCK64 load. I ran the command line code you had in your last post. When I rebooted, I just got a flashing red light, never booted up. Oops. I don't think I was supposed to write it over my existing Xenial load. I probably now have a true headless (and boot-less) load! Oh well, no worries. Some day I'd like to figure out how to upgrade one of your builds to the newest build. For now, I'll pull down the newest Xenial Mate image and start over. Live and learn.
  Reply
#10
Hi,

So I followed the upgrade instructions and something did not work.  

I start with this: Linux rock64 4.4.70-rockchip-ayufan-89 #1 SMP Sun Aug 20 13:29:12 UTC 2017 aarch64 GNU/Linux

I then did the following:

1.) Downloaded latest image via wget: linux-firmware-image-4.13.0-rc1-rockchip-ayufan-96-gbacbee6_0.5.6_arm64.deb

2.) I followed the dpkg instructions as illustrated below.

[email protected]:~/ug$ sudo dpkg -i ./linux-firmware-image-4.13.0-rc1-rockchip-ayufan-96-gbacbee6_0.5.6_arm64.deb
(Reading database ... 37090 files and directories currently installed.)
Preparing to unpack .../linux-firmware-image-4.13.0-rc1-rockchip-ayufan-96-gbacbee6_0.5.6_arm64.deb ...
Unpacking linux-firmware-image-4.13.0-rc1-rockchip-ayufan-96-gbacbee6 (0.5.6) over (0.5.6) ...
Setting up linux-firmware-image-4.13.0-rc1-rockchip-ayufan-96-gbacbee6 (0.5.6) ...
[email protected]:~/ug$

I rebooted and uname -a was unchanged.

What am I missing?

I also tried the following and received message below:

sudo apt-get update -y
sudo apt-get install linux-rock64 -y

linux-rock64 is already the newest version (0.5.1).

Thank you.
  Reply


Possibly Related Threads...
Thread Author Replies Views Last Post
  Linux Images (ROCK64) pineadmin 159 80,832 01-14-2020, 12:23 PM
Last Post: dpgraham
  Any advantages to using the mainline kernel dkebler 0 114 11-16-2019, 12:17 PM
Last Post: dkebler
Question [SOLVED] Alpine Linux won't boot rock7 1 341 10-22-2019, 04:30 PM
Last Post: rock7
  Alpine Linux isndw 11 2,844 10-22-2019, 04:09 PM
Last Post: rock7
  Does anybody run the mainline kernel? CameronNemo 3 330 09-09-2019, 07:56 PM
Last Post: CameronNemo
  Underclocking the Rock64 (latest stable linux image) va88 2 218 08-07-2019, 05:39 PM
Last Post: evilbunny
  HDMI output with Arch Linux Arm yogo1212 2 342 07-17-2019, 02:46 AM
Last Post: yogo1212
  NEMS Linux for Rock64 Luke 7 1,462 05-19-2019, 05:55 AM
Last Post: evilbunny
  Video : Media Script for the Rock64/4K video in Linux NicoD 1 714 03-30-2019, 02:17 AM
Last Post: zet_lab
  ROCK64 Linux Development - Stalled? thewonderer 7 1,366 03-25-2019, 08:30 AM
Last Post: gregb49

Forum Jump:


Users browsing this thread: 1 Guest(s)