Dialectronics - the dialect of electronic communications





About Us

Our Mission

Minix

PowerPC

Lua

XCOFF Bootloader

Old World Macs

Open Firmware

Words

Journeys

Home Repair

Top Level




Minix 3.1.6

7/23/18: We've posted the source code for the Minix 3.1.6 rtl8111 driver for the RealTek 8111G chip on the Udoo Advanced x86 SBC. You will need rtl8111.c, rtl8111.h, pcireg.h, and the Makefile. The code assumes pcc is present and might not compile with ACK.

7/16/18: As mentioned on the home page, the cure for the bad e1000 ethernet driver in Minix 3.1.6 is to make sure the pci bus mastering bit is set. This code works:
e1000.c, line 396
/* enable bus mastering for dbdma  (1 << 4) */
/* enable memory write and invalidate (1 << 2) */
if (did == E1000_DEV_ID_82540EM) {
   u16_t cr = pci_attr_r16(devind, PCI_CR);
   pci_attr_w16(devind, PCI_CR, cr | ((1 << 2) | ( 1<< 4)));
}


We're not quite ready to release the source code for running Minix 3.1.6 on Udoo Advanced x86, but we can share some details. The system has been built with a combination of the native ACK compiler and a custom toolchain based on pcc, yasm, Minix's led/cv, and some custom shim code to convert from yasm's XDF object format ACK's object file format. Linking is done by led/cv. This is a 100% BSD-licensed toolchain (which builds itself).

Why Minix 3.1.6? We have been big fans of Minix for a long time, but we strongly disagreed with the decision to merge with NetBSD. Instead of griping and complaining, we decided to do our own thing. We started with the most recent version that didn't go down the road of excessively using BSD-style .mk files, which ultimately led to the merger with NetBSD. We didn't want to unfairly take from the volunter work that had been done afterwards, and by starting at this point, we feel that we've stuck with the work of the original (funded) Minix development team.

We needed native FPU execution instead of software emulation via gcc (and we wanted to exterminate any GPL'd code as quick as possible), so we ported pcc to the platform. Then we ported yasm for the assembler, since pcc and ACK's assembler were not compatible. We had to do some serious low-level stuff to get pcc and Minix to agree on how to use the registers (they disagreed over using one of the registers as scratch or preserved, that's a headache to debug), and some more to make the XDF relocations work with what led was expecting (ACK embeds the relocation address, XDF has a separate field). All of the C code in the microkernel compiles with pcc/yasm/led/cv, and most of the drivers do, too.

There's no USB, and disk I/O has to go through BIOS interrupts, so that's slow, but the system will boot off a USB stick, and it has run the disease modeling code we've written for our PhD research on mathematical models of vector-borne diseases. It only runs on one of the four cores (for now).

We've got an ethernet driver (rtl8111) to manage the RealTek 8111G chip on the Udoo, which we'll release soon (BSD-licensed, of course), and that has allowed us to grab the logs and produce proof of what we say. Enjoy!

Jun 21 05:23:09 10 syslogd: restart
Jun 21 05:23:09 10 kernel: bios_colums = 80, bios_rows = 24
Jun 21 05:23:09 10 kernel: scr_size = 2000, scr_lines = 25, scr_width = 80, nr_cons = 4
Jun 21 05:23:09 10 kernel: vid_base = 0xb8000, vid_size = 0x20000
Jun 21 05:23:09 10 kernel: scheduling idle clock system kernel pm vfs rs memory log tty ds mfs vm pfs init 
Jun 21 05:23:09 10 kernel: pre arch init
Jun 21 05:23:09 10 kernel: fpu detected; cr0: 33, emulation mode: off
Jun 21 05:23:09 10 kernel: APIC disabled, using legacy PIC
Jun 21 05:23:09 10 kernel: post arch init
Jun 21 05:23:09 10 kernel: 
Jun 21 05:23:09 10 kernel: MINIX 3.1.6. (branch-R3.1.6-r6084)
Jun 21 05:23:09 10 kernel: Copyright 2010, Vrije Universiteit, Amsterdam, The Netherlands
Jun 21 05:23:09 10 kernel: MINIX is open source software, see http://www.minix3.org
Jun 21 05:23:09 10 kernel: Initiating legacy i8253 timer
Jun 21 05:23:09 10 kernel: RS: do_up: using proc_name (from binary /bin/pci) 'pci'
Jun 21 05:23:09 10 kernel: RS: do_up: using label (custom) 'pci'
Jun 21 05:23:09 10 kernel: RS: do_up: I/O [cf8..cff]
Jun 21 05:23:09 10 kernel: RS: do_up: I/O [4d0..4d1]
Jun 21 05:23:09 10 kernel: RS: fork regular..
Jun 21 05:23:09 10 kernel: RS: publish_service: DS label registration done: pci -> 36571
Jun 21 05:23:09 10 kernel: RS: started '/bin/pci', major 0, pid 15, endpoint 36571, proc 13
Jun 21 05:23:09 10 kernel: pci_intel_init: Intel Braswell SoC Transaction Register (8086/2280)
Jun 21 05:23:09 10 kernel: probe_bus(0)
Jun 21 05:23:09 10 kernel: 0.0.0: Intel Braswell SoC Transaction Register (8086/2280)
Jun 21 05:23:09 10 kernel: Device index: 0
Jun 21 05:23:09 10 kernel: Subsystem: Vid 0x8086, did 0x7270
Jun 21 05:23:09 10 kernel: 	class Host bridge (6/0/0)
Jun 21 05:23:09 10 kernel: 0.2.0: Intel Braswell SoC Integrated Graphics Controller (8086/22B1)
Jun 21 05:23:09 10 kernel: Device index: 1
Jun 21 05:23:09 10 kernel: Subsystem: Vid 0x8086, did 0x7270
Jun 21 05:23:09 10 kernel: 	class VGA-compatible controller (3/0/0)
Jun 21 05:23:09 10 kernel: 	IRQ 7 for INTA
Jun 21 05:23:09 10 kernel: 	bar_0: 0x1000000 bytes at 0x90000000 memory, 64-bit
Jun 21 05:23:09 10 kernel: 	bar_2: 0x10000000 bytes at 0x80000000 prefetchable memory, 64-bit
Jun 21 05:23:09 10 kernel: 	bar_4: 64 bytes at 0x2000 I/O
Jun 21 05:23:09 10 kernel:  @0xd0 (0x00229001): capability type 0x1: PCI Power Management
Jun 21 05:23:09 10 kernel:  @0x90 (0x0000b005): capability type 0x5: Message Signaled Interrupts
Jun 21 05:23:09 10 kernel:  @0xb0 (0x01070009): capability type 0x9: (unknown type)
Jun 21 05:23:09 10 kernel: 0.19.0: Intel Braswell SoC SATA Controller (8086/22A3)
Jun 21 05:23:09 10 kernel: Device index: 2
Jun 21 05:23:09 10 kernel: Subsystem: Vid 0x8086, did 0x7270
Jun 21 05:23:09 10 kernel: 	class Mass storage controller (1/6/1)
Jun 21 05:23:09 10 kernel: 	IRQ 10 for INTA
Jun 21 05:23:09 10 kernel: 	bar_4: 32 bytes at 0x2060 I/O
Jun 21 05:23:09 10 kernel: 	bar_5: 0x800 bytes at 0x91427000 memory
Jun 21 05:23:09 10 kernel:  @0x80 (0x00007005): capability type 0x5: Message Signaled Interrupts
Jun 21 05:23:09 10 kernel:  @0x70 (0x4003a801): capability type 0x1: PCI Power Management
Jun 21 05:23:09 10 kernel:  @0xa8 (0x00100012): capability type 0x12: (unknown type)
Jun 21 05:23:09 10 kernel: 0.20.0: Intel Braswell SoC USB xHCI Controller (8086/22B5)
Jun 21 05:23:09 10 kernel: Device index: 3
Jun 21 05:23:09 10 kernel: Subsystem: Vid 0x8086, did 0x7270
Jun 21 05:23:09 10 kernel: 	class Serial bus controller (C/3/30)
Jun 21 05:23:09 10 kernel: 	IRQ 11 for INTA
Jun 21 05:23:09 10 kernel: 	bar_0: 0x10000 bytes at 0x91400000 memory, 64-bit
Jun 21 05:23:09 10 kernel:  @0x70 (0xc1c28001): capability type 0x1: PCI Power Management
Jun 21 05:23:09 10 kernel:  @0x80 (0x00860005): capability type 0x5: Message Signaled Interrupts
Jun 21 05:23:09 10 kernel: 0.26.0: Intel Braswell SoC Trusted Execution Engine (8086/2298)
Jun 21 05:23:09 10 kernel: Device index: 4
Jun 21 05:23:09 10 kernel: Subsystem: Vid 0x8086, did 0x7270
Jun 21 05:23:09 10 kernel: 	class Encryption/decryption controller (10/80/0)
Jun 21 05:23:09 10 kernel: 	IRQ 7 for INTA
Jun 21 05:23:09 10 kernel: 	bar_0: 0x100000 bytes at 0x91300000 memory
Jun 21 05:23:09 10 kernel: 	bar_1: 0x100000 bytes at 0x91200000 memory
Jun 21 05:23:09 10 kernel:  @0x80 (0x4803a001): capability type 0x1: PCI Power Management
Jun 21 05:23:09 10 kernel:  @0xa0 (0x00000005): capability type 0x5: Message Signaled Interrupts
Jun 21 05:23:09 10 kernel: 0.27.0: Intel Braswell SoC High Definition Audio Controller (8086/2284)
Jun 21 05:23:09 10 kernel: Device index: 5
Jun 21 05:23:09 10 kernel: Subsystem: Vid 0x8086, did 0x7270
Jun 21 05:23:09 10 kernel: 	class Multimedia device (4/3/0)
Jun 21 05:23:09 10 kernel: 	IRQ 10 for INTA
Jun 21 05:23:09 10 kernel: 	bar_0: 0x4000 bytes at 0x91410000 memory, 64-bit
Jun 21 05:23:09 10 kernel:  @0x50 (0xc8426001): capability type 0x1: PCI Power Management
Jun 21 05:23:09 10 kernel:  @0x60 (0x00800005): capability type 0x5: Message Signaled Interrupts
Jun 21 05:23:09 10 kernel: 0.28.0: Intel Braswell SoC PCI Express Port #1 (8086/22C8)
Jun 21 05:23:09 10 kernel: Device index: 6
Jun 21 05:23:09 10 kernel: Subsystem: Vid 0x0, did 0x0
Jun 21 05:23:09 10 kernel: 	class PCI-to-PCI bridge (6/4/0)
Jun 21 05:23:09 10 kernel: 	I/O window: base 0xf000, limit 0xfff, size -57344
Jun 21 05:23:09 10 kernel: 	Memory window: base 0xfff00000, limit 0xfffff, size 0x200000
Jun 21 05:23:09 10 kernel: 	Prefetchable memory window: base 0xfff00000, limit 0xfffff, size 0x200000
Jun 21 05:23:09 10 kernel:  @0x40 (0x01428010): capability type 0x10: (unknown type)
Jun 21 05:23:09 10 kernel:  @0x80 (0x00009005): capability type 0x5: Message Signaled Interrupts
Jun 21 05:23:09 10 kernel:  @0x90 (0x0000a00d): capability type 0xd: (unknown type)
Jun 21 05:23:09 10 kernel:  @0xa0 (0xc8030001): capability type 0x1: PCI Power Management
Jun 21 05:23:09 10 kernel: 0.28.2: Intel Braswell SoC PCI Express Port #3 (8086/22CC)
Jun 21 05:23:09 10 kernel: Device index: 7
Jun 21 05:23:09 10 kernel: Subsystem: Vid 0x0, did 0x0
Jun 21 05:23:09 10 kernel: 	class PCI-to-PCI bridge (6/4/0)
Jun 21 05:23:09 10 kernel: 	IRQ 10 for INTC
Jun 21 05:23:09 10 kernel: 	I/O window: base 0x1000, limit 0x1fff, size 4096
Jun 21 05:23:09 10 kernel: 	Memory window: base 0x91100000, limit 0x911fffff, size 0x100000
Jun 21 05:23:09 10 kernel: 	Prefetchable memory window: base 0x91000000, limit 0x910fffff, size 0x100000
Jun 21 05:23:09 10 kernel:  @0x40 (0x01428010): capability type 0x10: (unknown type)
Jun 21 05:23:09 10 kernel:  @0x80 (0x00009005): capability type 0x5: Message Signaled Interrupts
Jun 21 05:23:09 10 kernel:  @0x90 (0x0000a00d): capability type 0xd: (unknown type)
Jun 21 05:23:09 10 kernel:  @0xa0 (0xc8030001): capability type 0x1: PCI Power Management
Jun 21 05:23:09 10 kernel: 0.31.0: Intel Braswell SoC PCU (8086/229C)
Jun 21 05:23:09 10 kernel: Device index: 8
Jun 21 05:23:09 10 kernel: Subsystem: Vid 0x8086, did 0x7270
Jun 21 05:23:09 10 kernel: 	class ISA bridge (6/1/0)
Jun 21 05:23:09 10 kernel:  @0xe0 (0x100c0009): capability type 0x9: (unknown type)
Jun 21 05:23:09 10 kernel: 0.31.3: Intel Braswell SoC SMBus Audio Controller (8086/2292)
Jun 21 05:23:09 10 kernel: Device index: 9
Jun 21 05:23:09 10 kernel: Subsystem: Vid 0x8086, did 0x7270
Jun 21 05:23:09 10 kernel: 	class SMBus (C/5/0)
Jun 21 05:23:09 10 kernel: 	IRQ 10 for INTB
Jun 21 05:23:09 10 kernel: 	bar_0: 0x20 bytes at 0x9141c000 memory
Jun 21 05:23:09 10 kernel: 	bar_4: 32 bytes at 0x2040 I/O
Jun 21 05:23:09 10 kernel:  @0x50 (0x00030001): capability type 0x1: PCI Power Management
Jun 21 05:23:09 10 kernel: (warning) unsupported ISA bridge 8086/229C for bus 0
Jun 21 05:23:09 10 kernel: 0.28.0: PCI-to-PCI bridge: 8086/22C8
Jun 21 05:23:09 10 kernel: bus(table) = 1, bus(sec) = 1, bus(subord) = 1
Jun 21 05:23:09 10 kernel: probe_bus(1)
Jun 21 05:23:09 10 kernel: 0.28.2: PCI-to-PCI bridge: 8086/22CC
Jun 21 05:23:09 10 kernel: bus(table) = 2, bus(sec) = 2, bus(subord) = 2
Jun 21 05:23:09 10 kernel: probe_bus(2)
Jun 21 05:23:09 10 kernel: 2.0.0: Realtek RTL8168/RTL8111 (10EC/8168)
Jun 21 05:23:09 10 kernel: Device index: 10
Jun 21 05:23:09 10 kernel: Subsystem: Vid 0x10ec, did 0x123
Jun 21 05:23:09 10 kernel: 	class Ethernet controller (2/0/0)
Jun 21 05:23:09 10 kernel: 	IRQ 10 for INTA
Jun 21 05:23:09 10 kernel: 	bar_0: 256 bytes at 0x1000 I/O
Jun 21 05:23:09 10 kernel: 	bar_2: 0x10
Jun 21 05:23:09 10 kernel: 00 bytes at 0x91100000 memory, 64-bit
Jun 21 05:23:09 10 kernel: 	bar_4: 0x4000 bytes at 0x91000000 prefetchable memory, 64-bit
Jun 21 05:23:09 10 kernel:  @0x40 (0xffc35001): capability type 0x1: PCI Power Management
Jun 21 05:23:09 10 kernel:  @0x50 (0x00807005): capability type 0x5: Message Signaled Interrupts
Jun 21 05:23:09 10 kernel:  @0x70 (0x0202b010): capability type 0x10: (unknown type)
Jun 21 05:23:09 10 kernel:  @0xb0 (0x0003d011): capability type 0x11: (unknown type)
Jun 21 05:23:09 10 kernel:  @0xd0 (0x00000003): capability type 0x3: Vital Product Data
Jun 21 05:23:09 10 kernel: complete_bars: initial gap: [0x73a40000 .. 0xfe000000>
Jun 21 05:23:09 10 kernel: complete_bars: intermediate gap: [0x91427800 .. 0xfe000000>
Jun 21 05:23:09 10 kernel: I/O range = [0x2080..0x10000>
Jun 21 05:23:09 10 kernel: RS: initialization succeeded for service 36571
Jun 21 05:23:09 10 kernel: RS: do_up: using proc_name (from binary /bin/floppy) 'floppy'
Jun 21 05:23:09 10 kernel: RS: do_up: using label (custom) 'floppy'
Jun 21 05:23:09 10 kernel: RS: read_exec: copying exec image from: /bin/floppy
Jun 21 05:23:09 10 kernel: RS: do_up: IRQ 6
Jun 21 05:23:09 10 kernel: RS: do_up: I/O [3f0..3f7]
Jun 21 05:23:09 10 kernel: RS: do_up: I/O [0..f]
Jun 21 05:23:09 10 kernel: RS: do_up: I/O [81..81]
Jun 21 05:23:09 10 kernel: RS: fork_nb..
Jun 21 05:23:09 10 kernel: RS: publish_service: DS label registration done: floppy -> 73128
Jun 21 05:23:09 10 kernel: RS: started '/bin/floppy', major 2, pid 17, endpoint 73128, proc 12
Jun 21 05:23:09 10 kernel: RS: initialization succeeded for service 73128
Jun 21 05:23:09 10 kernel: RS: do_up: using proc_name (from binary /bin/bios_wini) 'bios_wini'
Jun 21 05:23:09 10 kernel: RS: do_up: using label (custom) 'bios_wini'
Jun 21 05:23:09 10 kernel: RS: read_exec: copying exec image from: /bin/bios_wini
Jun 21 05:23:09 10 kernel: RS: fork_nb..
Jun 21 05:23:09 10 kernel: RS: publish_service: DS label registration done: bios_wini -> 73130
Jun 21 05:23:09 10 kernel: RS: started '/bin/bios_wini', major 3, pid 20, endpoint 73130, proc 14
Jun 21 05:23:09 10 kernel: RS: initialization succeeded for service 73130
Jun 21 05:23:09 10 kernel: RS: do_up: using proc_name (from binary /sbin/mfs) 'mfs'
Jun 21 05:23:09 10 kernel: RS: do_up: using label (custom) 'fs_c0d0p0s0'
Jun 21 05:23:09 10 kernel: RS: fork regular..
Jun 21 05:23:09 10 kernel: RS: publish_service: DS label registration done: fs_c0d0p0s0 -> 36582
Jun 21 05:23:09 10 kernel: RS: started '/sbin/mfs', major 0, pid 28, endpoint 36582, proc 24
Jun 21 05:23:09 10 kernel: RS: initialization succeeded for service 36582
Jun 21 05:23:09 10 kernel: bios-d0: 3915776 sectors
Jun 21 05:23:09 10 kernel: bios-d1: 0 sectors
...
Jun 21 07:07:55 10 kernel: S: do_up: using proc_name (from binary /usr/sbin/rtl8111) 'rtl8111'
Jun 21 07:07:55 10 kernel: RS: do_up: using label (custom) 'rtl8111'
Jun 21 07:07:55 10 kernel: RS: do_up: PCI 10ec/8111
Jun 21 07:07:55 10 kernel: RS: do_up: PCI 10ec/8168
Jun 21 07:07:55 10 kernel: RS: fork regular..
Jun 21 07:07:55 10 kernel: RS: init_pci: calling pci_set_acl
Jun 21 07:07:55 10 kernel: PCI: got message from 2, type 0x311
Jun 21 07:07:55 10 kernel: PCI: do_acl: setting ACL for 36661 ('rtl8111') at entry 0
Jun 21 07:07:55 10 kernel: RS: init_pci: after pci_set_acl
Jun 21 07:07:55 10 kernel: RS: publish_service: DS label registration done: rtl8111 -> 36661
Jun 21 07:07:55 10 kernel: RS: started '/usr/sbin/rtl8111', major 0, pid 107, endpoint 36661, proc 103
Jun 21 07:07:55 10 kernel: rtl8111 main()
Jun 21 07:07:55 10 kernel: rtl8111 m.m_type = 0x20a 
Jun 21 07:07:55 10 kernel: rtl8111 m.m_type = 0x207 
Jun 21 07:07:55 10 kernel: RS: initialization succeeded for service 36661
Jun 21 07:07:55 10 kernel: PCI: got message from 36661, type 0x300
Jun 21 07:07:55 10 kernel: PCI: do_init: called by '36661'
Jun 21 07:07:55 10 kernel: PCI: got message from 36661, type 0x301
Jun 21 07:07:55 10 kernel: PCI: got message from 36661, type 0x30f
Jun 21 07:07:55 10 kernel: rtl8111#0: PCI: got message from 36661, type 0x310
Jun 21 07:07:55 10 kernel: Realtek RTL8168/RTL8111 (10ec/8168) at 2.0.0
Jun 21 07:07:55 10 kernel: PCI: got message from 36661, type 0x307
Jun 21 07:07:55 10 kernel: pci_reserve2: for proc 36661, adding I/O range [0x1000..0x10ff]
Jun 21 07:07:55 10 kernel: pci_reserve3: adding IRQ 10
Jun 21 07:07:55 10 kernel: PCI: got message from 36661, type 0x30a
Jun 21 07:07:55 10 kernel: PCI: got message from 36661, type 0x308
Jun 21 07:07:55 10 kernel: rtl8111#0: using I/O address 0x1000, IRQ 10
Jun 21 07:07:55 10 kernel: PCI: got message from 36661, type 0x309
Jun 21 07:07:55 10 kernel: PCI: got message from 36661, type 0x308
Jun 21 07:07:55 10 kernel: pci_find_cap: dev 0xa, header_type 0x0, ptr 0x34
Jun 21 07:07:55 10 kernel: PCI: got message from 36661, type 0x308
Jun 21 07:07:55 10 kernel: PCI: got message from 36661, type 0x308
Jun 21 07:07:55 10 kernel: pci_find_cap: dev 0xa, ptr 0x40, cap 0x1
Jun 21 07:07:55 10 kernel: PCI: got message from 36661, type 0x308
Jun 21 07:07:55 10 kernel: PCI: got message from 36661, type 0x308
Jun 21 07:07:55 10 kernel: pci_find_cap: dev 0xa, ptr 0x50, cap 0x5
Jun 21 07:07:55 10 kernel: PCI: got message from 36661, type 0x308
Jun 21 07:07:55 10 kernel: PCI: got message from 36661, type 0x308
Jun 21 07:07:55 10 kernel: pci_find_cap: dev 0xa, ptr 0x70, cap 0x10
Jun 21 07:07:55 10 kernel: rtl8111#0: PCI-Express found
Jun 21 07:07:55 10 kernel: PCI: got message from 36661, type 0x309
Jun 21 07:07:55 10 kernel: PCI: got message from 36661, type 0x30c
Jun 21 07:07:55 10 kernel: PCI: got message from 36661, type 0x309
Jun 21 07:07:55 10 kernel: rtl8111#0: bus mastering/invalidate set
Jun 21 07:07:55 10 kernel: PCI: got message from 36661, type 0x309
Jun 21 07:07:55 10 kernel: PCI: got message from 36661, type 0x309
Jun 21 07:07:55 10 kernel: PCI: got message from 36661, type 0x30c
Jun 21 07:07:55 10 kernel: rtl8111#0: ASPM disabled
Jun 21 07:07:55 10 kernel: rtl8111#0: PCI device is present, setting rl_*
Jun 21 07:07:55 10 kernel: rtl8111#0: Chip rev. 0x4c000000
Jun 21 07:07:55 10 kernel: rtl8111#0: MAC rev. 0x00000000
Jun 21 07:07:55 10 kernel: rtl8111#0: checking 8168G/8111G...match
Jun 21 07:07:55 10 kernel: this is where the RTL81111G chip would be configured
Jun 21 07:07:55 10 kernel: rl_reset_hw: (before reset) port = 0x1000, RL_CR = 0x0
Jun 21 07:07:55 10 kernel: rl_reset_hw: (after reset) port = 0x1000, RL_CR = 0x0
Jun 21 07:07:55 10 kernel: rtl8111#0: model: RTL8168G/8111G mac: 0x00000000
Jun 21 07:07:55 10 kernel: rtl8111#0: Ethernet address 0:c0:8:93:47:f6
Jun 21 07:07:55 10 kernel: rtl8111 m.m_type = 0x1003 
Jun 21 07:07:55 10 kernel: rtl8111 m.m_type = 0x20d 
Jun 21 07:07:55 10 kernel: rtl8111 m.m_type = 0x1003 
Jun 21 07:07:55 10 kernel: rtl8111#0: rl_flags = 0x200582fa
Jun 21 07:07:55 10 kernel: rtl8111#0: link up at 100 Mbps, full duplex
Jun 21 07:07:55 10 kernel: CONFIG0		: No Boot ROM
Jun 21 07:07:55 10 kernel: CONFIG1		: LED1 LED0 IOMAP MEMMAP VPD PME
Jun 21 07:07:55 10 kernel: CONFIG2		: AUX PCI-64-Bit
Jun 21 07:07:55 10 kernel: MII_CTRL	: ANE Full-duplex 1000 Mb/s
Jun 21 07:07:55 10 kernel: MII_STATUS	: 100BaseX-FD 100BaseX-HD 10Mbps-FD 10Mbps-HD Ext-stat res-0x80 MFPS ANC 
ANA Extended-capability
Jun 21 07:07:55 10 kernel: MII_ANA		: 0x0de1
Jun 21 07:07:55 10 kernel: MII_ANLPA	: 0x45e1
Jun 21 07:07:55 10 kernel: MII_ANE		: res-0x60 Loc-Next-Page-Able Page-Received LP-Auto-Neg-Able
Jun 21 07:07:55 10 kernel: MII_1000_CTRL	: 1000BaseT-FD
Jun 21 07:07:55 10 kernel: generic/ipr.c, 1178: ip[0] (ipr_chk_itab): addr 192.168.1.2 mask 255.255.255.0
Jun 21 07:07:55 10 kernel: generic/ipr.c, 464: ip[0] (ipr_chk_otab): addr 192.168.1.2 mask 255.255.255.0
Jun 21 07:07:55 10 kernel: generic/tcp.c, 553: tcp_put_pkt: using address 192.168.1.2, netmask 255.255.255.0, 
mtu 1500
Jun 21 07:07:55 10 kernel: generic/udp.c, 938: udp_ip_arrived: using address 192.168.1.2
Jun 21 07:07:55 10 kernel: rtl8111 m.m_type = 0x207 
Jun 21 07:07:55 10 kernel: rtl8111 m.m_type = 0x20c 
Jun 21 07:07:55 10 kernel: rl_readv_s: skipping to suspend
Jun 21 07:07:55 10 kernel: rl_readv_s: suspending/replying
Jun 21 07:07:55 10 kernel: generic/ipr.c, 1178: ip[0] (ipr_chk_itab): addr 192.168.1.2 mask 255.255.255.0
Jun 21 07:07:55 10 kernel: generic/ipr.c, 464: ip[0] (ipr_chk_otab): addr 192.168.1.2 mask 255.255.255.0
Jun 21 07:07:55 10 kernel: generic/tcp.c, 553: tcp_put_pkt: using address 192.168.1.2, netmask 255.255.255.0, 
mtu 1500
Jun 21 07:07:55 10 kernel: generic/udp.c, 938: udp_ip_arrived: using address 192.168.1.2
...
Jul  3 10:59:42 192 sshd[128]: Accepted password for root from 192.168.10.248 port 61957 ssh2
Jul  3 11:01:13 192 sshd[204]: Accepted password for root from 192.168.10.248 port 61958 ssh2

Some feedback from the toolchain:
# pcc --version
Portable C Compiler 1.2.0.DEVEL 20171212 for i686-pc-minix3
# which pcc
/usr/local/bin/pcc
# file /usr/local/bin/pcc
/usr/local/bin/pcc: MINIX-PC 32-bit executable, sep I&D not stripped
# yasm --version
yasm 1.3.0
Compiled on Mar  9 2018.
Copyright (c) 2001-2014 Peter Johnson and other Yasm developers.
Run yasm --license for licensing overview and summary.
# cat /etc/hostname.file 
192.168.10.86
# cat /etc/inet.conf      
eth0 rtl8111 0 { default; };
# ifconfig -a             
/dev/ip0: address 192.168.10.86 netmask 255.255.255.0 mtu 1500
# ls /usr/sbin/rtl*
/usr/sbin/rtl8111   /usr/sbin/rtl8139   /usr/sbin/rtl8169
Hopefully that satisfies everyone's doubt.

(If you want to contact tim, you know the routine - gtkelly at this domain.)