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:
root@rock64:~# 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
root@rock64:~# 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:
root@rock64:~# uname -a
Linux rock64 4.4.77-rockchip-ayufan-92 #1 SMP Mon Aug 28 19:38:29 UTC 2017 aarch64 GNU/Linux
root@rock64:~# 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:
rock64@rock64:~$ uname -a
Linux rock64 4.4.77-rockchip-ayufan-93 #1 SMP Tue Aug 29 09:35:00 UTC 2017 aarch64 GNU/Linux
rock64@rock64:~$ 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]

rock64@rock64:~$ 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.

rock64@rock64:~$ 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.

rock64@rock64:~/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) ...
rock64@rock64:~/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
  irradium (based on crux linux) Rock64 riscv64, aarch64 mara 7 1,007 11-19-2024, 02:54 PM
Last Post: mara
  MIPI-CSI IMX214 on Linux NO SUCCESS zeus666 2 2,301 06-02-2023, 07:52 AM
Last Post: diederik
  The state of mainline hardware decoding CounterPillow 17 18,068 01-26-2022, 03:39 PM
Last Post: sigmaris
  Linux 5.15 Kernel - openSuse mark1250 0 1,526 12-02-2021, 04:36 PM
Last Post: mark1250
  Alpine Linux isndw 12 19,967 08-12-2021, 05:41 PM
Last Post: pix
Lightbulb RK3399 Linux rtl8822cu module bluetooth not working shivarj89 0 1,582 07-29-2021, 07:19 AM
Last Post: shivarj89
  Linux Images (ROCK64) pineadmin 164 313,979 02-12-2021, 10:14 AM
Last Post: useful64
  Arch Linux Arm --> Kernel 5.8 breaks installation as365n4 12 14,009 08-31-2020, 01:41 AM
Last Post: as365n4
  Arch Linux ARM on the Rock64 V3 justinweiss 2 5,468 08-24-2020, 05:16 PM
Last Post: justinweiss
  Arch Linux Arm - external RTC problem max 1 3,317 08-17-2020, 10:35 AM
Last Post: max

Forum Jump:


Users browsing this thread: 3 Guest(s)