Table of Contents
The ASUS KCMA-D8, often referred to as D8, is the KGPE-D16's “little brother” with a smaller, ATX board format and AMD's C32 socket (instead of the G34 socket for the KGPE-D16. Southbridge/northbridge and platform are similar to the KGPE-D16; both had been ported to coreboot with only small differences in source code.
It is also useful for a router/firewall or secure applications device as it has an IOMMU and compatible low wattage CPU's such as the 35W Opteron 42xxEE series.
FSF RYF certfification
Vikings made built-to-order workstations and offers part sets (mainboard/CPU/RAM etc. for DYI builds) based on the ASUS KCMA-D8 mainboard together with coreboot and removal of AMD PSP back doors until April 2021.
The D8 Workstation has been FSF RYF certfied on February 7, 2019.
The Vikings D8 Mainboard has been FSF RYF certfified on 7 February 2019 as well.
The ASUS KCMA-D8 mainboard is compatible with all available Opteron 4100 CPUs and depending on the board revision also with all available Opteron 4200/4300 CPUs (see information below).
Opteron 4100 not recommended
While working it is not recommended; IOMMU missing. In addition, it has not yet been tested; it may or may not work.
Opteron 4200/4300 recommended
The Opteron 4200 series CPUs works well, even without CPU microcode updates and with hardware virtualization.
The Opteron 4300 series CPUs also work well, are faster than their Opteron 4200 counterparts and may offer more CPU flags. However they require CPU microcode updates for stable operation.
BIOS version 2001 (or later) required for Opteron 4200/4300
The Opteron 4200/4300 series only work with board revisions starting with specific board revision/serial number/BIOS version: The serial number B9S2* or above is required. B means year, B=2011, C=2012…; 9 means month, 1…9, A, B, C.
The sticker with the serial number is located on the ATXPWR1 24-pin power connector.
If your boards serial number is B9S2* or above, verify that BIOS version 2001 (or later) is installed. Otherwise please update your BIOS: http://www.asus.com/Server_Workstation/Server_Motherboards/KCMAD8/#download
Be aware that other sources of hardware (ebay, aliexpress etc.) may ship you an older, unusable board. Make sure to inquire prior purchasing from sellers you don't trust.
Vikings only sells KCMA-D8 mainboards compatible with the Opteron 4200/4300 CPUs.
coreboot related information
If your board does not use coreboot, you won't be affected.
For general info regarding fancontrol please see fancontrol.
Limited thermal management / CPU cooling situation
TL;DR: If you have two HSFs installed, they will always have the same fan speed. If you want to rely on PWM with the KCMA-D8, we recommend using the thermal sensors of the CPU that is the warmest, depending on how you set your airflow.
The thermal management hardware of the KCMA-D8 is somewhat unusual and limited. It supports both 4-pin and 3-pin fans, however even though it contains a PWM controller with 8 hardware channels ASUS has only wired up two PWM channels to the fan connectors. To make matters worse, PWM channel 1 is routed to all 4-pin fans while PWM channel 2 is routed to all 3-pin fans.
For these reasons we recommend using quiet fixed speed (3-pin) fans (e.g. the Noctua NH-U9DO HSF). As of ~2020 these HSFs are only available on the second hand market. Installing a water cooling system is another option, which should still be available from select sources (such as the Vikings Shop).
RAM testing is done against the latest coreboot release.
Vikings is not testing this target against Libreboot due to the age of Libreboots code base. There has been **a lot** of progress on RAM initialization in coreboot since then, making the compatible module list a bit longer.
The following RAM models and configurations have been tested and are know to work as of the stated version/Git revision.
|Manufacturer||Model||Voltage||Max tested RAM||Size||Speed||Type||ECC||Populated Slots||CPU||Mainboard Type||Firmware|
|Kingston||KVR16E11/8 1 (Discontinued)||1.5V||32GB||8GB||DDR3-1600||Unbuffered||Yes||A2 / A1 / B2 / B1||1x 4284||KCMA-D8 Rev. 1.03, 1.02||coreboot-4.09, coreboot-4.11|
|Crucial||CT102472BA160B.18FED||1.5V||8GB||8GB (not working with more than 1 module)||DDR3-1600||Unbuffered||Yes||A1||1x 4284||KCMA-D8 Rev. 1.03, 1.02||coreboot-4.11|
|Crucial||CT102464BD160B.C16FED 2||1.35V||32GB||8GB||DDR3-1600||Unbuffered||No||A1,A2,B2,B1||1x 4284||KCMA-D8 Rev. 1.02||coreboot-4.11|
|Transcend||TS1GLK72V6H||1.5V||48GB||8GB||DDR3-1600||Unbuffered||Yes||A2,A1,B2,B1;C2,C1||2x 4256EE||KCMA-D8 Rev. 1.02||coreboot-4.11|
Tested not working
|Manufacturer||Model||Voltage||RAM installed||Size||Speed||Type||ECC||Populated Slots||CPU||Mainboard Type||Firmware|
|Crucial||CT102472BD160B.18FED 3||1.35V||8GB||8GB||DDR3-1600||Unbuffered||Yes||A2||1x 4284||KCMA-D8 Rev. 1.03, 1.02||coreboot-4.11|
|Kingston||KVR16R11D4/16||1.5V||16GB||16GB||DDR3-1600||Registered||Yes||A2||1x 4284||KCMA-D8 Rev. 1.02||coreboot-4.11|
|Hynix||HMT31GR7BFR4C-H9||1.5V||8GB||8GB||DDR3-1333||Registered||Yes||A2||1x 4284||KCMA-D8 Rev. 1.02||coreboot-4.11|
|Micron||MT36KSF2g72PZ-1g6n1lf||1.5V||16GB||16GB||DDR3-1600||Registered||Yes||A2||1x 4284||KCMA-D8 Rev. 1.03, 1.02||coreboot-4.11|
|Kingston||KVR16R11D4/16HA||1.5V||16GB||16GB||DDR3-1600||Registered||Yes||A2||1x 4284||KCMA-D8 Rev. 1.02||coreboot-4.11|
|Micron||MT18KSF1G72AZ-1G6E1ZE||1.5V||8GB||8GB||DDR3-1600||Unbuffered||Yes||A2||1x 4284||KCMA-D8 Rev. 1.02||coreboot-4.11|
On-board SATA adapter
Although the KCMA-D8 board has 6 physical SATA ports, only 4 of them will work.
User report (Almkglor): Possibly your best bet is to look at the FSF's RYF page for Host Bus Adapters (HBAs). As of April 2021 it only has one card, one based on ASMedia ASM1061, a good cheap chipset but only has 2 ports. You could add port multipliers so you get 4 SATA drives on those 2 ports, but those tend to reduce reliability (the port multiplier is a separate card, another point of failure along the way), the port multiplier card has to be placed somewhere (and there is no convenient place in most casings for it), and the multiplied ports share the bandwidth of a single port. Do note that many cheap 4-port PCI-to-SATA boards are just the ASM1061 (or similar 2-port chipset) with two port multiplier chips on them, so go for the definitely FSF RYF-certified one instead.
This user also reports: I have used is JMB585, which supports 5 SATA3 (6Gb/s) ports; I got a cheap card which uses this chipset, and it works with the Vikings KCMA-D8 I bought in early 2020. The mainboard cannot boot from any disks in the controller, but once booted, Linux-libre (5.10.29) could detect the disks on the board (they will be
/dev/sde onwards if you already filled the 4 ports on the mainboard). Do note that the
hwmon* ordering changed, so it may still require you to regenerate your fancontrol settings. Each port (should) get its own SATA3 bandwidth, though the JMB585 is constrained to using only 2x PCI-e lanes, and the KCMA-D8 board is constrained to PCI-e 2.0 at 4Gb/s per lane (JMB585 supports 3.0 at 8GB/s per lane), so expect a 8Gb/s bandwidth cap once you start using multiple drives simultaneously. An issue is that the card I got seems to delay boot by 10 seconds or so; I suspect there is proprietary firmware that is trying to display the logo of the card manufacturer, so if that is an issue, you should definitely use the FSF-RYF-approved card above instead. The JMB585 has a reputation of running hot, so you may need to add more case fans and pick a card that has a heat sink on the chip.
Various notes about the KCMA-D8
Making GNU GRUB visible at boot time
Most distributions nowadays will install a graphical GNU GRUB menu, often with a logo of the distribution in the background. On the KCMA-D8 this graphical menu will not appear and you will just see a “Welcome to GRUB!” message, then, if the distribution puts a timeout for the first GNU GRUB menu item (most do, for a timeout of 5 seconds), suddenly it will switch to booting after the timeout.
What is actually happening is that the coreboot installed on the Vikings KCMA-D8 does not have support for the VGA graphical mode that GNU GRUB is trying to use. This is because support for VGA is via a binary blob with unknown sources, thus by policy Vikings does not include it. GNU GRUB will still poke into the VGA memory and display the GNU GRUB menu there, but because the VGA isn't enabled, you end up seeing nothing.
In order to get a boot menu, you need to set
terminal_output console into your
grub.cfg file somehow. This tells GNU GRUB to use the ordinary text mode. This will be in a low-resolution 80×25 text mode, but at least lets you actually see the boot menu. This is useful if the distribution supports some way to return to older versions of the distribution, or older kernels, in case of some unexpected incompatibility or bug.
The “correct” way to set this will vary depending on your OS distribution. On many Debian-based distributions, there will be a
/etc/default/grub file that contains a
GRUB_TERMINAL_OUTPUT= line, which you will have to uncomment and set to
console. On others, the line will instead be
GRUB_TERMINAL=, which you should set to
console. On Guix System, the
bootloader-configuration form should include a
(terminal-outputs '(console)) field, but take note of bug#47442. Then run
sudo update-grub to update the
grub.cfg file, or
sudo guix system reconfigure for Guix System. You could edit
/boot/grub/grub.cfg directly, but that is likely to be overwritten when you update the kernel version.
RAM init issues
On some occasions (approx. one in three), the D8 will not POST due to the RAM initialization process failing even with RAM from the RAM HCL. This has been the case since the D8 was supported by coreboot. On some boards this problem doesn't exist at all. To our knowledge it has yet to be established why this is the case.
The only existing workaround is to reset the board if it does not start after a certain time when a POST would be expected.
ASUS PIKE 2008 SAS RAID card not working on KCMA-D8
ASUS PIKE 2008 cards (based on the Broadcom 2008 chipset) reportedly do not work on the KCMA-D8 with Coreboot. ASUS PIKE 2008 works on the KCMA-D8 with the manufacturer's BIOS, but has proven to be unreliable in the Vikings lab; sometimes the HBA fell off the bus. We therefore do not recommend using the PIKE 2008 SAS RAID card.