From 9def4de1c21f8d42d0957173dc9eb6b2c32ee30d Mon Sep 17 00:00:00 2001 From: Bill Nguyen Date: Mon, 4 Nov 2024 17:15:03 +1100 Subject: [PATCH] add successful bootup log Signed-off-by: Bill Nguyen --- examples/net/README.md | 70 +++++++++++++++++++++++++++++++++++++++++- 1 file changed, 69 insertions(+), 1 deletion(-) diff --git a/examples/net/README.md b/examples/net/README.md index 91177906..9d025c25 100644 --- a/examples/net/README.md +++ b/examples/net/README.md @@ -22,4 +22,72 @@ The example currently works on the following platforms: * HardKernel Odroid-C4 Things to note when using the network UIO driver: -- You need to map in the control queues as uncached in the guest and native virtualisers. This is because Linux treats UIO regions as device memory thus map them uncached to userspace. \ No newline at end of file +- You need to map in the control queues as uncached in the guest and native virtualisers. This is because Linux treats UIO regions as device memory thus map them uncached to userspace. + +## Compilation +To compile this example, run: +``` +make MICROKIT_SDK= MICROKIT_BOARD=odroidc4 MICROKIT_CONFIG=release +``` + +### Boot +On a successful boot, your console will look like this: +``` +[ 0.729626] Run /init as init process +[ 0.729712] with arguments: +[ 0.729781] /init +[ 0.729836] with environment: +[ 0.729905] HOME=/ +[ 0.729962] TERM=linux +[ 0.730018] earlyprintk=serial +Starting syslogd: OK +Starting klogd: OK +Running sysctl: OK +Saving random seed: [ 4.917479] random: crng init done +OK +Starting network: OK +1: lo: mtu 65536 qdisc noqueue qlen 1000 + link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 +2: eth0: mtu 1500 qdisc noop qlen 1000 + link/ether 00:1e:06:4a:35:e4 brd ff:ff:ff:ff:ff:ff +[ 5.149491] meson8b-dwmac ff3f0000.ethernet eth0: PHY [mdio_mux-0.0:00] driver [RTL8211F Gigabit Ethernet] (irq=POLL) +[ 5.150105] meson8b-dwmac ff3f0000.ethernet eth0: Register MEM_TYPE_PAGE_POOL RxQ-0 +[ 5.157500] meson8b-dwmac ff3f0000.ethernet eth0: No Safety Features support found +[ 5.157641] meson8b-dwmac ff3f0000.ethernet eth0: PTP not supported by HW +[ 5.158049] meson8b-dwmac ff3f0000.ethernet eth0: configuring for phy/rgmii link mode +[ 10.308629] meson8b-dwmac ff3f0000.ethernet eth0: Link is Up - 1Gbps/Full - flow control off +ethtool -K eth0 gso off +ethtool -K eth0 gro off +ethtool -K eth0 tx off rx off +UIO(NET): *** Starting up +UIO(NET): *** Network interface: eth0 +UIO(NET): *** Setting up raw promiscuous socket +[ 13.203479] device eth0 entered promiscuous mode +UIO(NET): *** Creating epoll +UIO(NET): *** Binding socket to epoll +UIO(NET): *** Mapping in sDDF control and data queues +UIO(NET): total control + data size is 0xe00000 +UIO(NET): *** Setting up sDDF control and data queues +UIO(NET): rx_free_drv = 0x0xffff989ae000 +UIO(NET): rx_active_drv = 0x0xffff98bae000 +UIO(NET): tx_free_drv = 0x0xffff98dae000 +UIO(NET): tx_active_drv = 0x0xffff98fae000 +UIO(NET): rx_data_drv = 0x0xffff991ae000 +UIO(NET): tx_data_drv cli0 = 0x0xffff993ae000 +UIO(NET): tx_data_drv cli1 = 0x0xffff995ae000 +UIO(NET): *** Setting up UIO TX and RX interrupts from VMM "incoming" +UIO(NET): *** Binding UIO TX and RX incoming interrupts to epoll +UIO(NET): *** Setting up UIO data passing between VMM and us +UIO(NET): RX paddr: 0x0x8000000 +UIO(NET): TX cli0 paddr: 0x0x8200000 +UIO(NET): TX cli1 paddr: 0x0x8600000 +UIO(NET): *** Setting up UIO TX and RX interrupts to VMM "outgoing" +UIO(NET): *** Waiting for RX virt to boot up +UIO(NET): *** All initialisation successful, now sending all pending TX active before we block on events +UIO(NET): *** All pending TX active have been sent thru the raw sock, entering event loop now. +UIO(NET): *** You won't see any output from UIO Net anymore. Unless there is a warning or error. +LWIP|NOTICE: DHCP request for client0 returned IP address: 172.16.1.250 +LWIP|NOTICE: DHCP request for client1 returned IP address: 172.16.1.251 +``` + +Though the MAC and IP addreses would be different of course. There will be a several seconds delay between the Linux userspace network driver initialisation and LWIP DHCP completion.