diff options
Diffstat (limited to 'payloads/libpayload/drivers')
-rw-r--r-- | payloads/libpayload/drivers/storage/Kconfig | 59 | ||||
-rw-r--r-- | payloads/libpayload/drivers/timer/Kconfig | 129 | ||||
-rw-r--r-- | payloads/libpayload/drivers/usb/Kconfig | 129 |
3 files changed, 317 insertions, 0 deletions
diff --git a/payloads/libpayload/drivers/storage/Kconfig b/payloads/libpayload/drivers/storage/Kconfig new file mode 100644 index 0000000000..961144eab9 --- /dev/null +++ b/payloads/libpayload/drivers/storage/Kconfig @@ -0,0 +1,59 @@ +## +## This file is part of the coreboot project. +## +## This program is free software; you can redistribute it and/or modify +## it under the terms of the GNU General Public License as published by +## the Free Software Foundation; version 2 of the License. +## +## This program is distributed in the hope that it will be useful, +## but WITHOUT ANY WARRANTY; without even the implied warranty of +## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +## GNU General Public License for more details. + +config STORAGE + bool "Support for storage devices" + default y + help + Select this option if you want support for storage devices (like + hard drives, memory sticks or optical drives). + +config STORAGE_64BIT_LBA + bool "Use 64-bit integers to address sectors" + depends on STORAGE + default n + help + If this is selected, sectors will be addressed by an 64-bit integer. + Select this to support LBA-48 for ATA drives. + +config STORAGE_ATA + bool "Support ATA drives (i.e. hard drives)" + depends on STORAGE + default y + help + Select this option if you want support for ATA storage devices + (i.e. hard drives). + +config STORAGE_ATAPI + bool "Support ATAPI drives (i.e. optical drives)" + depends on STORAGE + default y + select STORAGE_ATA + help + Select this option if you want support for ATAPI storage devices + (i.e. optical drives like CD or DVD drives). + +config STORAGE_AHCI + bool "Support for AHCI host controllers" + depends on STORAGE && (STORAGE_ATA || STORAGE_ATAPI) && PCI + default y + help + Select this option if you want support for SATA controllers in + AHCI mode. + +config STORAGE_AHCI_ONLY_TESTED + bool "Only enable tested controllers" + depends on STORAGE_AHCI + default y + help + If this option is selected only AHCI controllers which are known + to work will be used. diff --git a/payloads/libpayload/drivers/timer/Kconfig b/payloads/libpayload/drivers/timer/Kconfig new file mode 100644 index 0000000000..8f047fa63c --- /dev/null +++ b/payloads/libpayload/drivers/timer/Kconfig @@ -0,0 +1,129 @@ +## +## This file is part of the coreboot project. +## +## This program is free software; you can redistribute it and/or modify +## it under the terms of the GNU General Public License as published by +## the Free Software Foundation; version 2 of the License. +## +## This program is distributed in the hope that it will be useful, +## but WITHOUT ANY WARRANTY; without even the implied warranty of +## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +## GNU General Public License for more details. + +config TIMER_RDTSC + bool + default y + depends on ARCH_X86 + +choice + prompt "Timer driver" + default TIMER_NONE + depends on !ARCH_X86 + +config TIMER_NONE + bool "None" + help + The timer driver is provided by the payload itself. + +config TIMER_MCT + bool "Exynos MCT" + +config TIMER_TEGRA_1US + bool "Tegra 1us" + +config TIMER_IPQ806X + bool "Timer for ipq806x platforms" + +config TIMER_ARMADA38X + bool "Timer for armada38x platforms" + help + This is the timer driver for marvell armada38x + platforms. + +config TIMER_IPQ40XX + bool "Timer for ipq40xx platforms" + help + This is the timer driver for QCA IPQ40xx based + platforms. + +config TIMER_RK + bool "Timer for Rockchip" + +config TIMER_BG4CD + bool "Marvell BG4CD" + +config TIMER_CYGNUS + bool "Timer for Cygnus" + +config TIMER_IMG_PISTACHIO + bool "Timer for IMG Pistachio" + +config TIMER_MTK + bool "Timer for MediaTek MT8173" + +endchoice + +config TIMER_MCT_HZ + int "Exynos MCT frequency" + depends on TIMER_MCT + default 24000000 + +config TIMER_MCT_ADDRESS + hex "Exynos MCT base address" + depends on TIMER_MCT + default 0x101c0000 + +config TIMER_RK_ADDRESS + hex "Rockchip timer base address" + depends on TIMER_RK + default 0xff810020 + +config TIMER_TEGRA_1US_ADDRESS + hex "Tegra u1s timer base address" + depends on TIMER_TEGRA_1US + default 0x60005010 + +config IPQ806X_TIMER_FREQ + int "Hardware timer frequency" + default 32000 + depends on TIMER_IPQ806X + help + IPQ hardware presently provides a single timer running at 32KHz, a + finer granulariry timer is available but is not yet enabled. + +config IPQ806X_TIMER_REG + hex "Timer register address" + default 0x0200A008 + depends on TIMER_IPQ806X + help + Address of the register to read a free running timer value. + +config ARMADA38X_TIMER_FREQ + int "Hardware timer frequency" + depends on TIMER_ARMADA38X + default 25000000 + +config ARMADA38X_TIMER_REG + hex "Timer register address" + default 0xF1020314 + depends on TIMER_ARMADA38X + +config IPROC_PERIPH_GLB_TIM_REG_BASE + hex "Cygnus timer base address" + depends on TIMER_CYGNUS + default 0x19020200 + +config TIMER_MTK_HZ + int "MediaTek GPT frequency" + depends on TIMER_MTK + default 13000000 + help + Clock frequency of MediaTek General Purpose Timer. + +config TIMER_MTK_ADDRESS + hex "MTK GPT register address" + depends on TIMER_MTK + default 0x10008048 + help + Address of GPT4's counter register to read the FREERUN-mode timer value. + diff --git a/payloads/libpayload/drivers/usb/Kconfig b/payloads/libpayload/drivers/usb/Kconfig new file mode 100644 index 0000000000..e1b68f7d39 --- /dev/null +++ b/payloads/libpayload/drivers/usb/Kconfig @@ -0,0 +1,129 @@ +## +## This file is part of the coreboot project. +## +## This program is free software; you can redistribute it and/or modify +## it under the terms of the GNU General Public License as published by +## the Free Software Foundation; version 2 of the License. +## +## This program is distributed in the hope that it will be useful, +## but WITHOUT ANY WARRANTY; without even the implied warranty of +## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +## GNU General Public License for more details. +## + +config USB + bool "USB Support" + default y + +config USB_UHCI + bool "Support for USB UHCI controllers" + depends on USB && ARCH_X86 + default y + help + Select this option if you are going to use USB 1.1 on an Intel based + system. + +config USB_OHCI + bool "Support for USB OHCI controllers" + depends on USB + default y + help + Select this option if you are going to use USB 1.1 on a non-Intel based + system. + +config USB_EHCI + bool "Support for USB EHCI controllers" + depends on USB + default y + help + Select this option if you want to use USB 2.0 + +config USB_XHCI + bool "Support for USB xHCI controllers" + depends on USB + default y + help + Select this option if you want to use USB 3.0 + +config USB_XHCI_MTK_QUIRK + bool "Support for USB xHCI controllers on MTK SoC" + depends on USB_XHCI + help + Select this option if you want to use USB 3.0 on MTK platform. + +config USB_DWC2 + bool "Support for USB DesignWare HCD controllers" + depends on USB + help + Select this option if you want to use DesignWare USB 2.0 host controller + +config USB_HID + bool "Support for USB keyboards" + depends on USB + default y + help + Select this option if you want to use devices complying to the + USB HID (Human Interface Device) standard. Such devices are for + example keyboards and mice. Currently only keyboards are supported. + Say Y here unless you know exactly what you are doing. + +config USB_HUB + bool "Support for USB hubs" + depends on USB + default y + help + Select this option if you want to compile in support for USB hubs. + Say Y here unless you know exactly what you are doing. + +config USB_EHCI_HOSTPC_ROOT_HUB_TT + bool "Support for USB EHCI ROOT HUB that has TT" + depends on USB_EHCI + default n + help + Select this option if USB EHCI root hub supports TT (Transaction + Translator). + To support this TT feature we read port-speed from non-standard + register HOSTPC (offset 84h of Operational Register base). + +config USB_MSC + bool "Support for USB storage" + depends on USB + default y + help + Select this option if you want to compile in support for USB mass + storage devices (USB memory sticks, hard drives, CDROM/DVD drives) + Say Y here unless you know exactly what you are doing. + +config USB_GEN_HUB + bool + default n if (!USB_HUB && !USB_XHCI) + default y if (USB_HUB || USB_XHCI) +config USB_PCI + bool "Auto-scan PCI bus for USB host controllers" + depends on USB + default y if ARCH_X86 + default n + +config UDC + bool "USB device mode support" + default n + help + Select this option to add support for running as + a USB device. + +config UDC_CI + bool "ChipIdea driver for USB device mode" + depends on UDC + default n + help + Select this option to add the driver for ChipIdea + USB device controller. + +config UDC_DWC2 + bool "Designware driver for USB device mode" + depends on UDC + default n + help + Select this option to add the driver for Designware + USB device controller. + |