blob: 0590afef82ae6acd243e27efc2ece4fe9321f0b0 [file] [log] [blame]
b.liue9582032025-04-17 19:18:16 +08001# SPDX-License-Identifier: GPL-2.0-only
2#
3# Copyright (C) 2010 OpenWrt.org
4
5define KernelPackage/mmc-at91
6 SUBMENU:=$(OTHER_MENU)
7 TITLE:=MMC/SD Card Support on AT91
8 DEPENDS:=@TARGET_at91 +kmod-mmc
9 KCONFIG:=CONFIG_MMC_AT91
10 FILES:=$(LINUX_DIR)/drivers/mmc/host/at91_mci.ko
11 AUTOLOAD:=$(call AutoLoad,90,at91_mci,1)
12endef
13
14define KernelPackage/mmc-at91/description
15 Kernel support for MMC/SD cards on the AT91 target
16endef
17
18$(eval $(call KernelPackage,mmc-at91))
19
20define KernelPackage/pwm-atmel
21 SUBMENU:=$(OTHER_MENU)
22 TITLE:=PWM on atmel SoC
23 DEPENDS:=@TARGET_at91
24 KCONFIG:=CONFIG_ATMEL_PWM
25 FILES:=$(LINUX_DIR)/drivers/misc/atmel_pwm.ko
26 AUTOLOAD:=$(call AutoLoad,51,atmel_pwm)
27endef
28
29define KernelPackage/pwm-atmel/description
30 Kernel module to use the PWM channel on ATMEL SoC
31endef
32
33$(eval $(call KernelPackage,pwm-atmel))
34
35define KernelPackage/at91-adc
36 SUBMENU:=$(OTHER_MENU)
37 TITLE:=ADC on atmel SoC
38 DEPENDS:=@TARGET_at91 +kmod-iio-core +kmod-input-core
39 KCONFIG:=CONFIG_AT91_ADC
40 FILES:=$(LINUX_DIR)/drivers/iio/adc/at91_adc.ko
41 AUTOLOAD:=$(call AutoLoad,40,at91_adc)
42endef
43
44define KernelPackage/at91-adc/description
45 Kernel module to use the ADC channels of SoC
46endef
47
48$(eval $(call KernelPackage,at91-adc))
49
50define KernelPackage/at91-udc
51 SUBMENU:=$(USB_MENU)
52 TITLE:=USB Device Controller on atmel SoC
53 DEPENDS:=@TARGET_at91 +kmod-usb-gadget +kmod-regmap-core
54 KCONFIG:=CONFIG_USB_AT91
55ifneq ($(wildcard $(LINUX_DIR)/drivers/usb/gadget/udc/at91_udc.ko),)
56 FILES:=$(LINUX_DIR)/drivers/usb/gadget/udc/at91_udc.ko
57else
58 FILES:=$(LINUX_DIR)/drivers/usb/gadget/at91_udc.ko
59endif
60 AUTOLOAD:=$(call AutoLoad,51,at91_udc)
61endef
62
63define KernelPackage/at91-udc/description
64 Kernel module to use the USB Device controller for Atmel AT91
65endef
66
67$(eval $(call KernelPackage,at91-udc))
68
69define KernelPackage/atmel-usba-udc
70 SUBMENU:=$(USB_MENU)
71 TITLE:=High-speed USB Device Controller on atmel SoC
72 DEPENDS:=@TARGET_at91 +kmod-usb-gadget
73 KCONFIG:=CONFIG_USB_ATMEL_USBA
74ifneq ($(wildcard $(LINUX_DIR)/drivers/usb/gadget/udc/atmel_usba_udc.ko),)
75 FILES:=$(LINUX_DIR)/drivers/usb/gadget/udc/atmel_usba_udc.ko
76else
77 FILES:=$(LINUX_DIR)/drivers/usb/gadget/atmel_usba_udc.ko
78endif
79 AUTOLOAD:=$(call AutoLoad,51,atmel_usba_udc)
80endef
81
82define KernelPackage/atmel-usba-udc/description
83 Kernel module to use the High-speed USB Device controller for Atmel AT91
84endef
85
86$(eval $(call KernelPackage,atmel-usba-udc))
87
88I2C_AT91_MODULES:=\
89 CONFIG_I2C_AT91:drivers/i2c/busses/i2c-at91
90
91define KernelPackage/at91-i2c
92 $(call i2c_defaults,$(I2C_AT91_MODULES),55)
93 TITLE:=I2C (TWI) master driver for Atmel AT91
94 DEPENDS:=@TARGET_at91 +kmod-i2c-core
95endef
96
97define KernelPackage/at91-i2c/description
98 Kernel module to use the I2C (TWI) master driver for Atmel AT91
99endef
100
101$(eval $(call KernelPackage,at91-i2c))
102