proc have_platform_drv {} {
if {[have_spec linux]} {
return 0
}
return [expr [have_spec arndale] \
|| [have_spec imx53] \
|| [have_spec rpi] \
|| [have_spec odroid_x2] \
|| [have_spec x86]]
}
##
# Return 1 if the scenario depends on the USB driver on the used platform
#
# On most ARM platform, user input is provided by an USB HID device. On other
# platforms, the USB driver may be omitted.
#
proc need_usb_hid { } {
# covered by fb_sdl
if {[have_spec linux]} { return 0 }
# covered by ps2_drv
if {[have_spec x86]} { return 0 }
if {[have_spec pbxa9]} { return 0 }
return [have_spec usb]
}
##
# Return name of the NIC driver binary
#
proc nic_drv_binary { } {
if {[have_spec linux]} { return linux_nic_drv }
if {[have_spec omap4] || [have_spec arndale] || [have_spec rpi]} { return usb_drv }
if {!([have_spec imx53] || [have_spec riscv] || [have_spec odroid_xu] || [have_spec wand_quad])} { return nic_drv }
return no_nic_drv_available
}
##
# Return name of the audio driver binary
#
proc audio_drv_binary { } {
if {[have_spec linux]} { return linux_audio_drv }
if {[have_spec x86]} { return audio_drv }
return no_audio_drv_available
}
proc platform_drv_build_components {} {
set drv_build_components ""
lappend_if [have_platform_drv] drv_build_components drivers/platform
lappend_if [have_spec acpi] drv_build_components drivers/acpi
lappend_if [have_spec acpi] drv_build_components server/report_rom
return $drv_build_components
}
proc append_platform_drv_build_components {} {
global build_components
append build_components { } [platform_drv_build_components]
}
proc platform_drv_boot_modules {} {
set drv_boot_modules ""
lappend_if [have_platform_drv] drv_boot_modules platform_drv
lappend_if [have_spec acpi] drv_boot_modules acpi_drv
lappend_if [have_spec acpi] drv_boot_modules report_rom
lappend_if [have_spec muen] drv_boot_modules acpi
return $drv_boot_modules
}
proc append_platform_drv_boot_modules {} {
global boot_modules
append boot_modules { } [platform_drv_boot_modules]
}
proc platform_drv_policy {} {
if ([have_spec x86]) {
return {
}
} else {
return {}
}
}
proc platform_drv_priority {} { return "" }
proc platform_drv_add_routing {} {
if {[have_spec acpi]} {
return {
}
}
return ""
}
proc platform_drv_config_config {} {
if {[have_spec acpi] || [have_spec arm] || [have_spec muen]} {
return {
}
}
return {
}
}
proc platform_drv_config {} {
set drv_config ""
if {[have_spec acpi]} {
append drv_config {
}
append drv_config "
"
append drv_config {
}
}
if {[have_platform_drv]} {
append drv_config {
}
append_if [have_spec acpi] drv_config {
}
append_if [have_spec arm] drv_config {
}
append drv_config {
}
append drv_config "[platform_drv_add_routing]"
append_if [have_spec acpi] drv_config {
}
append_if [have_spec rpi] drv_config {
}
append drv_config {
}
append drv_config [platform_drv_config_config]
append drv_config [platform_drv_policy]
append drv_config {
}
}
return $drv_config
}
proc append_platform_drv_config {} {
global config
append config [platform_drv_config]
return $config
}