Introduce gpio_drv function in run scripts

Do not use automatic alias in the run tool for the name of the
gpio-driver binary.

Ref #2268
This commit is contained in:
Martin Stein 2017-02-08 13:28:11 +01:00 committed by Norman Feske
parent 957653d4b9
commit ed370a8f5c
32 changed files with 313 additions and 172 deletions

View File

@ -7,6 +7,10 @@ requires_installation_of lynx
# Build
#
proc gpio_drv { } { if {[have_spec rpi] && [have_spec hw]} { return hw_gpio_drv }
if {[have_spec rpi] && [have_spec foc]} { return foc_gpio_drv }
return gpio_drv }
set build_components {
core init
drivers/timer drivers/nic
@ -58,12 +62,12 @@ set config {
</config>
</start>}
append_if [have_spec gpio] config {
<start name="gpio_drv">
<resource name="RAM" quantum="4M"/>
<provides><service name="Gpio"/></provides>
append_if [have_spec gpio] config "
<start name=\"[gpio_drv]\">
<resource name=\"RAM\" quantum=\"4M\"/>
<provides><service name=\"Gpio\"/></provides>
<config/>
</start>}
</start>"
append_if $use_usb_driver config {
<start name="usb_drv">
@ -103,7 +107,7 @@ set boot_modules {
# platform-specific modules
lappend_if $use_usb_driver boot_modules usb_drv
lappend_if $use_nic_driver boot_modules nic_drv
lappend_if [have_spec gpio] boot_modules gpio_drv
lappend_if [have_spec gpio] boot_modules [gpio_drv]
append_platform_drv_boot_modules

View File

@ -11,6 +11,10 @@ set build_components {
test/lxip/udp_echo
}
proc gpio_drv { } { if {[have_spec rpi] && [have_spec hw]} { return hw_gpio_drv }
if {[have_spec rpi] && [have_spec foc]} { return foc_gpio_drv }
return gpio_drv }
lappend_if $use_usb_driver build_components drivers/usb
lappend_if [have_spec gpio] build_components drivers/gpio
@ -57,12 +61,12 @@ set config {
</config>
</start>}
append_if [have_spec gpio] config {
<start name="gpio_drv">
<resource name="RAM" quantum="4M"/>
<provides><service name="Gpio"/></provides>
append_if [have_spec gpio] config "
<start name=\"[gpio_drv]\">
<resource name=\"RAM\" quantum=\"4M\"/>
<provides><service name=\"Gpio\"/></provides>
<config/>
</start>}
</start>"
append_if $use_usb_driver config {
<start name="usb_drv">
@ -103,7 +107,7 @@ set boot_modules {
# platform-specific modules
lappend_if $use_usb_driver boot_modules usb_drv
lappend_if $use_nic_driver boot_modules nic_drv
lappend_if [have_spec gpio] boot_modules gpio_drv
lappend_if [have_spec gpio] boot_modules [gpio_drv]
append_platform_drv_boot_modules

View File

@ -71,6 +71,10 @@ append_platform_drv_build_components
build $build_components
proc gpio_drv { } { if {[have_spec rpi] && [have_spec hw]} { return hw_gpio_drv }
if {[have_spec rpi] && [have_spec foc]} { return foc_gpio_drv }
return gpio_drv }
create_boot_directory
#
@ -94,12 +98,12 @@ append config {
<any-service> <parent/> <any-child/> </any-service>
</default-route>}
append_if [have_spec gpio] config {
<start name="gpio_drv">
<resource name="RAM" quantum="4M"/>
<provides><service name="Gpio"/></provides>
append_if [have_spec gpio] config "
<start name=\"[gpio_drv]\">
<resource name=\"RAM\" quantum=\"4M\"/>
<provides><service name=\"Gpio\"/></provides>
<config/>
</start>}
</start>"
append_platform_drv_config
@ -131,7 +135,7 @@ set boot_modules {
core ld.lib.so init timer usb_drv test-input
}
lappend_if [have_spec gpio] boot_modules gpio_drv
lappend_if [have_spec gpio] boot_modules [gpio_drv]
append_platform_drv_boot_modules

View File

@ -17,6 +17,10 @@ set build_components {
test/lwip/http_srv
}
proc gpio_drv { } { if {[have_spec rpi] && [have_spec hw]} { return hw_gpio_drv }
if {[have_spec rpi] && [have_spec foc]} { return foc_gpio_drv }
return gpio_drv }
source ${genode_dir}/repos/base/run/platform_drv.inc
append_platform_drv_build_components
@ -70,12 +74,12 @@ set config {
append_platform_drv_config
append_if [have_spec gpio] config {
<start name="gpio_drv">
<resource name="RAM" quantum="4M"/>
<provides><service name="Gpio"/></provides>
append_if [have_spec gpio] config "
<start name=\"[gpio_drv]\">
<resource name=\"RAM\" quantum=\"4M\"/>
<provides><service name=\"Gpio\"/></provides>
<config/>
</start>}
</start>"
append config {
</config>
@ -94,7 +98,7 @@ set boot_modules {
}
append_platform_drv_boot_modules
lappend_if [have_spec gpio] boot_modules gpio_drv
lappend_if [have_spec gpio] boot_modules [gpio_drv]
build_boot_image $boot_modules

View File

@ -17,6 +17,10 @@ set build_components {
lappend_if [have_spec gpio] build_components drivers/gpio
proc gpio_drv { } { if {[have_spec rpi] && [have_spec hw]} { return hw_gpio_drv }
if {[have_spec rpi] && [have_spec foc]} { return foc_gpio_drv }
return gpio_drv }
source ${genode_dir}/repos/base/run/platform_drv.inc
append_platform_drv_build_components
@ -47,12 +51,12 @@ set config {
append_platform_drv_config
append_if [have_spec gpio] config {
<start name="gpio_drv">
<resource name="RAM" quantum="4M"/>
<provides><service name="Gpio"/></provides>
append_if [have_spec gpio] config "
<start name=\"[gpio_drv]\">
<resource name=\"RAM\" quantum=\"4M\"/>
<provides><service name=\"Gpio\"/></provides>
<config/>
</start>}
</start>"
append config {
<start name="timer">
@ -82,6 +86,8 @@ set boot_modules {
core ld.lib.so init timer usb_drv test-blk-cli
}
lappend_if [have_spec gpio] boot_modules [gpio_drv]
append_platform_drv_boot_modules
build_boot_image $boot_modules

View File

@ -11,6 +11,10 @@ if {[have_include power_on/qemu]} {
set usb_raw_device $::env(USB_RAW_DEVICE)
}
proc gpio_drv { } { if {[have_spec rpi] && [have_spec hw]} { return hw_gpio_drv }
if {[have_spec rpi] && [have_spec foc]} { return foc_gpio_drv }
return gpio_drv }
#
# Build
#
@ -52,12 +56,12 @@ append config {
<any-service> <parent/> <any-child/> </any-service>
</default-route>}
append_if [have_spec gpio] config {
<start name="gpio_drv">
<resource name="RAM" quantum="4M"/>
<provides><service name="Gpio"/></provides>
append_if [have_spec gpio] config "
<start name=\"[gpio_drv]\">
<resource name=\"RAM\" quantum=\"4M\"/>
<provides><service name=\"Gpio\"/></provides>
<config/>
</start>}
</start>"
append_platform_drv_config
@ -96,7 +100,7 @@ set boot_modules {
usb_terminal
}
lappend_if [have_spec gpio] boot_modules gpio_drv
lappend_if [have_spec gpio] boot_modules [gpio_drv]
append_platform_drv_boot_modules

View File

@ -12,6 +12,10 @@ set build_components {
lib/vfs/jitterentropy
}
proc gpio_drv { } { if {[have_spec rpi] && [have_spec hw]} { return hw_gpio_drv }
if {[have_spec rpi] && [have_spec foc]} { return foc_gpio_drv }
return gpio_drv }
lappend_if [have_spec gpio] build_components drivers/gpio
source ${genode_dir}/repos/base/run/platform_drv.inc
@ -102,12 +106,12 @@ append config {
append_platform_drv_config
append_if [have_spec gpio] config {
<start name="gpio_drv">
<resource name="RAM" quantum="4M"/>
<provides><service name="Gpio"/></provides>
append_if [have_spec gpio] config "
<start name=\"[gpio_drv]\">
<resource name=\"RAM\" quantum=\"4M\"/>
<provides><service name=\"Gpio\"/></provides>
<config/>
</start>}
</start>"
append config {
</config>
@ -143,7 +147,7 @@ set boot_modules {
append boot_modules $firmware_modules
lappend_if [have_spec gpio] boot_modules gpio_drv
lappend_if [have_spec gpio] boot_modules [gpio_drv]
append_platform_drv_boot_modules

View File

@ -18,6 +18,10 @@ set build_components {
app/pointer
}
proc gpio_drv { } { if {[have_spec rpi] && [have_spec hw]} { return hw_gpio_drv }
if {[have_spec rpi] && [have_spec foc]} { return foc_gpio_drv }
return gpio_drv }
source ${genode_dir}/repos/base/run/platform_drv.inc
lappend_if [need_usb_hid] build_components drivers/usb
@ -69,12 +73,12 @@ append_if [have_spec framebuffer] config {
<config buffered="yes"/>
</start>}
append_if [have_spec gpio] config {
<start name="gpio_drv">
<resource name="RAM" quantum="4M"/>
<provides><service name="Gpio"/></provides>
append_if [have_spec gpio] config "
<start name=\"[gpio_drv]\">
<resource name=\"RAM\" quantum=\"4M\"/>
<provides><service name=\"Gpio\"/></provides>
<config/>
</start>}
</start>"
append_if [have_spec imx53] config {
<start name="input_drv">
@ -227,7 +231,7 @@ lappend_if [have_spec linux] boot_modules fb_sdl
lappend_if [have_spec ps2] boot_modules ps2_drv
lappend_if [have_spec framebuffer] boot_modules fb_drv
lappend_if [need_usb_hid] boot_modules usb_drv
lappend_if [have_spec gpio] boot_modules gpio_drv
lappend_if [have_spec gpio] boot_modules [gpio_drv]
lappend_if [have_spec imx53] boot_modules input_drv
build_boot_image $boot_modules

View File

@ -51,6 +51,10 @@ exec tar cfv bin/diffutils.tar -h -C bin/diffutils .
create_boot_directory
proc gpio_drv { } { if {[have_spec rpi] && [have_spec hw]} { return hw_gpio_drv }
if {[have_spec rpi] && [have_spec foc]} { return foc_gpio_drv }
return gpio_drv }
append config {
<config verbose="yes">
<parent-provides>
@ -86,12 +90,12 @@ append_if [have_spec ps2] config {
<provides><service name="Input"/></provides>
</start> }
append_if [have_spec gpio] config {
<start name="gpio_drv">
<resource name="RAM" quantum="4M"/>
<provides><service name="Gpio"/></provides>
append_if [have_spec gpio] config "
<start name=\"[gpio_drv]\">
<resource name=\"RAM\" quantum=\"4M\"/>
<provides><service name=\"Gpio\"/></provides>
<config/>
</start>}
</start>"
append_if [need_usb_hid] config {
<start name="usb_drv">
@ -237,7 +241,7 @@ set boot_modules {
lappend_if [have_spec ps2] boot_modules ps2_drv
lappend_if [have_spec framebuffer] boot_modules fb_drv
lappend_if [need_usb_hid] boot_modules usb_drv
lappend_if [have_spec gpio] boot_modules gpio_drv
lappend_if [have_spec gpio] boot_modules [gpio_drv]
append_platform_drv_boot_modules

View File

@ -30,6 +30,10 @@ create_boot_directory
# Generate config
#
proc gpio_drv { } { if {[have_spec rpi] && [have_spec hw]} { return hw_gpio_drv }
if {[have_spec rpi] && [have_spec foc]} { return foc_gpio_drv }
return gpio_drv }
append config {
<config>
<parent-provides>
@ -64,12 +68,12 @@ append_if [have_spec framebuffer] config {
<provides><service name="Framebuffer"/></provides>
</start>}
append_if [have_spec gpio] config {
<start name="gpio_drv">
<resource name="RAM" quantum="4M"/>
<provides><service name="Gpio"/></provides>
append_if [have_spec gpio] config "
<start name=\"[gpio_drv]\">
<resource name=\"RAM\" quantum=\"4M\"/>
<provides><service name=\"Gpio\"/></provides>
<config/>
</start>}
</start>"
append_if [have_spec imx53] config {
<start name="input_drv">
@ -164,7 +168,7 @@ lappend_if [have_spec linux] boot_modules fb_sdl
lappend_if [have_spec ps2] boot_modules ps2_drv
lappend_if [have_spec framebuffer] boot_modules fb_drv
lappend_if [need_usb_hid] boot_modules usb_drv
lappend_if [have_spec gpio] boot_modules gpio_drv
lappend_if [have_spec gpio] boot_modules [gpio_drv]
lappend_if [have_spec imx53] boot_modules input_drv
build_boot_image $boot_modules

View File

@ -39,6 +39,10 @@ build $build_components
create_boot_directory
proc gpio_drv { } { if {[have_spec rpi] && [have_spec hw]} { return hw_gpio_drv }
if {[have_spec rpi] && [have_spec foc]} { return foc_gpio_drv }
return gpio_drv }
append config {
<config>
<parent-provides>
@ -60,12 +64,12 @@ append config {
<provides><service name="Timer"/></provides>
</start>}
append_if [have_spec gpio] config {
<start name="gpio_drv">
<resource name="RAM" quantum="4M"/>
<provides><service name="Gpio"/></provides>
append_if [have_spec gpio] config "
<start name=\"[gpio_drv]\">
<resource name=\"RAM\" quantum=\"4M\"/>
<provides><service name=\"Gpio\"/></provides>
<config/>
</start>}
</start>"
append_if $use_usb_driver config {
<start name="usb_drv">
@ -181,7 +185,7 @@ set boot_modules {
}
# platform-specific modules
lappend_if [have_spec gpio] boot_modules gpio_drv
lappend_if [have_spec gpio] boot_modules [gpio_drv]
lappend_if $use_usb_driver boot_modules usb_drv
lappend_if $use_nic_driver boot_modules nic_drv

View File

@ -22,6 +22,10 @@ source ${genode_dir}/repos/base/run/platform_drv.inc
lappend_if [need_usb_hid] build_components drivers/usb
lappend_if [have_spec gpio] build_components drivers/gpio
proc gpio_drv { } { if {[have_spec rpi] && [have_spec hw]} { return hw_gpio_drv }
if {[have_spec rpi] && [have_spec foc]} { return foc_gpio_drv }
return gpio_drv }
append_platform_drv_build_components
build $build_components
@ -66,12 +70,12 @@ append_if [have_spec framebuffer] config {
<provides><service name="Framebuffer"/></provides>
</start>}
append_if [have_spec gpio] config {
<start name="gpio_drv">
<resource name="RAM" quantum="4M"/>
<provides><service name="Gpio"/></provides>
append_if [have_spec gpio] config "
<start name=\"[gpio_drv]\">
<resource name=\"RAM\" quantum=\"4M\"/>
<provides><service name=\"Gpio\"/></provides>
<config/>
</start>}
</start>"
append_if [have_spec imx53] config {
<start name="input_drv">
@ -272,7 +276,7 @@ lappend_if [have_spec linux] boot_modules fb_sdl
lappend_if [have_spec ps2] boot_modules ps2_drv
lappend_if [have_spec framebuffer] boot_modules fb_drv
lappend_if [need_usb_hid] boot_modules usb_drv
lappend_if [have_spec gpio] boot_modules gpio_drv
lappend_if [have_spec gpio] boot_modules [gpio_drv]
lappend_if [have_spec imx53] boot_modules input_drv
build_boot_image $boot_modules

View File

@ -41,6 +41,10 @@ set build_components {
lappend_if $use_usb_driver build_components drivers/usb
lappend_if [have_spec gpio] build_components drivers/gpio
proc gpio_drv { } { if {[have_spec rpi] && [have_spec hw]} { return hw_gpio_drv }
if {[have_spec rpi] && [have_spec foc]} { return foc_gpio_drv }
return gpio_drv }
source ${genode_dir}/repos/base/run/platform_drv.inc
append_platform_drv_build_components
@ -81,12 +85,12 @@ set config {
</config>
</start>}
append_if [have_spec gpio] config {
<start name="gpio_drv">
<resource name="RAM" quantum="4M"/>
<provides><service name="Gpio"/></provides>
append_if [have_spec gpio] config "
<start name=\"[gpio_drv]\">
<resource name=\"RAM\" quantum=\"4M\"/>
<provides><service name=\"Gpio\"/></provides>
<config/>
</start>}
</start>"
append_if $use_usb_driver config {
<start name="usb_drv">
@ -126,7 +130,7 @@ set boot_modules {
# platform-specific modules
lappend_if $use_usb_driver boot_modules usb_drv
lappend_if $use_nic_driver boot_modules nic_drv
lappend_if [have_spec gpio] boot_modules gpio_drv
lappend_if [have_spec gpio] boot_modules [gpio_drv]
append_platform_drv_boot_modules

View File

@ -25,6 +25,10 @@ set build_components {
test/lxip/udp_client
}
proc gpio_drv { } { if {[have_spec rpi] && [have_spec hw]} { return hw_gpio_drv }
if {[have_spec rpi] && [have_spec foc]} { return foc_gpio_drv }
return gpio_drv }
lappend_if $use_usb_driver build_components drivers/usb
lappend_if [have_spec gpio] build_components drivers/gpio
@ -56,12 +60,12 @@ append config {
<any-service> <parent/> <any-child/> </any-service>
</default-route>}
append_if [have_spec gpio] config {
<start name="gpio_drv">
<resource name="RAM" quantum="4M"/>
<provides><service name="Gpio"/></provides>
append_if [have_spec gpio] config "
<start name=\"[gpio_drv]\">
<resource name=\"RAM\" quantum=\"4M\"/>
<provides><service name=\"Gpio\"/></provides>
<config/>
</start>}
</start>"
append_if $use_usb_driver config {
<start name="usb_drv">
@ -377,7 +381,7 @@ set boot_modules {
# platform-specific modules
lappend_if $use_usb_driver boot_modules usb_drv
lappend_if $use_nic_driver boot_modules nic_drv
lappend_if [have_spec gpio] boot_modules gpio_drv
lappend_if [have_spec gpio] boot_modules [gpio_drv]
append_platform_drv_boot_modules

View File

@ -102,6 +102,10 @@ proc drivers_build_components { feature_arg } {
return $build_components
}
proc gpio_drv { } { if {[have_spec rpi] && [have_spec hw]} { return hw_gpio_drv }
if {[have_spec rpi] && [have_spec foc]} { return foc_gpio_drv }
return gpio_drv }
#
# Configuration
#
@ -164,13 +168,12 @@ proc drivers_start_nodes { feature_arg } {
</start>
}
append_if [use_gpio_drv feature] start_nodes {
<start name="gpio_drv">
<resource name="RAM" quantum="4M"/>
<provides><service name="Gpio"/></provides>
append_if [use_gpio_drv feature] start_nodes "
<start name=\"[gpio_drv]\">
<resource name=\"RAM\" quantum=\"4M\"/>
<provides><service name=\"Gpio\"/></provides>
<config/>
</start>
}
</start>"
if { [use_input_merger feature] } {
append start_nodes {
@ -267,7 +270,7 @@ proc drivers_boot_modules { feature_arg } {
lappend_if [use_audio_drv feature] boot_modules audio_drv
lappend_if [use_fb_drv feature] boot_modules fb_drv
lappend_if [use_fb_sdl feature] boot_modules fb_sdl
lappend_if [use_gpio_drv feature] boot_modules gpio_drv
lappend_if [use_gpio_drv feature] boot_modules [gpio_drv]
lappend_if [use_input_merger feature] boot_modules input_merger
lappend_if [use_nic_drv feature] boot_modules nic_drv
lappend_if [use_ps2_drv feature] boot_modules ps2_drv

View File

@ -26,6 +26,10 @@ set build_components {
test/smartcard
}
proc gpio_drv { } { if {[have_spec rpi] && [have_spec hw]} { return hw_gpio_drv }
if {[have_spec rpi] && [have_spec foc]} { return foc_gpio_drv }
return gpio_drv }
lappend_if [have_spec gpio] build_components drivers/gpio
source ${genode_dir}/repos/base/run/platform_drv.inc
@ -56,12 +60,12 @@ append config {
<any-service> <parent/> <any-child/> </any-service>
</default-route>}
append_if [have_spec gpio] config {
<start name="gpio_drv">
<resource name="RAM" quantum="4M"/>
<provides><service name="Gpio"/></provides>
append_if [have_spec gpio] config "
<start name=\"[gpio_drv]\">
<resource name=\"RAM\" quantum=\"4M\"/>
<provides><service name=\"Gpio\"/></provides>
<config/>
</start>}
</start>"
append_platform_drv_config
@ -113,7 +117,7 @@ set boot_modules {
Info.plist
}
lappend_if [have_spec gpio] boot_modules gpio_drv
lappend_if [have_spec gpio] boot_modules [gpio_drv]
append_platform_drv_boot_modules

View File

@ -22,6 +22,10 @@ set build_components {
lappend_if [expr [have_spec omap4] || [have_spec arndale]] build_components drivers/usb
lappend_if [have_spec gpio] build_components drivers/gpio
proc gpio_drv { } { if {[have_spec rpi] && [have_spec hw]} { return hw_gpio_drv }
if {[have_spec rpi] && [have_spec foc]} { return foc_gpio_drv }
return gpio_drv }
source ${genode_dir}/repos/base/run/platform_drv.inc
append_platform_drv_build_components
@ -54,12 +58,12 @@ set config {
<provides> <service name="Timer"/> </provides>
</start> }
append_if [have_spec gpio] config {
<start name="gpio_drv">
<resource name="RAM" quantum="4M"/>
<provides><service name="Gpio"/></provides>
append_if [have_spec gpio] config "
<start name=\"[gpio_drv]\">
<resource name=\"RAM\" quantum=\"4M\"/>
<provides><service name=\"Gpio\"/></provides>
<config/>
</start>}
</start>"
append_if [expr [have_spec omap4] || [have_spec arndale]] config {
<start name="usb_drv" priority="-1">
@ -135,7 +139,7 @@ set boot_modules {
# platform-specific modules
lappend_if [expr [have_spec omap4] || [have_spec arndale]] boot_modules usb_drv
lappend_if [expr ![have_spec omap4] && ![have_spec arndale]] boot_modules nic_drv
lappend_if [have_spec gpio] boot_modules gpio_drv
lappend_if [have_spec gpio] boot_modules [gpio_drv]
append_platform_drv_boot_modules

View File

@ -22,6 +22,10 @@ set build_components {
lappend_if [expr [have_spec omap4] || [have_spec arndale]] build_components drivers/usb
lappend_if [have_spec gpio] build_components drivers/gpio
proc gpio_drv { } { if {[have_spec rpi] && [have_spec hw]} { return hw_gpio_drv }
if {[have_spec rpi] && [have_spec foc]} { return foc_gpio_drv }
return gpio_drv }
source ${genode_dir}/repos/base/run/platform_drv.inc
append_platform_drv_build_components
@ -63,12 +67,12 @@ set config {
</config>
</start> }
append_if [have_spec gpio] config {
<start name="gpio_drv">
<resource name="RAM" quantum="4M"/>
<provides><service name="Gpio"/></provides>
append_if [have_spec gpio] config "
<start name=\"[gpio_drv]\">
<resource name=\"RAM\" quantum=\"4M\"/>
<provides><service name=\"Gpio\"/></provides>
<config/>
</start>}
</start>"
append_if [expr [have_spec omap4] || [have_spec arndale]] config {
<start name="usb_drv" priority="-1">
@ -109,7 +113,7 @@ set boot_modules {
# platform-specific modules
lappend_if [expr [have_spec omap4] || [have_spec arndale]] boot_modules usb_drv
lappend_if [expr ![have_spec omap4] && ![have_spec arndale]] boot_modules nic_drv
lappend_if [have_spec gpio] boot_modules gpio_drv
lappend_if [have_spec gpio] boot_modules [gpio_drv]
append_platform_drv_boot_modules

View File

@ -17,6 +17,10 @@ set build_components {
server/report_rom server/rom_filter
}
proc gpio_drv { } { if {[have_spec rpi] && [have_spec hw]} { return hw_gpio_drv }
if {[have_spec rpi] && [have_spec foc]} { return foc_gpio_drv }
return gpio_drv }
source ${genode_dir}/repos/base/run/platform_drv.inc
lappend_if [need_usb_hid] build_components drivers/usb
@ -66,12 +70,12 @@ append_if [have_spec framebuffer] config {
<provides><service name="Framebuffer"/></provides>
</start>}
append_if [have_spec gpio] config {
<start name="gpio_drv">
<resource name="RAM" quantum="4M"/>
<provides><service name="Gpio"/></provides>
append_if [have_spec gpio] config "
<start name=\"[gpio_drv]\">
<resource name=\"RAM\" quantum=\"4M\"/>
<provides><service name=\"Gpio\"/></provides>
<config/>
</start>}
</start>"
append_if [have_spec imx53] config {
<start name="input_drv">
@ -255,7 +259,7 @@ lappend_if [have_spec linux] boot_modules fb_sdl
lappend_if [have_spec ps2] boot_modules ps2_drv
lappend_if [have_spec framebuffer] boot_modules fb_drv
lappend_if [need_usb_hid] boot_modules usb_drv
lappend_if [have_spec gpio] boot_modules gpio_drv
lappend_if [have_spec gpio] boot_modules [gpio_drv]
lappend_if [have_spec imx53] boot_modules input_drv
append_platform_drv_boot_modules

View File

@ -22,6 +22,10 @@ create_boot_directory
# Generate config
#
proc gpio_drv { } { if {[have_spec rpi] && [have_spec hw]} { return hw_gpio_drv }
if {[have_spec rpi] && [have_spec foc]} { return foc_gpio_drv }
return gpio_drv }
append config {
<config>
<parent-provides>
@ -44,12 +48,12 @@ append config {
<provides><service name="Timer"/></provides>
</start>}
append_if [have_spec gpio] config {
<start name="gpio_drv">
<resource name="RAM" quantum="4M"/>
<provides><service name="Gpio"/></provides>
append_if [have_spec gpio] config "
<start name=\"[gpio_drv]\">
<resource name=\"RAM\" quantum=\"4M\"/>
<provides><service name=\"Gpio\"/></provides>
<config/>
</start>}
</start>"
append_if [have_spec sdl] config {
<start name="fb_sdl">
@ -86,7 +90,7 @@ append_platform_drv_boot_modules
lappend_if [have_spec sdl] boot_modules fb_sdl
lappend_if [have_spec framebuffer] boot_modules fb_drv
lappend_if [have_spec gpio] boot_modules gpio_drv
lappend_if [have_spec gpio] boot_modules [gpio_drv]
build_boot_image $boot_modules

View File

@ -12,6 +12,10 @@ set build_components {
test/gpio_drv
}
proc gpio_drv { } { if {[have_spec rpi] && [have_spec hw]} { return hw_gpio_drv }
if {[have_spec rpi] && [have_spec foc]} { return foc_gpio_drv }
return gpio_drv }
build $build_components
create_boot_directory
@ -39,8 +43,12 @@ append config {
<start name="timer">
<resource name="RAM" quantum="1M"/>
<provides><service name="Timer"/></provides>
</start>
<start name="gpio_drv">
</start>}
append config "
<start name=\"[gpio_drv]\">"
append config {
<resource name="RAM" quantum="1M"/>
<provides><service name="Gpio"/></provides>
<config>
@ -64,9 +72,11 @@ install_config $config
set boot_modules {
core ld.lib.so init
timer
gpio_drv
test-omap4_gpio_drv
}
append boot_modules [gpio_drv]
build_boot_image $boot_modules
run_genode_until forever

View File

@ -12,6 +12,10 @@ set build_components {
test/gpio_led
}
proc gpio_drv { } { if {[have_spec rpi] && [have_spec hw]} { return hw_gpio_drv }
if {[have_spec rpi] && [have_spec foc]} { return foc_gpio_drv }
return gpio_drv }
build $build_components
create_boot_directory
@ -40,8 +44,12 @@ append config {
<start name="timer">
<resource name="RAM" quantum="1M"/>
<provides><service name="Timer"/></provides>
</start>
<start name="gpio_drv">
</start>}
append config "
<start name=\"[gpio_drv]\">"
append config {
<resource name="RAM" quantum="1M"/>
<provides><service name="Gpio"/></provides>
<config>
@ -64,8 +72,11 @@ install_config $config
set boot_modules {
core ld.lib.so init
timer
gpio_drv
led_gpio_drv
}
append boot_modules [gpio_drv]
build_boot_image $boot_modules
run_genode_until forever

View File

@ -12,6 +12,10 @@ set build_components {
test/gpio_signal
}
proc gpio_drv { } { if {[have_spec rpi] && [have_spec hw]} { return hw_gpio_drv }
if {[have_spec rpi] && [have_spec foc]} { return foc_gpio_drv }
return gpio_drv }
build $build_components
create_boot_directory
@ -40,8 +44,12 @@ append config {
<start name="timer">
<resource name="RAM" quantum="1M"/>
<provides><service name="Timer"/></provides>
</start>
<start name="gpio_drv">
</start>}
append config "
<start name=\"[gpio_drv]\">"
append config {
<resource name="RAM" quantum="1M"/>
<provides><service name="Gpio"/></provides>
<config async_events="0">
@ -67,8 +75,11 @@ install_config $config
set boot_modules {
core ld.lib.so init
timer
gpio_drv
signal_gpio_drv
}
append boot_modules [gpio_drv]
build_boot_image $boot_modules
run_genode_until forever

View File

@ -14,6 +14,10 @@ set build_components {
test/blk/bench
}
proc gpio_drv { } { if {[have_spec rpi] && [have_spec hw]} { return hw_gpio_drv }
if {[have_spec rpi] && [have_spec foc]} { return foc_gpio_drv }
return gpio_drv }
lappend_if [have_spec gpio] build_components drivers/gpio
source ${genode_dir}/repos/base/run/platform_drv.inc
@ -46,12 +50,12 @@ set config {
append_platform_drv_config
append_if [have_spec gpio] config {
<start name="gpio_drv">
<resource name="RAM" quantum="4M"/>
<provides><service name="Gpio"/></provides>
append_if [have_spec gpio] config "
<start name=\"[gpio_drv]\">
<resource name=\"RAM\" quantum=\"4M\"/>
<provides><service name=\"Gpio\"/></provides>
<config/>
</start>}
</start>"
append config {
<start name="timer">
@ -137,6 +141,8 @@ set boot_modules {
ld.lib.so libc.lib.so
}
lappend_if [have_spec gpio] boot_modules [gpio_drv]
append_platform_drv_boot_modules
build_boot_image $boot_modules

View File

@ -30,6 +30,10 @@ lappend_if $use_usb_driver build_components drivers/usb
lappend_if $use_nic_driver build_components drivers/nic
lappend_if [have_spec gpio] build_components drivers/gpio
proc gpio_drv { } { if {[have_spec rpi] && [have_spec hw]} { return hw_gpio_drv }
if {[have_spec rpi] && [have_spec foc]} { return foc_gpio_drv }
return gpio_drv }
source ${genode_dir}/repos/base/run/platform_drv.inc
append_platform_drv_build_components
@ -58,12 +62,12 @@ append config {
<provides><service name="Timer"/></provides>
</start>}
append_if [have_spec gpio] config {
<start name="gpio_drv">
<resource name="RAM" quantum="4M"/>
<provides><service name="Gpio"/></provides>
append_if [have_spec gpio] config "
<start name=\"[gpio_drv]\">
<resource name=\"RAM\" quantum=\"4M\"/>
<provides><service name=\"Gpio\"/></provides>
<config/>
</start>}
</start>"
append_if $use_usb_driver config {
<start name="usb_drv">
@ -164,7 +168,7 @@ set boot_modules {
# platform-specific modules
lappend_if $use_usb_driver boot_modules usb_drv
lappend_if $use_nic_driver boot_modules nic_drv
lappend_if [have_spec gpio] boot_modules gpio_drv
lappend_if [have_spec gpio] boot_modules [gpio_drv]
append_platform_drv_boot_modules

View File

@ -7,6 +7,10 @@
# setting environment variable FORCE_QEMU permits running netperf in qemu
set force_qemu [info exists ::env(FORCE_QEMU)]
proc gpio_drv { } { if {[have_spec rpi] && [have_spec hw]} { return hw_gpio_drv }
if {[have_spec rpi] && [have_spec foc]} { return foc_gpio_drv }
return gpio_drv }
if {[expr [have_include "power_on/qemu"] && !$force_qemu]} {
puts "\nNetperf running on Qemu is not recommended.\n"
exit
@ -122,12 +126,12 @@ set config {
<provides> <service name="Timer"/> </provides>
</start> }
append_if [have_spec gpio] config {
<start name="gpio_drv">
<resource name="RAM" quantum="4M"/>
<provides><service name="Gpio"/></provides>
append_if [have_spec gpio] config "
<start name=\"[gpio_drv]\">
<resource name=\"RAM\" quantum=\"4M\"/>
<provides><service name=\"Gpio\"/></provides>
<config/>
</start>}
</start>"
append_if $use_nic_bridge config {
<start name="nic_bridge">
@ -268,7 +272,7 @@ append boot_modules " $netperf_stack "
lappend_if $use_nic_bridge boot_modules nic_bridge
# platform-specific modules
lappend_if [have_spec gpio] boot_modules gpio_drv
lappend_if [have_spec gpio] boot_modules [gpio_drv]
lappend_if $use_usb_driver boot_modules usb_drv
lappend_if $use_nic_driver boot_modules nic_drv

View File

@ -17,6 +17,10 @@ lappend_if [have_spec x86] build_components drivers/rtc
lappend_if [need_usb_hid] build_components drivers/usb
lappend_if [have_spec gpio] build_components drivers/gpio
proc gpio_drv { } { if {[have_spec rpi] && [have_spec hw]} { return hw_gpio_drv }
if {[have_spec rpi] && [have_spec foc]} { return foc_gpio_drv }
return gpio_drv }
#
# Build Noux packages only once
#
@ -99,12 +103,12 @@ append_if [have_spec ps2] config {
<provides><service name="Input"/></provides>
</start> }
append_if [have_spec gpio] config {
<start name="gpio_drv">
<resource name="RAM" quantum="4M"/>
<provides><service name="Gpio"/></provides>
append_if [have_spec gpio] config "
<start name=\"[gpio_drv]\">
<resource name=\"RAM\" quantum=\"4M\"/>
<provides><service name=\"Gpio\"/></provides>
<config/>
</start>}
</start>"
append_if [need_usb_hid] config {
<start name="usb_drv">
@ -208,7 +212,7 @@ lappend_if [have_spec ps2] boot_modules ps2_drv
lappend_if [have_spec x86] boot_modules rtc_drv
lappend_if [have_spec framebuffer] boot_modules fb_drv
lappend_if [need_usb_hid] boot_modules usb_drv
lappend_if [have_spec gpio] boot_modules gpio_drv
lappend_if [have_spec gpio] boot_modules [gpio_drv]
append_platform_drv_boot_modules

View File

@ -26,6 +26,10 @@ set build_components {
app/gdb_monitor
}
proc gpio_drv { } { if {[have_spec rpi] && [have_spec hw]} { return hw_gpio_drv }
if {[have_spec rpi] && [have_spec foc]} { return foc_gpio_drv }
return gpio_drv }
lappend_if [have_spec gpio] build_components drivers/gpio
lappend_if [have_spec nova] build_components lib/ld/nova
@ -108,12 +112,12 @@ append_if [have_spec ps2] config {
<provides><service name="Input"/></provides>
</start>}
append_if [have_spec gpio] config {
<start name="gpio_drv">
<resource name="RAM" quantum="4M"/>
<provides><service name="Gpio"/></provides>
append_if [have_spec gpio] config "
<start name=\"[gpio_drv]\">
<resource name=\"RAM\" quantum=\"4M\"/>
<provides><service name=\"Gpio\"/></provides>
<config/>
</start>}
</start>"
append_if [expr ![have_spec ps2] && [have_spec usb]] config {
<start name="usb_drv">
@ -227,7 +231,7 @@ lappend_if [have_spec linux] boot_modules fb_sdl
lappend_if [have_spec framebuffer] boot_modules fb_drv
lappend_if [have_spec ps2] boot_modules ps2_drv
lappend_if [have_spec usb] boot_modules usb_drv
lappend_if [have_spec gpio] boot_modules gpio_drv
lappend_if [have_spec gpio] boot_modules [gpio_drv]
append_platform_drv_boot_modules

View File

@ -13,6 +13,10 @@ set build_components {
noux-pkg/netcat
}
proc gpio_drv { } { if {[have_spec rpi] && [have_spec hw]} { return hw_gpio_drv }
if {[have_spec rpi] && [have_spec foc]} { return foc_gpio_drv }
return gpio_drv }
lappend_if $use_usb_driver build_components drivers/usb
lappend_if $use_nic_driver build_components drivers/nic
lappend_if [have_spec gpio] build_components drivers/gpio
@ -108,12 +112,12 @@ append_if $use_nic_driver config {
<provides> <service name="Nic"/> </provides>
</start>}
append_if [have_spec gpio] config {
<start name="gpio_drv">
<resource name="RAM" quantum="4M"/>
<provides><service name="Gpio"/></provides>
append_if [have_spec gpio] config "
<start name=\"[gpio_drv]\">
<resource name=\"RAM\" quantum=\"4M\"/>
<provides><service name=\"Gpio\"/></provides>
<config/>
</start>}
</start>"
append_if $use_usb_driver config {
<start name="usb_drv">
@ -168,7 +172,7 @@ set boot_modules {
lappend_if $use_nic_driver boot_modules nic_drv
lappend_if $use_usb_driver boot_modules usb_drv
lappend_if [have_include "power_on/qemu"] boot_modules uart_drv
lappend_if [have_spec gpio] boot_modules gpio_drv
lappend_if [have_spec gpio] boot_modules [gpio_drv]
append_platform_drv_boot_modules

View File

@ -7,6 +7,10 @@ if {[have_spec linux]} {
exit 0
}
proc gpio_drv { } { if {[have_spec rpi] && [have_spec hw]} { return hw_gpio_drv }
if {[have_spec rpi] && [have_spec foc]} { return foc_gpio_drv }
return gpio_drv }
#
# On OMAP4 where no PS/2 is available, we rely on USB HID
#
@ -106,12 +110,12 @@ append_if [have_spec ps2] config {
<provides><service name="Input"/></provides>
</start> }
append_if [have_spec gpio] config {
<start name="gpio_drv">
<resource name="RAM" quantum="4M"/>
<provides><service name="Gpio"/></provides>
append_if [have_spec gpio] config "
<start name=\"[gpio_drv]\">
<resource name=\"RAM\" quantum=\"4M\"/>
<provides><service name=\"Gpio\"/></provides>
<config/>
</start>}
</start>"
append_if [use_usb_input] config {
<start name="usb_drv">
@ -218,7 +222,7 @@ lappend_if [have_spec linux] boot_modules fb_sdl
lappend_if [have_spec ps2] boot_modules ps2_drv
lappend_if [have_spec framebuffer] boot_modules fb_drv
lappend_if [use_usb_input ] boot_modules usb_drv
lappend_if [have_spec gpio] boot_modules gpio_drv
lappend_if [have_spec gpio] boot_modules [gpio_drv]
append_platform_drv_boot_modules

View File

@ -1,7 +1,6 @@
proc binary_name_ld_lib_so { } { return "ld-foc.lib.so" }
proc binary_name_core_o { } { return "foc/core.o" }
proc binary_name_timer { } { return "foc_timer_drv" }
proc binary_name_gpio_drv { } { return "foc_gpio_drv" }
proc run_boot_string { } { return "\nL4 Bootstrapper" }

View File

@ -1,7 +1,6 @@
proc binary_name_ld_lib_so { } { return "ld-hw.lib.so" }
proc binary_name_core_o { } { return "hw/core.o" }
proc binary_name_timer { } { return "hw_timer_drv" }
proc binary_name_gpio_drv { } { return "hw_gpio_drv" }
proc run_boot_string { } { return "\nkernel initialized" }