summaryrefslogtreecommitdiff
path: root/content/post/libre-pc-hw-selection.en.blogc
diff options
context:
space:
mode:
Diffstat (limited to 'content/post/libre-pc-hw-selection.en.blogc')
-rw-r--r--content/post/libre-pc-hw-selection.en.blogc107
1 files changed, 107 insertions, 0 deletions
diff --git a/content/post/libre-pc-hw-selection.en.blogc b/content/post/libre-pc-hw-selection.en.blogc
new file mode 100644
index 0000000..3f59d11
--- /dev/null
+++ b/content/post/libre-pc-hw-selection.en.blogc
@@ -0,0 +1,107 @@
+TITLE: PC on Libre/Free Software: hardware selection, RockPro64
+DATE: 2021-11-11
+TAGS: aarch64 rockpro64 sbc hardware hw
+-------------------------
+I've been using a [libreboot](https://libreboot.org)-ed ThinkPad T500, but USB
+system started to show its age - only one port works, and it's a random one on
+each boot.
+
+Started to look for a replacement with these requirements:
+
+* Supported by Libre/Free Software - [linux-libre]
+ (https://www.fsfla.org/ikiwiki/selibre/linux-libre), upstream U-boot without
+ vendor blobs
+* Ability to install OS to SATA/NVMe drive. SD/eMMC/USB are too
+ slow/unreliable
+* Sharing Internet connection via twisted pair and WiFi
+* Working Bluetooth
+* Upstream software: linux-libre, U-boot. I don't want to install forks of
+ outdated versions.
+
+Main candidates:
+
+* [Blackbird](https://www.raptorcs.com/content/BK1B02/intro.html), POWER9
+ CPU. Has a BMC, all firmware sources are available. Firmware for built-in
+ NIC is in development, described [here]
+ (https://wiki.raptorcs.com/wiki/BCM5719). Drawbacks are price and the fact
+ that you can't order it (logistical problems due to covid, [according to
+ Talospace]
+ (https://www.talospace.com/2021/02/blackbird-supply-chain-likely-to-improve.html))
+* [MNT Reform](https://mntre.com/reform). ARM64 laptop, no vendor blobs except
+ 16KiB one to initialize RAM. Shipping next year
+* [RockPro64](https://wiki.pine64.org/wiki/ROCKPro64) - RK3399 SBC, 4G RAM,
+ good-enough CPU (2xA72 + 4xA53), PCIe x4, 4xUSB, 1xRJ-45 (1 Gbit/s). [Gentoo
+ approves](https://wiki.gentoo.org/wiki/PINE64_ROCKPro64)
+* [Gigabyte GA-G41M-ES2L]
+ (https://www.gigabyte.com/Motherboard/GA-G41M-ES2L-rev-10) for
+ [libreboot treatment]
+ (https://libreboot.org/docs/hardware/ga-g41m-es2l.html)
+* [HoneyComb LX2](https://developer.solid-run.com/knowledge-base/honeycomb-lx2k)
+ aarch64, 16 A72 cores, a full-fledged motherboard. More expensive than
+ RockPro64 (it has much more functionality). I couldn't find if it requires
+ vendor blobs, and it's not in U-boot repo (by name)
+
+I chose RockPro64. Pine64 sells a SATA card for it but it uses an ASM chip.
+Judging by forum threads and my experience ASM chips are not reliable - my
+mPCIe card on ASM1061 works with HDD but not SSD for some reason. Found [this
+card](https://www.pc-adapter.net/product/874.html) - 4 ports, [Marvell
+88SE9215]
+(https://www.marvell.com/products/system-solutions/sata-controllers/pcie-2-sata-controllers.html)
+chip, supported by Linux. Bluetooth and WiFi adapters that do not require
+vendor blobs were found on [H-node](https://h-node.org) (an excellent
+resource).
+
+Resulting BOM:
+
+* SATA controller PCE4SAT-M02 (PCIe)
+* Bluetooth controller Asus BT400 (USB)
+* WiFi D-Link DWA-126 (USB) - Access Point mode
+* Ethernet D-Link Dub-E100 100Mbit/s (USB) - for ISP connection
+* 2 USB hubs
+* Chipset cooler Zalman ZM-NB32J - fits, here is an [old review]
+ (https://www.overclockersclub.com/reviews/zalmanzmnb32j)
+* Aluminum box 155x85x120 mm
+* Regular PC PSU (I already had one)
+
+DIY power connector Molex -> DC barrel:
+
+![power-molex-barrel.jpg](../../assets/power-molex-barrel.jpg)
+
+Bolted a small aluminum plate to SATA card to hold the cables:
+
+
+![rockpro64-sata-1](../../assets/sata-1.jpg)
+
+***
+
+![rockpro64-sata-2](../../assets/sata-2.jpg)
+
+***
+
+More photos:
+
+![rockpro64-hw-2](../../assets/rockpro64-hw-hdmi.jpg)
+
+***
+
+![rockpro64-hw-2](../../assets/rockpro64-hw-usb.jpg)
+
+***
+
+![rockpro64-hw-2](../../assets/rockpro64-hw-2.jpg)
+
+***
+
+![rockpro64-hw-3](../../assets/rockpro64-hw-3.jpg)
+
+***
+
+![rockpro64-hw-4](../../assets/rockpro64-hw-4.jpg)
+
+***
+
+![rockpro64-hw-5](../../assets/rockpro64-hw-5.jpg)
+
+***
+
+Next up: installing U-boot and Arch Linux ARM.