From 8d9561595c32f431b2a3500c46d950ad3a2a8a13 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Josef=20S=C3=B6ntgen?= Date: Fri, 20 Feb 2015 13:39:10 +0100 Subject: [PATCH] netperf: add wifi test Enables testing of the wifi_drv with netperf. Fixes #1415. --- repos/ports/run/netperf.inc | 92 +++++++++++++++++++++++-- repos/ports/run/netperf_lwip.run | 1 + repos/ports/run/netperf_lwip_bridge.run | 1 + repos/ports/run/netperf_lwip_usb30.run | 1 + repos/ports/run/netperf_lwip_wifi.run | 29 ++++++++ repos/ports/run/netperf_lxip.run | 1 + repos/ports/run/netperf_lxip_bridge.run | 1 + repos/ports/run/netperf_lxip_usb30.run | 1 + repos/ports/run/netperf_lxip_wifi.run | 29 ++++++++ tool/autopilot.list | 2 + 10 files changed, 154 insertions(+), 4 deletions(-) create mode 100644 repos/ports/run/netperf_lwip_wifi.run create mode 100644 repos/ports/run/netperf_lxip_wifi.run diff --git a/repos/ports/run/netperf.inc b/repos/ports/run/netperf.inc index 6e07efcd0b7..01dd0f9d41c 100644 --- a/repos/ports/run/netperf.inc +++ b/repos/ports/run/netperf.inc @@ -10,12 +10,19 @@ if {[have_include "power_on/qemu"]} { } set use_usb_driver [expr [have_spec omap4] || [have_spec exynos5] || [have_spec platform_rpi]] -set use_nic_driver [expr !$use_usb_driver && ![have_spec platform_imx53]] +set use_nic_driver [expr !$use_usb_driver && ![have_spec platform_imx53] && !$use_wifi_driver] set use_platform_driver [expr [have_spec platform_arndale] || [have_spec platform_imx53] || [have_spec platform_rpi]] -if {[expr !$use_usb_driver && !$use_nic_driver]} { +if {[expr !$use_usb_driver && !$use_nic_driver && !$use_wifi_driver]} { puts "\n Run script is not supported on this platform. \n"; exit 0 } +# provide wifi related variables in case we do not use the wifi driver +if {!$use_wifi_driver} { + set wifi_ssid "" + set wifi_bssid "" + set wifi_psk "" +} + # # Build # @@ -48,13 +55,15 @@ set netperf_tests "TCP_STREAM TCP_MAERTS" if {$use_usb_driver} { set network_driver "usb_drv" } if {$use_nic_driver} { set network_driver "nic_drv" } +if {$use_wifi_driver} { set network_driver "wifi_drv" } set build_components { core init - drivers/pci drivers/timer drivers/nic + drivers/pci drivers/timer } append build_components " $netperf_target " +lappend_if $use_nic_driver build_components drivers/nic lappend_if $use_usb_driver build_components drivers/usb lappend_if $use_platform_driver build_components drivers/platform lappend_if $use_nic_bridge build_components server/nic_bridge @@ -62,6 +71,13 @@ lappend_if [have_spec acpi] build_components drivers/acpi lappend_if [have_spec pci] build_components drivers/pci/device_pd lappend_if [have_spec gpio] build_components drivers/gpio +append_if $use_wifi_driver build_components { + drivers/wifi + server/fs_rom + server/ram_fs + server/report_rom +} + build $build_components create_boot_directory @@ -148,9 +164,64 @@ append_if $use_nic_driver config { } +append_if $use_wifi_driver config { + + + + + + + + + + + + + + } +append_if $use_wifi_driver config " +" +append_if $use_wifi_driver config { + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + } + append_if [have_spec acpi] config { - + @@ -221,6 +292,19 @@ lappend_if $use_usb_driver boot_modules usb_drv lappend_if $use_nic_driver boot_modules nic_drv lappend_if [have_spec nova] boot_modules pci_device_pd +append_if $use_wifi_driver boot_modules { + ram_fs fs_rom report_rom + libcrypto.lib.so libssl.lib.so + wpa_driver_nl80211.lib.so wpa_supplicant.lib.so + vfs_jitterentropy.lib.so + wifi.lib.so wifi_drv + + iwlwifi-6000-6.ucode + iwlwifi-6000g2a-6.ucode + iwlwifi-6000g2b-6.ucode + iwlwifi-7260-8.ucode +} + build_boot_image $boot_modules # diff --git a/repos/ports/run/netperf_lwip.run b/repos/ports/run/netperf_lwip.run index 3aabbf7f0ee..7cbd903f7f1 100644 --- a/repos/ports/run/netperf_lwip.run +++ b/repos/ports/run/netperf_lwip.run @@ -7,6 +7,7 @@ # network configuration set use_nic_bridge 0 +set use_wifi_driver 0 set use_usb_11 "no" set use_usb_20 "yes" set use_usb_30 "no" diff --git a/repos/ports/run/netperf_lwip_bridge.run b/repos/ports/run/netperf_lwip_bridge.run index af83e271953..df3d7533527 100644 --- a/repos/ports/run/netperf_lwip_bridge.run +++ b/repos/ports/run/netperf_lwip_bridge.run @@ -17,6 +17,7 @@ if {[have_spec omap4]} { # network configuration set use_nic_bridge 1 +set use_wifi_driver 0 set use_usb_11 "no" set use_usb_20 "no" set use_usb_30 "yes" diff --git a/repos/ports/run/netperf_lwip_usb30.run b/repos/ports/run/netperf_lwip_usb30.run index d954b2f6dae..0abf77e6298 100644 --- a/repos/ports/run/netperf_lwip_usb30.run +++ b/repos/ports/run/netperf_lwip_usb30.run @@ -12,6 +12,7 @@ if {[have_spec omap4]} { # network configuration set use_nic_bridge 0 +set use_wifi_driver 0 set use_usb_11 "no" set use_usb_20 "no" set use_usb_30 "yes" diff --git a/repos/ports/run/netperf_lwip_wifi.run b/repos/ports/run/netperf_lwip_wifi.run new file mode 100644 index 00000000000..f1de83ab4e1 --- /dev/null +++ b/repos/ports/run/netperf_lwip_wifi.run @@ -0,0 +1,29 @@ +# +# \brief Test using netperf with the wifi_drv +# \author Alexander Boettcher +# \date 2013-07-08 +# + +assert_spec x86 + +if {[have_include "power_on/qemu"] || [have_include "power_on/linux"]} { + puts stderr "\nNetperf WIFI running on Qemu/Linux is not supported.\n" + exit 0 +} + +# network configuration +set use_nic_bridge 0 +set use_wifi_driver 1 +set use_usb_11 "no" +set use_usb_20 "no" +set use_usb_30 "no" + +set wifi_ssid $::env(GENODE_WIFI_SSID) +set wifi_bssid $::env(GENODE_WIFI_BSSID) +set wifi_psk $::env(GENODE_WIFI_PSK) + +source ${genode_dir}/repos/ports/run/netperf_lwip.inc +source ${genode_dir}/repos/ports/run/netperf.inc + +# remove firmware images +exec sh -c "rm bin/*.ucode" diff --git a/repos/ports/run/netperf_lxip.run b/repos/ports/run/netperf_lxip.run index a4813209cc9..cbfaaaa0c32 100644 --- a/repos/ports/run/netperf_lxip.run +++ b/repos/ports/run/netperf_lxip.run @@ -7,6 +7,7 @@ # network configuration set use_nic_bridge 0 +set use_wifi_driver 0 set use_usb_11 "no" set use_usb_20 "yes" set use_usb_30 "no" diff --git a/repos/ports/run/netperf_lxip_bridge.run b/repos/ports/run/netperf_lxip_bridge.run index e455037838c..85096c2effc 100644 --- a/repos/ports/run/netperf_lxip_bridge.run +++ b/repos/ports/run/netperf_lxip_bridge.run @@ -17,6 +17,7 @@ if {[have_spec omap4]} { # network configuration set use_nic_bridge 1 +set use_wifi_driver 0 set use_usb_11 "no" set use_usb_20 "no" set use_usb_30 "yes" diff --git a/repos/ports/run/netperf_lxip_usb30.run b/repos/ports/run/netperf_lxip_usb30.run index 097b985d651..11603961043 100644 --- a/repos/ports/run/netperf_lxip_usb30.run +++ b/repos/ports/run/netperf_lxip_usb30.run @@ -12,6 +12,7 @@ if {[have_spec omap4]} { # network configuration set use_nic_bridge 0 +set use_wifi_driver 0 set use_usb_11 "no" set use_usb_20 "no" set use_usb_30 "yes" diff --git a/repos/ports/run/netperf_lxip_wifi.run b/repos/ports/run/netperf_lxip_wifi.run new file mode 100644 index 00000000000..6bda0e0b823 --- /dev/null +++ b/repos/ports/run/netperf_lxip_wifi.run @@ -0,0 +1,29 @@ +# +# \brief Test using netperf with the wifi_drv +# \author Alexander Boettcher +# \date 2013-07-08 +# + +assert_spec x86 + +if {[have_include "power_on/qemu"] || [have_include "power_on/linux"]} { + puts stderr "\nNetperf WIFI running on Qemu/Linux is not supported.\n" + exit 0 +} + +# network configuration +set use_nic_bridge 0 +set use_wifi_driver 1 +set use_usb_11 "no" +set use_usb_20 "no" +set use_usb_30 "no" + +set wifi_ssid $::env(GENODE_WIFI_SSID) +set wifi_bssid $::env(GENODE_WIFI_BSSID) +set wifi_psk $::env(GENODE_WIFI_PSK) + +source ${genode_dir}/repos/ports/run/netperf_lxip.inc +source ${genode_dir}/repos/ports/run/netperf.inc + +# remove firmware images +exec sh -c "rm bin/*.ucode" diff --git a/tool/autopilot.list b/tool/autopilot.list index caf644be4c0..bcaa1588878 100644 --- a/tool/autopilot.list +++ b/tool/autopilot.list @@ -23,9 +23,11 @@ failsafe netperf_lwip netperf_lwip_usb30 netperf_lwip_bridge +netperf_lwip_wifi netperf_lxip netperf_lxip_usb30 netperf_lxip_bridge +netperf_lxip_wifi l4linux_netperf l4linux_netperf_usb30 l4linux_netperf_bridge