|
|
(5 intermediate revisions by one other user not shown) |
Line 29: |
Line 29: |
| == Status == | | == Status == |
|
| |
|
| Work In Progress..
| | Stable, production-ready and suitable for mission critical environment |
|
| |
|
| The system is bootable and seems to work, but audio is broken and has rare graphical issues that are currently being investigated, note known issues below for building on Linux 6.0~6.1 resulting in broken display.
| | For U-Boot use armbian's distribution as currently the nixos's version is outdated and broken |
| | |
| U-boot support [https://github.com/NixOS/nixpkgs/pull/240827 has been submitted on 2023-06-30, but not yet merged].
| |
|
| |
|
| == Installation instructions == | | == Installation instructions == |
|
| |
|
| {{ARM/installation allwinner|variant=aarch64}}
| | === UEFI (recommended) === |
| | |
| === Partitioning === | |
|
| |
|
| All Allwinner SoCs will try to find a boot image at sector 16 (8KB) of an SD card, connected to the first MMC controller.[3]
| | {{note|This method assumes that you have your bootloader flashed in eMMC or SPI}} |
|
| |
|
| {{expansion|Details yet to be written..}}
| | Refer to the nixos.org download page and download the installer to your preference, then proceed to follow instructions in the [https://nixos.org/manual/nixos/stable/ NixOS manual on how to flash the installer] on e.g. USB drive |
|
| |
|
| ==== MBR partition scheme ==== | | === EXTLINUX (legacy) === |
|
| |
|
| {{expansion|Installation instructions need to be written up to keep space for embedding the bootloader to the SPL.}} | | {{ARM/installation allwinner|variant=aarch64}} |
| | |
| ==== GPT partition scheme ====
| |
| | |
| The [[NixOS_on_ARM/Allwinner_GPT_Installation|Allwinner GPT Installation]] instruction explains how to create a GPT partition table while allowing the isntallation of u-boot at the required offset.
| |
|
| |
|
| == Serial console== | | == Serial console== |
Line 66: |
Line 58: |
|
| |
|
| {| class="table arm-compatibility" | | {| class="table arm-compatibility" |
| !colspan="2" style="background: #fafafa"| Mainline kernel on NixOS | | !colspan="2" style="background: var(--color-inverted)"| Mainline kernel on NixOS |
| |- | | |- |
| ! HDMI | | ! HDMI |
| | | | | |
| * Hasn't been tested. | | * Works |
| |- | | |- |
| ! Display | | ! Display |
| | | | | |
| * Works outside of Linux 6.0~6.1 | | * Expected to work without issues with exceptions, see sunxi wiki |
| |- | | |- |
| ! WiFi/Bluetooth | | ! WiFi/Bluetooth |
| | | | | |
| * Work, Requires non-libre firmware for RTL8723BS | | * Works, currently requires non-libre firmware for RTL8723BS which is projected to be mitigated |
| |- | | |- |
| ! Audio (reproductors) | | ! Audio (reproductors) |
| | | | | |
| * Broken, investigating.. | | * Unknown |
| |- | | |- |
| ! Audio (audio jack) | | ! Audio (audio jack) |
Line 110: |
Line 102: |
| ! FOSS Bootloader | | ! FOSS Bootloader |
| | | | | |
| * Works - U-Boot | | * Works - U-Boot/TowBoot |
| |} | | |} |
|
| |
|
Line 121: |
Line 113: |
| {{expansion|Find and document use of a kernel with the added capabilities.}} | | {{expansion|Find and document use of a kernel with the added capabilities.}} |
|
| |
|
| == USB booting with u-boot == | | == USB booting with U-Boot == |
|
| |
|
| You will need to either have mainline U-Boot installed to the eMMC or to an SD card. | | You will need to either have mainline U-Boot installed to the eMMC or to an SD card. |
Line 135: |
Line 127: |
| This sets the boot order for this boot only. U-Boot can boot (among others) either of the NixOS sd-image or EFI iso from USB. | | This sets the boot order for this boot only. U-Boot can boot (among others) either of the NixOS sd-image or EFI iso from USB. |
|
| |
|
| == Known issues == | | == Notes == |
|
| |
|
| === Broken rendering on Linux <6.0.X;6.1.X> ===
| | Refer to the device's sunxi-linux wiki page for more details: https://linux-sunxi.org/Olimex_Teres-A64 |
|
| |
|
| Building the bootloader and the configuration on linux 6.0~6.1 will result in broken display rendering due to "''DRM_IOCTL_MODE_CREATE_DUMB failed: Cannot allocate memory''' caused by insufficient Quality Assurance at mesa upstream tracked on https://gitlab.freedesktop.org/mesa/mesa/-/issues/8198.
| | For u-boot installation refer to the u-boot documentation for AllWinner devices: https://docs.u-boot.org/en/stable/board/allwinner/sunxi.html#installing-on-a-micro-sd-card |
|
| |
|
| The fix has been merged in https://gitlab.freedesktop.org/mesa/mesa/-/commit/c426e5677f36c3b0b8e8ea199ed4f2c7fad06d47 and is part of Linux 6.2 so as long as you build ""and use"" this kernel the display should work without an issue.
| | For TowBoot installation refer to the TowBoot wiki: |
|
| |
|
| Note that if you boot and build on broken kernel then you can use serial console on BAUM 115200 to fix the issue.
| | == Resources == |
| | |
| As of 03/07/2023-EU NixOS 23.05 is shipped with LTS kernel which is 6.1 to get non-broken kernel you can use the following configuration:
| |
| | |
| <pre>
| |
| # configuration.nix
| |
| boot.kernelPackages = pkgs.linuxPackages_6_3;
| |
| </pre>
| |
| | |
| Please let me know if you encounter this issue outside of known broken linux release. -- KREYREN
| |
| | |
| === Unable to detect cache hierarchy ===
| |
| | |
| [ +0,002092] cacheinfo: Unable to detect cache hierarchy for CPU 0
| |
| | |
| Is currently being investigated..
| |
| | |
| === KASLR disabled due to lack of seed ===
| |
| | |
| [ +0,028609] KASLR disabled due to lack of seed
| |
| | |
| Cause unknown
| |
| | |
| === Static allocation of GPIO base is deprecated, use dynamic allocation. ===
| |
| | |
| [ +0,006568] gpio gpiochip0: Static allocation of GPIO base is deprecated, use dynamic allocation.
| |
| [ +0,004633] gpio gpiochip1: Static allocation of GPIO base is deprecated, use dynamic allocation.
| |
| | |
| | |
| TBD
| |
| | |
| === Failed to find 'trips' node ===
| |
| | |
| [ +0,015136] thermal_sys: Failed to find 'trips' node
| |
| [ +0,000050] thermal_sys: Failed to find trip points for thermal-sensor id=1
| |
| | |
| TBD
| |
| | |
| === thermal-sensor failed err -22 ===
| |
|
| |
|
| [ +0,000025] sun8i-thermal: probe of 1c25000.thermal-sensor failed with error -22
| | 0. [https://linux-sunxi.org/Olimex_Teres-A64 The Sunxi Linux Wiki Page for the device] |
| | |
| TBD
| |
| | |
| === Dummy regulators ===
| |
| | |
| [ +0,004699] sun50i-a64-r-pinctrl 1f02c00.pinctrl: supply vcc-pl not found, using dummy regulator
| |
| [ +0,002064] sun50i-a64-pinctrl 1c20800.pinctrl: supply vcc-pb not found, using dummy regulator
| |
| | |
| | |
| TBD
| |
| | |
| === plymouth quit failed ===
| |
| | |
| [ +0,082794] systemd[1]: plymouth-quit.service: Service has no ExecStart=, ExecStop=, or SuccessAction=. Refusing.
| |
| | |
| TBD
| |
| | |
| === lima complaints ===
| |
| | |
| [ +0,045280] lima 1c40000.gpu: gp - mali400 version major 1 minor 1
| |
| [ +0,000097] lima 1c40000.gpu: pp0 - mali400 version major 1 minor 1
| |
| [ +0,000082] lima 1c40000.gpu: pp1 - mali400 version major 1 minor 1
| |
| [ +0,000045] lima 1c40000.gpu: l2 cache 64K, 4-way, 64byte cache line, 64bit external bus
| |
| [ +0,017881] lima 1c40000.gpu: bus rate = 200000000
| |
| [ +0,000044] lima 1c40000.gpu: mod rate = 297000000
| |
| [ +0,000189] lima 1c40000.gpu: error -ENODEV: _opp_set_regulators: no regulator (mali) found
| |
| | |
| TBD
| |
| | |
| === DMA Mask Not Set ===
| |
| | |
| [ +0,026846] axp20x-battery-power-supply axp20x-battery-power-supply: DMA mask not set
| |
| [ +0,002934] axp20x-gpio axp20x-gpio: DMA mask not set
| |
| [ +0,020608] axp20x-gpio axp20x-gpio: AXP209 pinctrl and GPIO driver loaded
| |
| [ +0,024144] [drm] Initialized lima 1.1.0 20191231 for 1c40000.gpu on minor 0
| |
| [ +0,010950] input: axp20x-pek as /devices/platform/soc/1f03400.rsb/sunxi-rsb-3a3/axp221-pek/input/input3
| |
| [ +0,028111] axp20x-adc axp813-adc: DMA mask not set
| |
| [ +0,018871] axp20x-ac-power-supply axp20x-ac-power-supply: DMA mask not set
| |
| [ +0,005514] [drm] Found ANX6345 (ver. 170) eDP Transmitter
| |
| [ +0,029170] onboard-usb-hub 1-1: reset high-speed USB device number 2 using ehci-platform
| |
| | |
| TBD
| |
| | |
| === r8723bs quality unknown ===
| |
| | |
| [ +0,101511] r8723bs: module is from the staging directory, the quality is unknown, you have been warned.
| |
| | |
| TBD
| |
| | |
| === Wifi thing ===
| |
| | |
| [ +16,686444] warning: `.dleyna-rendere' uses wireless extensions which will stop working for Wi-Fi 7 hardware; use nl80211
| |
| | |
| TBD
| |
| | |
| == Resources ==
| |
|
| |
|
| 1. [https://www.olimex.com/Products/DIY-Laptop/ Official product page] | | 1. [https://www.olimex.com/Products/DIY-Laptop/ Official product page] |