Discussion:
Oversimplification
George Mitchell
2021-05-30 21:49:01 UTC
Permalink
I've never been shy about oversimplifying complex questions, so here
goes: What's the ARM system that presents the least hassle to a
prospective FreeBSD user? Here's what I mean by low hassle:

1. Widely available.
2. Runs some standard FreeBSD image with minimal (or no) tweaking.
3. I suspect ARM64 means less hassle than ARM32.
4. Friendly to an external high-speed (at least USB 3; possibly SATA?)
disk.
5. Hopefully 8GB on-board memory, though 4GB is probably okay if high
speed swapping is available (see point 4).
6. Affordable, but not cheap.

And next on my Santa list ... -- George
George Mitchell
2021-06-02 17:34:58 UTC
Permalink
On Sun, 30 May 2021 17:49:01 -0400, George Mitchell
Post by George Mitchell
I've never been shy about oversimplifying complex questions, so here
goes: What's the ARM system that presents the least hassle to a
1. Widely available.
2. Runs some standard FreeBSD image with minimal (or no) tweaking.
3. I suspect ARM64 means less hassle than ARM32.
4. Friendly to an external high-speed (at least USB 3; possibly SATA?)
disk.
5. Hopefully 8GB on-board memory, though 4GB is probably okay if high
speed swapping is available (see point 4).
6. Affordable, but not cheap.
And next on my Santa list ... -- George
Did you consider RockPro64 from pine64.com? Two models are available,
with 2 GB RAM and 4 GB RAM. There is PCIe x4 slot, USB ports (3.0 and
2.0, four total), so your prerequisites are probably met. Also, you can
download FreeBSD-13.0-RELEASE-arm64-aarch64-ROCKPRO64.img.xz from
FreeBSD ftp site and start.
I could test it in past for some days and it worked. I did not have
opportunity to test what could be connected to PCIe slot, but from the
same vendor some cards could be had as well - dual SATA-II or M.2/NGFF
interface card.
Just one a bit odd detail using stock image - console line speed was
1.5 Mb/s. I spent some time figuring this. 4 GB version currently out
of stock, unfortunately.
They are preparing Quartz64 card, up to 8 GB RAM, no ETA yet.
Regards,
Milan
Thanks for the response! -- George
Peter Jeremy via freebsd-arm
2021-06-03 06:20:13 UTC
Permalink
Post by George Mitchell
I've never been shy about oversimplifying complex questions, so here
goes: What's the ARM system that presents the least hassle to a
1. Widely available.
2. Runs some standard FreeBSD image with minimal (or no) tweaking.
3. I suspect ARM64 means less hassle than ARM32.
4. Friendly to an external high-speed (at least USB 3; possibly SATA?)
disk.
5. Hopefully 8GB on-board memory, though 4GB is probably okay if high
speed swapping is available (see point 4).
6. Affordable, but not cheap.
I'll second Milan's followup. I have a 4GB RockPro64 with the
dual-SATA PCIe card and am quite happy with it. It also supports
both USB-3 and USB-C, though I haven't experimented with either.

Note that the WiFi/Bluetooth module for the RockPro64 uses SDIO,
and the combination isn't yet supported by FreeBSD.

I also have a BananaPi M1, which has an integral SATA port but I've
never managed to get the SATA to work.
--
Peter Jeremy
Peter Jeremy via freebsd-arm
2021-06-03 07:15:30 UTC
Permalink
I'll second Milan's followup. I have a 4GB RockPro64 with the
dual-SATA PCIe card and am quite happy with it. It also supports
both USB-3 and USB-C, though I haven't experimented with either.
Just out of curiosity - do you mean SATA card from pine64.org shop? Was
some extra steps required to make it work? Could you share relevant
lines from dmesg output?
Yes, this was the pine64.org card - I've build a PineNAS, though I'm
still trying to work out how to set it up the way I want. The card
doesn't need any special configuration. Note that the RockPro64
doesn't support booting from SATA.

pcib0: <Rockchip PCIe controller> mem 0xf8000000-0xf9ffffff,0xfd000000-0xfdffffff irq 6,7,8 on ofwbus0
pci0: <PCI bus> on pcib0
pcib1: <PCI-PCI bridge> at device 0.0 on pci0
pcib0: route pin 1 for device 0.0 to 78
ahci0: <ASMedia ASM1062 AHCI SATA controller> irq 78 at device 0.0 on pci1
ahci0: AHCI v1.20 with 2 6Gbps ports, Port Multiplier supported
ahci0: quirks=0xc00000<NOCCS,NOAUX>
ahcich0: <AHCI channel> at channel 0 on ahci0
ahcich1: <AHCI channel> at channel 1 on ahci0
ada0 at ahcich0 bus 0 scbus0 target 0 lun 0
ada0: <ST8000DM004-2CX188 0001> ACS-3 ATA SATA 3.x device
ada0: 600.000MB/s transfers (SATA 3.x, UDMA6, PIO 8192bytes)
ada1 at ahcich1 bus 0 scbus1 target 0 lun 0
ada1: <ST8000DM004-2CX188 0001> ACS-3 ATA SATA 3.x device
ada1: 600.000MB/s transfers (SATA 3.x, UDMA6, PIO 8192bytes)

Note that I'm getting occasional CRC errors with those disks, though I
wasn't with some older disks. I haven't dug into whether the newer
Seagate disks are fussier or the cable is marginal.

I am seeing ~160MBps on one channel and 190MBps cumulative across
both channels.
Note that the WiFi/Bluetooth module for the RockPro64 uses SDIO,
and the combination isn't yet supported by FreeBSD.
Well, it would be nice to get it to working state... no idea how much
work that is.
I wasn't interested in the WiFi so I didn't worry too much. See
https://wiki.freebsd.org/SDIO for the latest information (though it
may be out of date).
--
Peter Jeremy
Søren Schmidt
2021-06-03 08:24:24 UTC
Permalink
Post by Peter Jeremy via freebsd-arm
I'll second Milan's followup. I have a 4GB RockPro64 with the
dual-SATA PCIe card and am quite happy with it. It also supports
both USB-3 and USB-C, though I haven't experimented with either.
Just out of curiosity - do you mean SATA card from pine64.org shop? Was
some extra steps required to make it work? Could you share relevant
lines from dmesg output?
Yes, this was the pine64.org card - I've build a PineNAS, though I'm
still trying to work out how to set it up the way I want. The card
doesn't need any special configuration. Note that the RockPro64
doesn't support booting from SATA.
If you install u-boot to the SPI you can boot from any media, SATA/NVMe/USB/SD/MMC.

I have patches for the pinebook pro that also works for the rockpro64 at:

https://people.freebsd.org/~sos/PinebookPro/ <https://people.freebsd.org/~sos/PinebookPro/>

YMMV.

--
SÞren Schmidt
***@deepcore.dk / ***@freebsd.org
"So much code to hack, so little time"
George Mitchell
2021-06-03 17:55:50 UTC
Permalink
Post by Peter Jeremy via freebsd-arm
Post by George Mitchell
I've never been shy about oversimplifying complex questions, so here
goes: What's the ARM system that presents the least hassle to a
1. Widely available.
2. Runs some standard FreeBSD image with minimal (or no) tweaking.
3. I suspect ARM64 means less hassle than ARM32.
4. Friendly to an external high-speed (at least USB 3; possibly SATA?)
disk.
5. Hopefully 8GB on-board memory, though 4GB is probably okay if high
speed swapping is available (see point 4).
6. Affordable, but not cheap.
I'll second Milan's followup. I have a 4GB RockPro64 with the
dual-SATA PCIe card and am quite happy with it. It also supports
both USB-3 and USB-C, though I haven't experimented with either.
Note that the WiFi/Bluetooth module for the RockPro64 uses SDIO,
and the combination isn't yet supported by FreeBSD.
I also have a BananaPi M1, which has an integral SATA port but I've
never managed to get the SATA to work.
Thanks for the additional data point! -- George
Daniel Engberg
2021-06-03 22:28:20 UTC
Permalink
Hi,

Just wanted to point out that there's is a small PCIe compatibility
table over at the wiki page and you're free to contribute. I have
ASM1166 card laying here
(https://www.silverstonetek.com/product.php?pid=973&area=en) but due to
lack of time I haven't been able to test it out yet.
https://wiki.freebsd.org/arm/RockChip#Tested_PCIe_devices_on_RockPro64

Regarding Pine64s 2-port SATA card you probably want to look for
something newer using the ASM1062 chipset (at least).

Best regards,
Daniel

Loading...