After pre-ordering one many months ago, I finally got my Next CHIP ARMv7 system in the post..
It certainly is fairly small, but seems well-constructed.. Details are at http://docs.getchip.com/chip.html#chip-hardware
After connecting the UART/USB cable, as normal, the system booted into a cut-down version of Debian.. There is no hdmi, or sdcard connector, or Ethernet, but the wi-fi connection works as well as can be expected.. Quite a bargain at only $9.. The on-board storage (only 4GB) is in the UBIFS format, and this needed some more research…
The plan – initially – was to get it to boot onto a rootfs on an USB stick (ext4) and run Fedora 24.. This was relatively easy, involving a change to the u-boot bootargs parameter to point to sda1 – the USB stick.
setenv bootargs “root=/dev/sda1 rootfstype=ext4 rootwait rw”
After this, the device booted into Fedora 24:
............... (FEL boot) ........................... UBI: attaching mtd1 to ubi0 UBI: scanning is finished UBI: attached mtd1 (name "mtd=4", size 8176 MiB) to ubi0 UBI: PEB size: 2097152 bytes (4096 KiB), LEB size: 2064384 bytes UBI: min./max. I/O unit sizes: 16384/16384, sub-page size 16384 UBI: VID header offset: 16384 (aligned 16384), data offset: 32768 UBI: good PEBs: 2044, bad PEBs: 0, corrupted PEBs: 0 UBI: user volume: 1, internal volumes: 1, max. volumes count: 128 UBI: max/mean erase counter: 2/0, WL threshold: 4096, image sequence number: 1098611298 UBI: available PEBs: 0, total reserved PEBs: 2044, PEBs reserved for bad PEB handling: 40 Loading file '/boot/sun5i-r8-chip.dtb' to addr 0x43000000 with size 22617 (0x00005859)... Done Loading file '/boot/zImage' to addr 0x42000000 with size 5619496 (0x0055bf28)... Done Kernel image @ 0x42000000 [ 0x000000 - 0x55bf28 ] ## Flattened Device Tree blob at 43000000 Booting using the fdt blob at 0x43000000 Loading Device Tree to 49ff7000, end 49fff858 ... OK Starting kernel ... [ 0.000000] Booting Linux on physical CPU 0x0 ................. Fedora 24 (Twenty Four) Kernel 4.3.0-ntc on an armv7l (ttyS0)
$ cat /proc/cpuinfo processor : 0 model name : ARMv7 Processor rev 2 (v7l) BogoMIPS : 1001.88 Features : half thumb fastmult vfp edsp neon vfpv3 tls vfpd32 CPU implementer : 0x41 CPU architecture: 7 CPU variant : 0x3 CPU part : 0xc08 CPU revision : 2 Hardware : Allwinner sun4i/sun5i Families Revision : 0000 Serial : 1625428a0982b662
After that, I configured wireless networking, and everything seemed to be OK, but then the device ‘died’ suddenly… I had read that the USB port was rather low-powered, and so I attached a powered USB2 hub, reattached to USB stick to that, re-booted, and all is well, now..
I installed the mtd-utils-ubi package to handle the UBIFS mount, and added the commands to do this to rc.local, after creating the nand-root mount point.. I will be changing the pre-configured volume name to something other than ‘rootfs’ to avoid confusion..
# ubiattach /dev/ubi_ctrl -m 4 [ 501.640000] ubi0: attaching mtd4 [ 503.080000] ubi0: scanning is finished [ 503.120000] ubi0: attached mtd4 (name "rootfs", size 8176 MiB) [ 503.130000] ubi0: PEB size: 4194304 bytes (2048 KiB), LEB size: 2064384 bytes [ 503.140000] ubi0: min./max. I/O unit sizes: 16384/16384, sub-page size 16384 [ 503.140000] ubi0: VID header offset: 16384 (aligned 16384), data offset: 32768 [ 503.150000] ubi0: good PEBs: 2044, bad PEBs: 0, corrupted PEBs: 0 [ 503.160000] ubi0: user volume: 1, internal volumes: 1, max. volumes count: 128 [ 503.160000] ubi0: max/mean erase counter: 2/0, WL threshold: 4096, image sequence number: 1098611298 [ 503.170000] ubi0: available PEBs: 0, total reserved PEBs: 2044, PEBs reserved for bad PEB handling: 40 [ 503.190000] ubi0: background thread "ubi_bgt0d" started, PID 639 UBI device number 0, total 2044 LEBs (4219600896 bytes, 3.9 GiB), available 0 LEBs (0 bytes), LEB size 2064384 bytes (2.0 MiB) ..................................... # mount -t ubifs ubi0:rootfs /nand-root [ 634.770000] UBIFS (ubi0:0): background thread "ubifs_bgt0_0" started, PID 646 [ 636.570000] UBIFS (ubi0:0): UBIFS: mounted UBI device 0, volume 0, name "rootfs" [ 636.580000] UBIFS (ubi0:0): LEB size: 2064384 bytes (2016 KiB), min./max. I/O unit sizes: 16384 bytes/16384 bytes [ 636.590000] UBIFS (ubi0:0): FS size: 4108124160 bytes (3917 MiB, 1990 LEBs), journal size 18579457 bytes (17 MiB, 9 LEBs) [ 636.600000] UBIFS (ubi0:0): reserved for root: 0 bytes (0 KiB) [ 636.610000] UBIFS (ubi0:0): media format: w4/r0 (latest is w4/r0), UUID 6BCEE06C-CCC9-42CF-B11E-A4A92824F204, small LPT model
As the wi-fi connection is so slow, here, I am planning to fit a USB/Ethernet adapter for the network connection – similar to the Hikey and 410c, and – of course – I will be compiling my own kernel..
Robert Gadsdon. July 11, 2016.