diff --git a/repos/base/run/platform_drv.inc b/repos/base/run/platform_drv.inc
index d7de2f343a..7b88fdc3d3 100644
--- a/repos/base/run/platform_drv.inc
+++ b/repos/base/run/platform_drv.inc
@@ -65,16 +65,6 @@ proc acpi_drv_name { } {
return acpi_drv
}
-##
-# Return name of the gpio driver
-#
-proc gpio_drv { } {
- if {[have_spec rpi]} { return rpi_gpio_drv }
- if {[have_spec imx53]} { return imx53_gpio_drv }
- if {[have_spec imx6]} { return imx6_gpio_drv }
- return no_gpio_drv_available
-}
-
proc platform_drv_build_components {} {
set drv_build_components ""
lappend_if [have_platform_drv] drv_build_components drivers/platform
diff --git a/repos/dde_linux/run/usb_hid.run b/repos/dde_linux/run/usb_hid.run
index e149b7ee82..b4c28420b1 100644
--- a/repos/dde_linux/run/usb_hid.run
+++ b/repos/dde_linux/run/usb_hid.run
@@ -72,8 +72,6 @@ set build_components {
server/dynamic_rom
}
-lappend_if [have_spec gpio] build_components drivers/gpio
-
source ${genode_dir}/repos/base/run/platform_drv.inc
append_platform_drv_build_components
@@ -190,7 +188,6 @@ set boot_modules {
}
append boot_modules [usb_drv_binary]
-lappend_if [have_spec gpio] boot_modules [gpio_drv]
append_platform_drv_boot_modules
diff --git a/repos/dde_linux/run/usb_hid_raw.run b/repos/dde_linux/run/usb_hid_raw.run
index b90f9a4b2d..1251f756c2 100644
--- a/repos/dde_linux/run/usb_hid_raw.run
+++ b/repos/dde_linux/run/usb_hid_raw.run
@@ -142,8 +142,6 @@ set build_components {
server/report_rom
}
-lappend_if [have_spec gpio] build_components drivers/gpio
-
source ${genode_dir}/repos/base/run/platform_drv.inc
if { [have_spec x86] } { append_platform_drv_build_components
} else { append build_components { drivers/platform }
@@ -174,14 +172,6 @@ append config {
}
-append_if [have_spec gpio] config "
-
-
-
-
-
-"
-
if { [have_spec x86] } { append_platform_drv_config
} else {
append config ""
@@ -291,7 +281,6 @@ set boot_modules {
}
append boot_modules " [usb_host_drv_binary] "
-lappend_if [have_spec gpio] boot_modules [gpio_drv]
if {[have_spec x86]} { append_platform_drv_boot_modules
} else { append boot_modules " [platform_drv_binary_non_x86] " }
diff --git a/repos/dde_linux/run/usb_net.run b/repos/dde_linux/run/usb_net.run
index c40cdbb223..e0394e1733 100644
--- a/repos/dde_linux/run/usb_net.run
+++ b/repos/dde_linux/run/usb_net.run
@@ -19,8 +19,6 @@ set build_components {
lib/vfs/lwip
}
-lappend_if [have_spec gpio] build_components drivers/gpio
-
source ${genode_dir}/repos/base/run/platform_drv.inc
append_platform_drv_build_components
@@ -49,13 +47,6 @@ append config {
}
-append_if [have_spec gpio] config "
-
-
-
-
- "
-
append_platform_drv_config
append config {
@@ -116,7 +107,6 @@ set boot_modules {
}
append boot_modules [usb_host_drv_binary]
-lappend_if [have_spec gpio] boot_modules [gpio_drv]
append_platform_drv_boot_modules
diff --git a/repos/dde_linux/run/usb_terminal.run b/repos/dde_linux/run/usb_terminal.run
index 8e6537b26e..1917d98b13 100644
--- a/repos/dde_linux/run/usb_terminal.run
+++ b/repos/dde_linux/run/usb_terminal.run
@@ -87,8 +87,6 @@ set boot_modules {
usb_terminal
}
-lappend_if [have_spec gpio] boot_modules [gpio_drv]
-
append_platform_drv_boot_modules
build_boot_image $boot_modules
diff --git a/repos/os/recipes/raw/drivers_interactive-imx53_qsb/drivers.config b/repos/os/recipes/raw/drivers_interactive-imx53_qsb/drivers.config
index e888030a52..168f409f7c 100644
--- a/repos/os/recipes/raw/drivers_interactive-imx53_qsb/drivers.config
+++ b/repos/os/recipes/raw/drivers_interactive-imx53_qsb/drivers.config
@@ -35,25 +35,6 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/repos/os/run/gpio_led.run b/repos/os/run/gpio_led.run
index 05a771a786..bf6dd5385d 100644
--- a/repos/os/run/gpio_led.run
+++ b/repos/os/run/gpio_led.run
@@ -1,7 +1,7 @@
#
# Build
#
-if {[have_spec gpio] == 0} {
+if {[have_spec rpi] == 0} {
puts "Runs only on platforms with GPIO"
exit 0
}
@@ -41,10 +41,8 @@ append config {
}
-append config "
- "
-
append config {
+
@@ -68,10 +66,9 @@ set boot_modules {
core ld.lib.so init
timer
led_gpio_drv
+ rpi_gpio_drv
}
-append boot_modules [gpio_drv]
-
build_boot_image $boot_modules
run_genode_until forever
diff --git a/repos/os/run/gpio_signal.run b/repos/os/run/gpio_signal.run
index d13b13b0bb..1b142fa78c 100644
--- a/repos/os/run/gpio_signal.run
+++ b/repos/os/run/gpio_signal.run
@@ -1,7 +1,7 @@
#
# Build
#
-if {[have_spec gpio] == 0} {
+if {[have_spec rpi] == 0} {
puts "Runs only on platforms with GPIO"
exit 0
}
@@ -41,10 +41,9 @@ append config {
}
-append config "
- "
append config {
+
@@ -73,7 +72,7 @@ set boot_modules {
signal_gpio_drv
}
-append boot_modules [gpio_drv]
+append boot_modules rpi_gpio_drv
build_boot_image $boot_modules
diff --git a/repos/os/run/tz_vmm.run b/repos/os/run/tz_vmm.run
index d31f176cf8..f16bea3513 100644
--- a/repos/os/run/tz_vmm.run
+++ b/repos/os/run/tz_vmm.run
@@ -143,10 +143,29 @@ set config {
}
append_if $trusted_led config {
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
}
append_if $mmc_rootfs config {
@@ -164,6 +183,11 @@ append_if $mmc_rootfs config {
+
+
+
+
+
@@ -266,7 +290,8 @@ if { $mmc_rootfs } {
}
cd ..
-lappend_if $trusted_led boot_modules imx53_gpio_drv
+lappend_if $trusted_led boot_modules imx_gpio_drv
+lappend_if $trusted_led boot_modules platform_drv
build_boot_image [join $boot_modules " "]
diff --git a/repos/os/run/usb_block.run b/repos/os/run/usb_block.run
index 350408f08d..3121bc95d1 100644
--- a/repos/os/run/usb_block.run
+++ b/repos/os/run/usb_block.run
@@ -13,8 +13,6 @@ set build_components {
test/block/bench
}
-lappend_if [have_spec gpio] build_components drivers/gpio
-
source ${genode_dir}/repos/base/run/platform_drv.inc
append_platform_drv_build_components
@@ -46,13 +44,6 @@ set config {
append_platform_drv_config
-append_if [have_spec gpio] config "
-
-
-
-
- "
-
append config {
@@ -138,7 +129,6 @@ set boot_modules {
}
append boot_modules [usb_host_drv_binary]
-lappend_if [have_spec gpio] boot_modules [gpio_drv]
append_platform_drv_boot_modules
diff --git a/repos/os/src/drivers/gpio/imx53/board.h b/repos/os/src/drivers/gpio/imx53/board.h
deleted file mode 100644
index b78ce03af4..0000000000
--- a/repos/os/src/drivers/gpio/imx53/board.h
+++ /dev/null
@@ -1,22 +0,0 @@
-/*
- * \brief Gpio driver for the i.MX53
- * \author Stefan Kalkowski
- * \date 2018-02-22
- */
-
-/*
- * Copyright (C) 2018 Genode Labs GmbH
- *
- * This file is part of the Genode OS framework, which is distributed
- * under the terms of the GNU Affero General Public License version 3.
- */
-
-#ifndef _DRIVERS__GPIO__SPEC__IMX53__BOARD_H_
-#define _DRIVERS__GPIO__SPEC__IMX53__BOARD_H_
-
-/* Genode includes */
-#include
-
-namespace Board { using namespace Imx53; }
-
-#endif /* _DRIVERS__GPIO__SPEC__IMX53__BOARD_H_ */
diff --git a/repos/os/src/drivers/gpio/imx53/target.mk b/repos/os/src/drivers/gpio/imx53/target.mk
deleted file mode 100644
index 7a1472d274..0000000000
--- a/repos/os/src/drivers/gpio/imx53/target.mk
+++ /dev/null
@@ -1,7 +0,0 @@
-TARGET = imx53_gpio_drv
-REQUIRES = arm_v7
-SRC_CC = main.cc
-LIBS = base
-INC_DIR += $(PRG_DIR) $(REP_DIR)/src/drivers/gpio/imx
-
-vpath main.cc $(REP_DIR)/src/drivers/gpio/imx
diff --git a/repos/os/src/drivers/gpio/imx6/board.h b/repos/os/src/drivers/gpio/imx6/board.h
deleted file mode 100644
index 77c99331b0..0000000000
--- a/repos/os/src/drivers/gpio/imx6/board.h
+++ /dev/null
@@ -1,22 +0,0 @@
-/*
- * \brief Gpio driver for the i.MX6 SoCs
- * \author Stefan Kalkowski
- * \date 2018-02-22
- */
-
-/*
- * Copyright (C) 2018 Genode Labs GmbH
- *
- * This file is part of the Genode OS framework, which is distributed
- * under the terms of the GNU Affero General Public License version 3.
- */
-
-#ifndef _DRIVERS__GPIO__SPEC__IMX6__BOARD_H_
-#define _DRIVERS__GPIO__SPEC__IMX6__BOARD_H_
-
-/* Genode includes */
-#include
-
-namespace Board { using namespace Imx6; }
-
-#endif /* _DRIVERS__GPIO__SPEC__IMX6__BOARD_H_ */
diff --git a/repos/os/src/drivers/gpio/imx6/target.mk b/repos/os/src/drivers/gpio/imx6/target.mk
deleted file mode 100644
index 9309358456..0000000000
--- a/repos/os/src/drivers/gpio/imx6/target.mk
+++ /dev/null
@@ -1,7 +0,0 @@
-TARGET = imx6_gpio_drv
-REQUIRES = arm_v7
-SRC_CC = main.cc
-LIBS = base
-INC_DIR += $(PRG_DIR) $(REP_DIR)/src/drivers/gpio/imx
-
-vpath main.cc $(REP_DIR)/src/drivers/gpio/imx
diff --git a/repos/os/src/server/tz_vmm/spec/usb_armory/vm.h b/repos/os/src/server/tz_vmm/spec/usb_armory/vm.h
index 7795272d1b..c8323f24b3 100644
--- a/repos/os/src/server/tz_vmm/spec/usb_armory/vm.h
+++ b/repos/os/src/server/tz_vmm/spec/usb_armory/vm.h
@@ -30,7 +30,7 @@ class Genode::Vm : public Vm_base
enum { DTB_OFFSET = 0x1000000 };
- Gpio::Connection _led { _env, 123 };
+ Gpio::Connection _led { _env, 28 };
/*************