ARM SBC Support Discussion

Yes I think your right, i will make some more changes and I will have to use the accurate dtb for my boards.

I will fetch dtb from official image and reuse it over ipfire image for testing and see if I can get ipfire to start if that works then it will me a simple fix with dts patch of their device.

Secondly, I would like to propose to move all devices to extconfig to make booting process very simple and easy to maintain, as most of the devices are already supported by mainline linux and it can read extlinux where we can define all the parameters for boot which can look grub.

Let me know your thoughts on extlinux idea, as maintaining boot script for devices is alot of work.

Thanks

As I have already written, this will not work. The RPi soc and also uEFI (most server and virtual aarch64 systems) need a fat partition to boot from.

Yes found that after a few tries.
Ill try to re-write a bootscript for rockchip board.

Thanks for the reply.

May we use virtualization? https://www.bachmann-lan.de/vmware-esxi-auf-dem-raspberry-pi-4-installieren/

1 Like

Just a quick update.

I was able to pass the issue which was the board getting stuck at Starting kernel it was for to missing config for rockchip boards.

Now it seems to fail with mmc initialisation as I assume it is due to difference in the dtb. To solve this I will have to patch the kernel with the right dtb which is my next step maybe during this weekend.

I have also received Rock64 to cross verify my builds as the default kernel have rock64 dtb present so it is easier to test.

We should be getting more support for arm64 boards in 2021.

Happy New Year to everyone.
Cheers.

1 Like

Because some workarounds that were necessary for the espressobin seem to be more generally useful for a universal image that can boot on different devices and from different media, I link the topic from here:

1 Like

I tried to boot on rock64 and it seem that the sdcard is not visible to the linux kernel so I assume I must have missed a config for the rk sdmmc in the kernel.

I have asked for help from the rockchip developer, I will try to rebuild the kernel once I receive some response from them.

Happy New Year.

Hi, is there any avancement for the nanopi r2s?

I don’t know if you can reuse the effort done by openwrt?
It use the same kernel & uboot, I have see a dtb.

Hello And welcome to the forum,
I did try but it seems that some of the configs are not enabled in the kernel for rk3328.

I have tried ur but didn’t get any success yet.

Maybe will give it a try once next weekend.

2 Likes

Just plug in USB2 port !

ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver                                                                                                                                  
ehci-pci: EHCI PCI platform driver                                                                                                                                                          
ehci-platform: EHCI generic platform driver                                                                                                                                                 
ehci-orion: EHCI orion driver                                                                                                                                                               
orion-ehci d005e000.usb: EHCI Host Controller                                                                                                                                               
orion-ehci d005e000.usb: new USB bus registered, assigned bus number 1                                                                                                                      
orion-ehci d005e000.usb: irq 21, io mem 0xd005e000                                                                                                                                          
orion-ehci d005e000.usb: USB 2.0 started, EHCI 1.00                                                                                                                                         
usb usb1: New USB device found, idVendor=1d6b, idProduct=0002, bcdDevice= 5.10                                                                                                              
usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1                                                                                                                          
usb usb1: Product: EHCI Host Controller                                                                                                                                                     
usb usb1: Manufacturer: Linux 5.10.50-ipfire ehci_hcd                                                                                                                                       
usb usb1: SerialNumber: d005e000.usb                                                                                                                                                        
hub 1-0:1.0: USB hub found                                                                                                                                                                  
hub 1-0:1.0: 1 port detected                                                                                                                                                                
ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver                                                                                                                                      
ohci-pci: OHCI PCI platform driver                                                                                                                                                          
ohci-platform: OHCI generic platform driver                                                                                                                                                 
uhci_hcd: USB Universal Host Controller Interface driver                                                                                                                                    
usbcore: registered new interface driver uas                                                                                                                                                
usbcore: registered new interface driver usb-storage                                                                                                                                        
mousedev: PS/2 mouse device common for all mice                                                                                                                                             
device-mapper: uevent: version 1.0.3                                                                                                                                                        
device-mapper: ioctl: 4.43.0-ioctl (2020-10-01) initialised: dm-devel@redhat.com                                                                                                            
sdhci: Secure Digital Host Controller Interface driver                                                                                                                                      
sdhci: Copyright(c) Pierre Ossman                                                                                                                                                           
sdhci-pltfm: SDHCI platform and OF driver helper                                                                                                                                            
ledtrig-cpu: registered to indicate activity on CPUs                                                                                                                                        
SMCCC: SOC_ID: ARCH_SOC_ID not implemented, skipping ....                                                                                                                                   
hid: raw HID events driver (C) Jiri Kosina                                                                                                                                                  
usbcore: registered new interface driver usbhid                                                                                                                                             
usbhid: USB HID core driver                                                                                                                                                                 
Initializing XFRM netlink socket                                                                                                                                                            
NET: Registered protocol family 10                                                                                                                                                          
Segment Routing with IPv6                                                                                                                                                                   
NET: Registered protocol family 17                                                                                                                                                          
Bridge firewalling registered                                                                                                                                                               
Key type dns_resolver registered                                                                                                                                                            
registered taskstats version 1                                                                                                                                                              
Loading compiled-in X.509 certificates                                                                                                                                                      
Loaded X.509 cert 'IPFire.org: Build time autogenerated kernel key: 93d1af1ed46df6ac1d424ba06163f5b29d2eb8c9'                                                                               
d0012000.serial: ttyMV0 at MMIO 0xd0012000 (irq = 0, base_baud = 1562500) is a mvebu-uart                                                                                                   
printk: console [ttyMV0] enabled                                                                                                                                                            
md: Waiting for all devices to be available before autodetect                                                                                                                               
md: If you don't use raid, use raid=noautodetect                                                                                                                                            
md: Autodetecting RAID arrays.                                                                                                                                                              
md: autorun ...                                                                                                                                                                             
md: ... autorun DONE.                                                                                                                                                                       
Waiting for root device /dev/sda3...                                                                                                                                                        

HERE I PLUG FROM USB3 TO USB2…


usb 1-1: new high-speed USB device number 2 using orion-ehci                                                                                                                                
usb 1-1: New USB device found, idVendor=0951, idProduct=1666, bcdDevice= 0.01                                                                                                               
usb 1-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3                                                                                                                           
usb 1-1: Product: DataTraveler 3.0                                                                                                                                                          
usb 1-1: Manufacturer: Kingston                                                                                                                                                             
usb 1-1: SerialNumber: E0D55EA5741CF420193535BC                                                                                                                                             
usb-storage 1-1:1.0: USB Mass Storage device detected                                                                                                                                       
scsi host0: usb-storage 1-1:1.0                                                                                                                                                             
scsi 0:0:0:0: Direct-Access     Kingston DataTraveler 3.0      PQ: 0 ANSI: 6                                                                                                                
sd 0:0:0:0: Attached scsi generic sg0 type 0                                                                                                                                                
sd 0:0:0:0: [sda] 60437492 512-byte logical blocks: (30.9 GB/28.8 GiB)                                                                                                                      
sd 0:0:0:0: [sda] Write Protect is off                                                                                                                                                      
sd 0:0:0:0: [sda] Write cache: disabled, read cache: enabled, doesn't support DPO or FUA                                                                                                    
 sda: sda1 sda2 sda3                                                                                                                                                                        
sd 0:0:0:0: [sda] Attached SCSI removable disk                                                                                                                                              
EXT4-fs (sda3): warning: mounting unchecked fs, running e2fsck is recommended                                                                                                               
EXT4-fs (sda3): mounted filesystem without journal. Opts: (null)                                                                                                                            
VFS: Mounted root (ext4 filesystem) on device 8:3.                                                                                                                                          
devtmpfs: mounted                                                                                                                                                                           
Freeing unused kernel memory: 5120K                                                                                                                                                         
Checked W+X mappings: passed, no W+X pages found                                                                                                                                            
Run /sbin/init as init process                                                                                                                                                              
random: fast init done                                                                                                                                                                      
INIT: version 2.25 booting                                                                                                                                                                  
INIT: No inittab.d directory found                                                                                                                                                          
stty: 'standard input': unable to perform all requested operations                                                                                                                          
[  OK  ] kernel-based file systems: /proc /sys /run                                                                                                                                         
[  OK  ]kernel runtime parameters...                                                                                                                                                        
[  OK  ]aarch64-kernel runtime parameters...                                                                                                                                                
[  OK  ]modules: ac battery button fan processor                                                                                                                                            
[  OK  ] LVM2 Metadata Daemon...                                                                                                                                                            
Populating /dev with device nodes...                                                                                                                                                        
[  OK  ] udev daemon...                                                                                                                                                                     
[  OK  ] root file system in read-only mode...                                                                                                                                              
Checking file systems...                                                                                                                                                                    
/dev/sda3 was not cleanly unmounted, check forced.                                                                                                                                          
/dev/sda3: 23478/104832 files (1.4% non-contiguous), 377685/419254 blocks                                                                                                                   
dosfsck 3.0.9, 31 Jan 2010, FAT32, LFN                                                                                                                                                      
/dev/sda1: 503 files, 41525/63355 clusters                                                                                                                                                  
dosfsck 3.0.9, 31 Jan 2010, FAT32, LFN                                                                                                                                                      
[ WARN ]2: 3 files, 76/16343 clusters                                                                                                                                                       
WARNING:                                                                                                                                                                                    
                                                                                                                                                                                            
File system errors were found and have been corrected.  You may want to double-check that everything was fixed properly.                                                                    
[  OK  ]ng root file system in read-write mode...                                                                                                                                           
[  OK  ]etc/mtab...                                                                                                                                                                         
[  OK  ] remaining file systems...                                                                                                                                                          
[  OK  ]ng all swap files/partitions...                                                                                                                                                     
Re-sizing root partition...                                                                                                                                                                 
resize2fs 1.44.4 (18-Aug-2018)                                                                                                                                                              
Filesystem at /dev/sda3 is mounted on /; on-line resizing required                                                                                                                          
old_desc_blocks = 1, new_desc_blocks = 4                                                                                                                                                    
The filesystem on /dev/sda3 is now 7513653 (4k) blocks long.                                                                                                                                
                                                                                                                                                                                            
[  OK  ] ramdisk file systems: /var/lock                                                                                                                                                    

Hello everyone,

Looks like companies are working on powerful arm soc for router use.

Here is one.

Amlogix A311D is Quad Core Cortex A73 and Dual core A53
This soc can handle most of the router use cases.

Hopefully they will send a sample to me but if devs are interested I can ask them to send you sample too.

1 Like

Yes, we would be interested in a sample.

However, just looking at the specs, this system would have to be very cheap to be a viable alternative to for example the IPFire Mini Appliance. Although it will be cheaper, I am not sure whether it is worth having only two interfaces with no chance for extension (I do not count USB as an option for networking).

The two NICs that are onboard seem to be at least be connected with PCIe which is a lot better than any USB hacks.

1 Like

This is also the case for the NanoPi R4S: one Native Gigabit Ethernet, and one PCIe Gigabit Ethernet.

Hi @anon87475738

Both NanoPi R1S H5 and NanoPi R2S are listed as not supported due to a missing bootloader.
https://wiki.ipfire.org/hardware/arm

Is the bootloader that IPFire requires available on the NanoPi R4S and have you successfully installed IPFire on it?

If yes then it would be good if you could update the wiki to add the installation details for it.

Unfortunately, I do not own the R4S.
I was not aware of the problem. Since there are OpenWRT images, I thought that IPFire was also possible with some work.

All 3 devices mentioned here have working upstream ubooy support.

Maybe its not been looked into as the linux kernel did not have those device support.

Maybe with the newer build it should have the files needed to make ipfire work on these devices.

Does the aarch64 core update 159 kernel-5.10 support rockchip?

Any thoughts on this SBC with an Amlogic A311D SoC?

Banana Pi BPI-M2S: A Raspberry Pi alternative with two Gigabit Ethernet ports, ARM Cortex-A73 cores and LPDDR4 RAM

1 Like

But i have not got it to compile because u-boot need a signed binary blob. So it is not really work yet.

1 Like

Yes this is the case with every arm device.
It will always need trusted firmware-a

Have you enabled rockchip configs in kernel? Then I can try it with my uboots.

https://git.trustedfirmware.org/TF-A/trusted-firmware-a.git/snapshot/trusted-firmware-a-2.5.tar.gz
Bl31.elf is needed from this pkg.

This is the one we use for rk3xxx.

1 Like