|
|
(4 intermediate revisions by 3 users not shown) |
Line 1: |
Line 1: |
− | {{ARM/breadcrumb}}
| + | This page has been moved to the official NixOS Wiki: |
− | <div class="infobox">
| |
− | {|class="table"
| |
− | !colspan="2" class="title"|NixOS on TinkerBoard
| |
− | |-
| |
− | !Manufacturer
| |
− | |ASUS
| |
− | |-
| |
− | !Architecture
| |
− | |ARMv7
| |
− | |-
| |
− | !Bootloader
| |
− | |Upstream u-boot
| |
− | |-
| |
− | !Maintainer
| |
− | |[[User:tomberek|tomberek]]
| |
− | |}
| |
− | </div>
| |
− | <!-- Mosly copied from NixOS on Orange PC page -->
| |
− | == Status ==
| |
| | | |
− | '''@dezgeg''''s porting efforts to ARMv7 works on the TinkerBoard, with some modification for u-boot and DTB paths. Support for this board is a work in progress. Please contact me ([[User:tomberek|@tomberek]]) for comments/thoughts/feedback/etc. | + | ⇒ '''[https://wiki.nixos.org/wiki/NixOS_on_ARM/Tinker_Board NixOS on ARM/Tinker Board]''' |
| | | |
− | == Board-specific installation notes ==
| + | ''— samueldr, Lead of NixOS on ARM.'' |
− | | |
− | First follow the [[NixOS_on_ARM#Installation|generic installation steps]] to get the installer image on an SD card.
| |
− | | |
− | The Tinker Board seems to look for U-Boot at a specific offset rather than in a file. So copy the initial 4MB from the TinkerOS image and then copy it to the NixOS image while skipping the MBR/partition table in the first 512 bytes. It turns out the bootstrap section of the MBR is also needed, so copy that as well.
| |
− | | |
− | These commands may use either the /dev/sdX or the file images and later copied to SD cards - this was discovered iteratively, thus was performed on the sd cards directly. Use with caution. (Assumes <code>/dev/sdc</code> is TinkerOS and <code>/dev/sdb</code> is NixOS images or devices respectively).
| |
− | <syntaxhighlight lang="bash">
| |
− | dd if=/dev/sdc of=tinker_sector bs=512k count=8 status=progress # grab tinker initial sectors
| |
− | dd if=tinker_sector of=/dev/sdb bs=512 skip=1 seek=1 count=8191 # copy the img and env blobs
| |
− | dd of=/dev/sdb if=tinker_sector bs=428 count=1 # bootstrap code from begining of MBR
| |
− | </syntaxhighlight>
| |
− | | |
− | It turns out that getting into U-Boot using the TinkerOS image, halting the boot process, replacing SD cards with the NixOS image fails, but the error message suggests the extlinux merely has a different name for the DTB than NixOS has packaged. Simply copy from the nixos dtb file `/boot/nixos/<hash>-dtbs/rk3288-tinker.dtb` to `rockchip-tinker_rk3288.dtb`.
| |
− | | |
− | Then, install using the [[NixOS_on_ARM#NixOS_installation_.26_configuration|installation and configuration steps]].
| |
− | | |
− | == Serial console==
| |
− | | |
− | Your configuration.nix will need to modify the default <code>boot.kernelParams</code> configuration to use the serial console.
| |
− | | |
− | {{file|/etc/nixos/configuration.nix|nix|<nowiki>
| |
− | boot.kernelParams = [
| |
− | "console=ttymxc0,115200n8" # HDMI?
| |
− | "console=tty0" # Primary Console?
| |
− | "console=ttyS1,115200n8" # Serial port?
| |
− | "console=ttyS2,115200n8" # Serial port pins 8+10
| |
− | ];
| |
− | </nowiki>}}
| |
− | | |
− | == TODO ==
| |
− | * Build U-boot from upstream
| |
− | * upload images/blobs
| |
− | * host binary cache
| |
− | | |
− | == Resources ==
| |
− | | |
− | * [[NixOS_on_ARM]]
| |
− | * [https://www.asus.com/us/Single-Board-Computer/Tinker-Board/ Official ASUS website]
| |
− | * Some more details [https://tomberek.info/posts/Nix/2018-03-27-Nix-on-Tinker-Board.html on tomberek's post about the Tinker Board]
| |