Commit 8a983eec authored by Grant Ramsay's avatar Grant Ramsay Committed by Carles Cufi
Browse files

boards: arm64: Add networking support to qemu_cortex_a53



Enable qemu_cortex_a53 networking using the Intel e1000 Ethernet driver.
This board only supports a single UART, so subsystems like logging and
shell would need to be disabled to use SLIP, therefore QEMU Ethernet is
used as the default instead.

Signed-off-by: default avatarGrant Ramsay <gramsay@enphaseenergy.com>
parent 625cd1d1
Loading
Loading
Loading
Loading
+10 −0
Original line number Diff line number Diff line
@@ -6,3 +6,13 @@ config BOARD_QEMU_CORTEX_A53
	depends on SOC_QEMU_CORTEX_A53
	select ARM64
	select QEMU_TARGET

config QEMU_CORTEX_A53_ETH_E1000
	bool "Use Intel e1000 Ethernet driver for networking"
	default y if !NET_TEST
	depends on BOARD_QEMU_CORTEX_A53 && NETWORKING && DT_HAS_INTEL_E1000_ENABLED
	select ETH_E1000
	select NET_L2_ETHERNET
	select PCIE
	select PCIE_CONTROLLER
	select PCIE_ECAM
+24 −0
Original line number Diff line number Diff line
@@ -12,4 +12,28 @@ config BOARD
config MAX_THREAD_BYTES
	default 3

if NETWORKING

choice NET_QEMU_NETWORKING
	default NET_QEMU_ETHERNET if QEMU_CORTEX_A53_ETH_E1000
endchoice

config NET_DRIVERS
	default n if QEMU_CORTEX_A53_ETH_E1000

endif # NETWORKING

# QEMU PCI requires at least 256M of virtual space
config KERNEL_VM_SIZE
	default 0x80000000 if PCIE

# QEMU PCI requires physical addresses with more than 32 bits
choice ARM64_VA_BITS
	default ARM64_VA_BITS_40 if PCIE
endchoice

choice ARM64_PA_BITS
	default ARM64_PA_BITS_40 if PCIE
endchoice

endif # BOARD_QEMU_CORTEX_A53
+7 −0
Original line number Diff line number Diff line
@@ -93,6 +93,13 @@ Refer to the detailed overview about :ref:`application_debugging`.
Networking
==========

The board supports the QEMU built-in Ethernet adapter to connect to the host
system. See :ref:`networking_with_eth_qemu` for details.

It is also possible to use SLIP networking over an emulated serial port.
Although this board only supports a single UART, so subsystems like logging
and shell would need to be disabled, therefore this is not directly supported.

References
**********

+13 −0
Original line number Diff line number Diff line
@@ -38,3 +38,16 @@
	status = "okay";
	current-speed = <115200>;
};

&pcie {
	eth0: eth@0 {
		compatible = "intel,e1000";
		vendor-id = <0x8086>;
		device-id = <0x100e>;
		interrupts = <2>;
		interrupt-parent = <&pcie>;
		/* Prevent device tree error "lacks 'reg' property" */
		reg = <0x00 0x00 0x00 0x00 0x01>;
		status = "okay";
	};
};