mirror of
https://github.com/openwrt/openwrt.git
synced 2024-12-27 01:11:14 +00:00
fd5c168701
This reduces the needed modifications to the mainline Linux kernel and also makes the regmap package work with an out of tree kernel which does not have these modifications. The regmap-core is only added when it is really build as a module. The regmap-core is normally bool so it cannot be built as a module in an unmodified kernel. When it is selected by on other kernel module it will always be selected as build in and it also does not show up in $(LINUX_DIR)/modules.builtin as it is not supposed to be a kernel module. When it is not in $(LINUX_DIR)/modules.builtin the build system expects it to be built as a .ko file. Just check if the module is really there and only add it in that case. This splits the regmap package into multiple packages, one for each bus type. This way only the bus maps which are really needed have to be added. This also splits the I2C, SPI and MMIO regmap into separate packages to not require all these subsystems to build them, on an unmodified upstream kernel this also causes problems in some situations. Signed-off-by: Hauke Mehrtens <hauke.mehrtens@intel.com>
106 lines
2.8 KiB
Makefile
106 lines
2.8 KiB
Makefile
#
|
|
# Copyright (C) 2010 OpenWrt.org
|
|
#
|
|
# This is free software, licensed under the GNU General Public License v2.
|
|
# See /LICENSE for more information.
|
|
#
|
|
|
|
define KernelPackage/mmc-at91
|
|
SUBMENU:=$(OTHER_MENU)
|
|
TITLE:=MMC/SD Card Support on AT91
|
|
DEPENDS:=@TARGET_at91 +kmod-mmc
|
|
KCONFIG:=CONFIG_MMC_AT91
|
|
FILES:=$(LINUX_DIR)/drivers/mmc/host/at91_mci.ko
|
|
AUTOLOAD:=$(call AutoLoad,90,at91_mci,1)
|
|
endef
|
|
|
|
define KernelPackage/mmc-at91/description
|
|
Kernel support for MMC/SD cards on the AT91 target
|
|
endef
|
|
|
|
$(eval $(call KernelPackage,mmc-at91))
|
|
|
|
define KernelPackage/pwm-atmel
|
|
SUBMENU:=$(OTHER_MENU)
|
|
TITLE:=PWM on atmel SoC
|
|
DEPENDS:=@TARGET_at91
|
|
KCONFIG:=CONFIG_ATMEL_PWM
|
|
FILES:=$(LINUX_DIR)/drivers/misc/atmel_pwm.ko
|
|
AUTOLOAD:=$(call AutoLoad,51,atmel_pwm)
|
|
endef
|
|
|
|
define KernelPackage/pwm-atmel/description
|
|
Kernel module to use the PWM channel on ATMEL SoC
|
|
endef
|
|
|
|
$(eval $(call KernelPackage,pwm-atmel))
|
|
|
|
define KernelPackage/at91-adc
|
|
SUBMENU:=$(OTHER_MENU)
|
|
TITLE:=ADC on atmel SoC
|
|
DEPENDS:=@TARGET_at91 +kmod-iio-core +kmod-input-core
|
|
KCONFIG:=CONFIG_AT91_ADC
|
|
FILES:=$(LINUX_DIR)/drivers/iio/adc/at91_adc.ko
|
|
AUTOLOAD:=$(call AutoLoad,40,at91_adc)
|
|
endef
|
|
|
|
define KernelPackage/at91-adc/description
|
|
Kernel module to use the ADC channels of SoC
|
|
endef
|
|
|
|
$(eval $(call KernelPackage,at91-adc))
|
|
|
|
define KernelPackage/at91-udc
|
|
SUBMENU:=$(USB_MENU)
|
|
TITLE:=USB Device Controller on atmel SoC
|
|
DEPENDS:=@TARGET_at91 +kmod-usb-gadget +kmod-regmap-core
|
|
KCONFIG:=CONFIG_USB_AT91
|
|
ifneq ($(wildcard $(LINUX_DIR)/drivers/usb/gadget/udc/at91_udc.ko),)
|
|
FILES:=$(LINUX_DIR)/drivers/usb/gadget/udc/at91_udc.ko
|
|
else
|
|
FILES:=$(LINUX_DIR)/drivers/usb/gadget/at91_udc.ko
|
|
endif
|
|
AUTOLOAD:=$(call AutoLoad,51,at91_udc)
|
|
endef
|
|
|
|
define KernelPackage/at91-udc/description
|
|
Kernel module to use the USB Device controller for Atmel AT91
|
|
endef
|
|
|
|
$(eval $(call KernelPackage,at91-udc))
|
|
|
|
define KernelPackage/atmel-usba-udc
|
|
SUBMENU:=$(USB_MENU)
|
|
TITLE:=High-speed USB Device Controller on atmel SoC
|
|
DEPENDS:=@TARGET_at91 +kmod-usb-gadget
|
|
KCONFIG:=CONFIG_USB_ATMEL_USBA
|
|
ifneq ($(wildcard $(LINUX_DIR)/drivers/usb/gadget/udc/atmel_usba_udc.ko),)
|
|
FILES:=$(LINUX_DIR)/drivers/usb/gadget/udc/atmel_usba_udc.ko
|
|
else
|
|
FILES:=$(LINUX_DIR)/drivers/usb/gadget/atmel_usba_udc.ko
|
|
endif
|
|
AUTOLOAD:=$(call AutoLoad,51,atmel_usba_udc)
|
|
endef
|
|
|
|
define KernelPackage/atmel-usba-udc/description
|
|
Kernel module to use the High-speed USB Device controller for Atmel AT91
|
|
endef
|
|
|
|
$(eval $(call KernelPackage,atmel-usba-udc))
|
|
|
|
I2C_AT91_MODULES:=\
|
|
CONFIG_I2C_AT91:drivers/i2c/busses/i2c-at91
|
|
|
|
define KernelPackage/at91-i2c
|
|
$(call i2c_defaults,$(I2C_AT91_MODULES),55)
|
|
TITLE:=I2C (TWI) master driver for Atmel AT91
|
|
DEPENDS:=@TARGET_at91 +kmod-i2c-core
|
|
endef
|
|
|
|
define KernelPackage/at91-i2c/description
|
|
Kernel module to use the I2C (TWI) master driver for Atmel AT91
|
|
endef
|
|
|
|
$(eval $(call KernelPackage,at91-i2c))
|
|
|