Pine64 Debian Stretch/mainline [4.14.7]
#1
Hi

As I've created a thread earlier last week, I've got a working image for Pine64+ with complete mainline support:


Features
Kernel 4.14 branch, few extra patches (ethernet DTB revert and few others)
U-Boot 2017.09 branch, no external patches
NO boot0! Uses U-Boot SPL
Updates via normal debian packages for kernel (metapackage linux-image-pine64 keeps up2date kernels), no u-boot automated updates yet
Docker 17.09 branch or newer (installable via Debian package docker-ce) with Overlay2 full support
Debian Stretch with Systemd
Boot log: https://github.com/CallMeFoxie/pine64-ma...ootlog.txt

Tested on 2GB Pine64+, should work on 1GB version as well, unsure about 512MB version. Definitely would need to swap DTBs around.

Docker and Kernel are hosted on my repo (https://repo.foxiehost.eu/debian stretch main) and its key is imported to the image.
Boots via U-Boot through extlinux.conf -> ext2 partition with vmlinuz-* + fdt file -> ext4 rootfs (default 4GB, can be resized).
Kernel updates trigger extlinux.conf generator, normal kernel rules apply (keep last 2 and mark the other for removal etc).


Downloads:
[b]Base build 2017-10-15
[/b]https://repo.foxiehost.eu/pine-image/pin...015.img.xz

Kernel 4.13.6/U-Boot 2017.09


Base build 2017-08-15
https://repo.foxiehost.eu/pine-image/pin...815.img.xz
Kernel 4.13.0-rc5/U-Boot 2017.09-rc2






Source configs and scripts to build the images:
https://github.com/CallMeFoxie/pine64-mainline-project
(uses Docker to compile kernel/uboot/atf)


Known issues for latest base image:
SSH keys are not re-generated! It is suggested to delete them and ssh-keygen -t them on the first bootup. (Fixed in github already)
Fixed clock (~900MHz), no cpufreq/voltage regulation - missing kernel modules in upstream (as of 4.13.0-rc5)
No HDMI output (missing drivers)


Default config:
IP: 10.0.0.199/24, gw 10.0.0.138
SSH enabled:
Login: user pine, password pine; use sudo to get root


To do:
Fix known issues Tongue
- please use github issues for that.

Updates:
19/12/2017 - Released kernel 4.14.7 into repository, update via Apt and reboot
22/11/2017 - Released kernel 4.14.1 into repository, update via Apt and reboot
28/10/2017 - Released kernel 4.13.10 into repository, update via Apt and reboot
15/10/2017 - Released Docker-ce 17.09, update via Apt
15/10/2017 - Released new base image (*not required* to update, just rollup of kernel+base pkgs)
15/10/2017 - Released kernel 4.13.6 into repository, update via Apt and reboot
27/08/2017 - Released kernel 4.13.0-rc6 into repository, update via Apt and reboot (nothing else required)
28/08/2017 - Released kernel 4.13.0-rc7 into repository, update via Apt and reboot (rc5 should be autoremove-able)
28/08/2017 - Released Docker-ce 17.07.0-ce-rc4, update via Apt
30/08/2017 - Released Docker-ce 17.07-ce (final), update via Apt
  Reply
#2
Thank You for taking the time to put this together. I'll be sure to check it out when I get time Smile
  Reply
#3
.. kinda forgot to mention that there is no Mali driver so HDMI out will not be working (or shouldn't, I honestly have not tried). SSH or console is the only way to manage it.
  Reply
#4
Updates to latest kernel (4.13.0-rc7) and docker-ce (17.07-rc4) are on APT, just do apt-get update && apt-get dist-upgrade, reboot and you're done Smile
  Reply
#5
Hello,



I'm trying to reproduce your work of re-creating the base image.



So far:

Burned the base image to sd card, booted the Pine64 (I have the 2GB version)

Doing everything on the Pine64

Installed some packages like make, locales, git

Ran the build-docker-engine.sh script and managed to create .deb packages for 





Code:
pine@pine64-unknown:~/repos/pine64-mainline-project$ ls -lah output/output/                                            
total 18M
drwxr-xr-x 2 pine pine 4.0K Aug 29 10:36 .
drwxr-xr-x 3 pine pine 4.0K Aug 29 10:36 ..
-rw-r--r-- 1 pine pine  18M Aug 29 10:36 docker-ce_17.07.0~ce~rc4-0~debian_arm64.deb

I then installed the docker-ce by sudo dpkg -i docker-ce_17.07.0~ce~rc4-0~debian_arm64.deb

Then I proceeded to run the busybox script:

Code:
pine@pine64-unknown:~/repos/pine64-mainline-project$ sudo ./build-busybox.sh
Unable to find image 'aarch64-builder:latest' locally
docker: Error response from daemon: pull access denied for aarch64-builder, repository does not exist or may require 'docker login'.
See 'docker run --help'.

It seems that i should build first the aarch64-builder container so i did:
Code:
pine@pine64-unknown:~/repos/pine64-mainline-project/docker$ sudo docker build aarch64-builder/
Sending build context to Docker daemon  2.048kB
Step 1/2 : FROM debian:stretch
---> a20fd0d59cf1
Step 2/2 : RUN apt-get update && apt-get install -y bc gcc-aarch64-linux-gnu device-tree-compiler git ca-certificates build-essential libc6-dev-arm64-cross wget fakeroot --no-install-recommends && rm -rf /var/lib/apt/lists/*
---> Running in c51e833e1d07
standard_init_linux.go:187: exec user process caused "exec format error"
The command '/bin/sh -c apt-get update && apt-get install -y bc gcc-aarch64-linux-gnu device-tree-compiler git ca-certificates build-essential libc6-dev-arm64-cross wget fakeroot --no-install-recommends && rm -rf /var/lib/apt/lists/*' returned a non-zero code: 1

Where am I doing wrong?

It would help if you put a readme for noobs on github.

Regards,
Cezar
  Reply
#6
Code:
~/repos/pine64-mainline-project/docker/aarch64-builder # docker build -t aarch64-builder .

The aarch64-builder is used on a host machine (x86_64), the debianConfusedtretch image is targetted at this arch, not arm64 Smile You'd have to use alternate base image.

Code:
root@pine64-unknown:~/pine64-mainline-project# docker run -ti aarch64/debian:stretch uname -a
Linux 0f0d6ed373eb 4.13.0-rc7 #1 SMP Mon Aug 28 16:07:44 UTC 2017 aarch64 GNU/Linux
root@pine64-unknown:~/pine64-mainline-project# docker run -ti debian:stretch uname -a
standard_init_linux.go:187: exec user process caused "exec format error"
  Reply
#7
So they've deleted emac from dts and compat listing from the emac Tongue so had to revert a few commits for 4.13 final.

Also I've thrown in some PMIC drivers (that have not made it upstream completely just yet) and SRAM C as well.

Will publish the kernel tomorrow/during the weekend and then will see if I can get cpufreq with vdd scaling and possibly at least some basic HDMI output.
  Reply
#8
I've borrowed Icenowy's (thank you very much!) 4.13 branch kernels and updated it to 4.13.6. There's a lot of new drivers in and some are in the works from what I've been watching mailing lists (cpufreq most notably, but we're missing temperature atm anyways).

I'll see if I can get HDMI to work (with Mali? ;o) and post it hopefully this weekend with updated rootfs with U-Boot v2017.09 (latest stable) and whatever packages will be stable by then and other fixes.

Of course you don't need to reflash, normal apt-get update && apt-get dist-upgrade will roll out newer kernel for you when it is ready Smile - only U-Boot won't autoupdate (will need to get initrd to work there for safety, just as for auto-resizing of SD card on the first boot).
  Reply
#9
(10-13-2017, 01:14 PM)CallMeFoxie Wrote: I've borrowed Icenowy's (thank you very much!) 4.13 branch kernels and updated it to 4.13.6. There's a lot of new drivers in and some are in the works from what I've been watching mailing lists (cpufreq most notably, but we're missing temperature atm anyways).

I'll see if I can get HDMI to work (with Mali? ;o) and post it hopefully this weekend with updated rootfs with U-Boot v2017.09 (latest stable) and whatever packages will be stable by then and other fixes.

Of course you don't need to reflash, normal apt-get update && apt-get dist-upgrade will roll out newer kernel for you when it is ready Smile - only U-Boot won't autoupdate (will need to get initrd to work there for safety, just as for auto-resizing of SD card on the first boot).

I am currently looking for an image that does LCD on the Pine64 or SoPine/ Pine64-LTS and has mali. If by any chance you'd get that working please do let me know.
You can find me on IRC, Discord and Twitter


  Reply
#10
I do not have the LCD to test so cannot test really.

Running into some issues with the Mixer driver not getting reset line for whatever reason Sad
  Reply


Possibly Related Threads…
Thread Author Replies Views Last Post
  ROK OS v7 OK Bitcoin Fullnode OpenBazaar for Pine64+ OKtoshi 9 20,196 05-21-2021, 12:14 PM
Last Post: killor
  lost eth0 on my pine64 psarazin 7 8,910 03-22-2021, 05:55 PM
Last Post: kuleszdl
  Debian installer on Pine A64+ but no hdmi mrwick 1 5,885 07-28-2020, 01:49 PM
Last Post: kuleszdl
  Debian Pine64 h264/5 Video under vlc ozcy 6 14,084 04-15-2020, 05:27 AM
Last Post: dmitrymyadzelets
  OMV/debian/systemd: how to start the network kittyland 0 3,262 12-10-2019, 05:29 PM
Last Post: kittyland
  Debian 10 (Buster) in deep freeze - includes support for Pine64+ amp 5 11,222 07-22-2019, 09:29 PM
Last Post: amp
  Installing Debian with the Debian Installer (Buster RC1) amp 1 5,209 06-28-2019, 12:35 PM
Last Post: Kaarme42
  Script to build pure Debian images for Pine64+ amp 1 4,660 05-01-2019, 09:09 PM
Last Post: tllim
  Debian (Stretch) for Pine64-LTS wgray 2 6,993 04-04-2019, 09:54 PM
Last Post: wgray
  Is there just one fuctioning Debian Desktop image? KNERD 7 14,459 03-29-2019, 02:00 AM
Last Post: desai_amogh

Forum Jump:


Users browsing this thread: 20 Guest(s)