openwrt/target/linux/x86/modules.mk

197 lines
5.5 KiB
Makefile
Raw Normal View History

# SPDX-License-Identifier: GPL-2.0-only
#
# Copyright (C) 2017 Cezary Jackiewicz <cezary@eko.one.pll>
define KernelPackage/amazon-ena
SUBMENU:=$(NETWORK_DEVICES_MENU)
TITLE:=Elastic Network Adapter (for Amazon AWS T3)
DEPENDS:=@TARGET_x86_64
KCONFIG:=CONFIG_ENA_ETHERNET
FILES:=$(LINUX_DIR)/drivers/net/ethernet/amazon/ena/ena.ko
AUTOLOAD:=$(call AutoLoad,12,ena)
endef
define KernelPackage/amazon-ena/description
This driver supports Elastic Network Adapter (ENA)
used by Amazon AWS T3 instances.
endef
$(eval $(call KernelPackage,amazon-ena))
define KernelPackage/amd-xgbe
SUBMENU:=$(NETWORK_DEVICES_MENU)
TITLE:=AMD Ethernet on SoC support
DEPENDS:=@PCI_SUPPORT @TARGET_x86_64 +kmod-lib-crc32c +kmod-ptp +kmod-libphy +(LINUX_5_10||LINUX_5_15):kmod-mdio-devres
KCONFIG:=CONFIG_AMD_XGBE
FILES:=$(LINUX_DIR)/drivers/net/ethernet/amd/xgbe/amd-xgbe.ko
AUTOLOAD:=$(call AutoLoad,35,amd-xgbe)
endef
define KernelPackage/amd-xgbe/description
Kernel modules for AMD 10GbE Ethernet device on an AMD SoC.
endef
$(eval $(call KernelPackage,amd-xgbe))
define KernelPackage/f71808e-wdt
SUBMENU:=$(OTHER_MENU)
TITLE:=Fintek F718xx/F818xx Watchdog Timer
DEPENDS:=@TARGET_x86
KCONFIG:=\
CONFIG_F71808E_WDT \
CONFIG_WATCHDOG_CORE=y
FILES:=$(LINUX_DIR)/drivers/watchdog/f71808e_wdt.ko
AUTOLOAD:=$(call AutoProbe,f71808e-wdt,1)
endef
define KernelPackage/f71808e-wdt/description
Kernel module for the watchdog timer found on many Fintek Super-IO chips.
endef
$(eval $(call KernelPackage,f71808e-wdt))
define KernelPackage/sound-cs5535audio
TITLE:=CS5535/CS5536 Audio Controller
DEPENDS:=@TARGET_x86_geode +kmod-ac97
KCONFIG:=CONFIG_SND_CS5535AUDIO
FILES:=$(LINUX_DIR)/sound/pci/cs5535audio/snd-cs5535audio.ko
AUTOLOAD:=$(call AutoLoad,36,snd-cs5535audio)
$(call AddDepends/sound)
endef
define KernelPackage/sound-cs5535audio/description
Support for the integrated AC97 sound device on motherboards
with AMD CS5535/CS5536 chipsets.
endef
$(eval $(call KernelPackage,sound-cs5535audio))
define KernelPackage/sp5100-tco
SUBMENU:=$(OTHER_MENU)
TITLE:=SP5100 Watchdog Support
DEPENDS:=@TARGET_x86
KCONFIG:=CONFIG_SP5100_TCO
FILES:=$(LINUX_DIR)/drivers/watchdog/sp5100_tco.ko
AUTOLOAD:=$(call AutoLoad,50,sp5100_tco,1)
endef
define KernelPackage/sp5100-tco/description
Kernel module for the SP5100_TCO hardware watchdog.
endef
$(eval $(call KernelPackage,sp5100-tco))
define KernelPackage/ib700-wdt
SUBMENU:=$(OTHER_MENU)
TITLE:=IB700 SBC Watchdog Timer
DEPENDS:=@TARGET_x86
KCONFIG:=CONFIG_IB700_WDT
FILES:=$(LINUX_DIR)/drivers/watchdog/ib700wdt.ko
AUTOLOAD:=$(call AutoLoad,50,ib700wdt,1)
endef
define KernelPackage/ib700-wdt/description
Kernel module for the hardware watchdog on the IB700 Single
Board Computer produced by TMC Technology (www.tmc-uk.com).
Also used by QEMU/libvirt.
endef
$(eval $(call KernelPackage,ib700-wdt))
define KernelPackage/it87-wdt
SUBMENU:=$(OTHER_MENU)
TITLE:=ITE IT87 Watchdog Timer
DEPENDS:=@TARGET_x86
KCONFIG:=CONFIG_IT87_WDT
FILES:=$(LINUX_DIR)/drivers/watchdog/it87_wdt.ko
AUTOLOAD:=$(call AutoLoad,50,it87-wdt,1)
MODPARAMS.it87-wdt:= \
nogameport=1 \
nocir=1
endef
define KernelPackage/it87-wdt/description
Kernel module for ITE IT87 Watchdog Timer
endef
$(eval $(call KernelPackage,it87-wdt))
define KernelPackage/itco-wdt
SUBMENU:=$(OTHER_MENU)
TITLE:=Intel iTCO Watchdog Timer
DEPENDS:=@TARGET_x86
KCONFIG:=\
CONFIG_ITCO_WDT \
CONFIG_ITCO_VENDOR_SUPPORT=y \
CONFIG_WATCHDOG_CORE=y
FILES:=$(LINUX_DIR)/drivers/watchdog/iTCO_wdt.ko \
$(LINUX_DIR)/drivers/watchdog/iTCO_vendor_support.ko
AUTOLOAD:=$(call AutoLoad,50,iTCO_vendor_support iTCO_wdt,1)
endef
define KernelPackage/itco-wdt/description
Kernel module for Intel iTCO Watchdog Timer
endef
$(eval $(call KernelPackage,itco-wdt))
define KernelPackage/pcengines-apuv2
SUBMENU:=$(OTHER_MENU)
TITLE:=PC Engines APUv2/3 front button and LEDs driver
DEPENDS:=@TARGET_x86 +kmod-gpio-amd-fch +kmod-leds-gpio
KCONFIG:=CONFIG_PCENGINES_APU2
FILES:=$(LINUX_DIR)/drivers/platform/x86/pcengines-apuv2.ko
AUTOLOAD:=$(call AutoLoad,60,pcengines-apuv2)
endef
define KernelPackage/pcengines-apuv2/description
This driver provides support for the front button and LEDs on
PC Engines APUv2/APUv3 board.
endef
$(eval $(call KernelPackage,pcengines-apuv2))
x86: add support for Meraki MX100 This commit will add support for the Meraki MX100 in OpenWRT. Specs: * CPU: Intel Xeon E3-1200 Series 1.5GHz 2C/4T * Memory: 4GB DDR3 1600 ECC * Storage: 1GB USB NAND, 1TB SATA HDD * Wireless: None * Wired: 10x 1Gb RJ45, 2x 1Gb SFP UART: The UART header is named CONN11 and is found in the center of the mainboard. The pinout from Pin 1 (marked with a black triangle) to pin 4 is below: Pin 1: VCC Pin 2: TX Pin 3: RX Pin 4: GND Note that VCC is not required for UART on this device. Booting: 1. Flash/burn one of the images from this repo to a flash drive. 2. Take the top off the MX100, and unplug the SATA cable from the HDD. 3. Hook up UART to the MX100, plug in the USB drive, and then power up the device. 4. At the BIOS prompt, quickly press F7 and then scroll to the Save & Exit tab. 5. Scroll down to Boot Override, and select the UEFI entry for your jumpdrive. Note: UEFI booting will fail if the SATA cable for the HDD is plugged in. The issue is explained under the Flashing instructions. Flashing: 1. Ensure the MX100 is powered down, and not plugged into power. 2. Take the top off the MX100, and unplug the SATA cable from the HDD. 3. Using the Mini USB female port found by the SATA port on the motherboard, flash one of the images to the system. Example: `dd if=image of=/dev/sdb conv=fdatasync` where sdb is the USB device for the MX100's NAND. 4. Unplug the Mini USB, hook up UART to the MX100, and then power up the device. 5. At the BIOS prompt, quickly press F7 and then scroll to the Boot tab. 6. Change the boot order and set UEFI: USB DISK 2.0 as first, and USB DISK 2.0 as second. Disable the other boot options. 7. Go to Save & Exit, and then select Save Changes and Reset Note that OpenWRT will fail to boot in UEFI mode when the SATA hard drive is plugged in. To fix this, boot with the SATA disk unplugged and then run the following command: `sed -i "s|hd0,gpt1|hd1,gpt1|g" boot/grub/grub.cfg` Once the above is ran, OpenWRT will boot when the HDD is plugged into SATA. The reason this happens is the UEFI implementation for the MX100 will always set anything on SATA to HD0 instead of the onboard USB storage, so we have to accomidate it since OpenWRT's GRUB does not support detecting a boot disk via UUID. Signed-off-by: Chris Blake <chrisrblake93@gmail.com>
2021-10-01 14:38:56 +00:00
define KernelPackage/meraki-mx100
SUBMENU:=$(OTHER_MENU)
TITLE:=Cisco Meraki MX100 Platform Driver
DEPENDS:=@TARGET_x86 +kmod-tg3 +kmod-gpio-button-hotplug +kmod-leds-gpio \
+kmod-usb-ledtrig-usbport +PACKAGE_kmod-meraki-mx100:nu801 +kmod-itco-wdt \
+kmod-leds-uleds
x86: add support for Meraki MX100 This commit will add support for the Meraki MX100 in OpenWRT. Specs: * CPU: Intel Xeon E3-1200 Series 1.5GHz 2C/4T * Memory: 4GB DDR3 1600 ECC * Storage: 1GB USB NAND, 1TB SATA HDD * Wireless: None * Wired: 10x 1Gb RJ45, 2x 1Gb SFP UART: The UART header is named CONN11 and is found in the center of the mainboard. The pinout from Pin 1 (marked with a black triangle) to pin 4 is below: Pin 1: VCC Pin 2: TX Pin 3: RX Pin 4: GND Note that VCC is not required for UART on this device. Booting: 1. Flash/burn one of the images from this repo to a flash drive. 2. Take the top off the MX100, and unplug the SATA cable from the HDD. 3. Hook up UART to the MX100, plug in the USB drive, and then power up the device. 4. At the BIOS prompt, quickly press F7 and then scroll to the Save & Exit tab. 5. Scroll down to Boot Override, and select the UEFI entry for your jumpdrive. Note: UEFI booting will fail if the SATA cable for the HDD is plugged in. The issue is explained under the Flashing instructions. Flashing: 1. Ensure the MX100 is powered down, and not plugged into power. 2. Take the top off the MX100, and unplug the SATA cable from the HDD. 3. Using the Mini USB female port found by the SATA port on the motherboard, flash one of the images to the system. Example: `dd if=image of=/dev/sdb conv=fdatasync` where sdb is the USB device for the MX100's NAND. 4. Unplug the Mini USB, hook up UART to the MX100, and then power up the device. 5. At the BIOS prompt, quickly press F7 and then scroll to the Boot tab. 6. Change the boot order and set UEFI: USB DISK 2.0 as first, and USB DISK 2.0 as second. Disable the other boot options. 7. Go to Save & Exit, and then select Save Changes and Reset Note that OpenWRT will fail to boot in UEFI mode when the SATA hard drive is plugged in. To fix this, boot with the SATA disk unplugged and then run the following command: `sed -i "s|hd0,gpt1|hd1,gpt1|g" boot/grub/grub.cfg` Once the above is ran, OpenWRT will boot when the HDD is plugged into SATA. The reason this happens is the UEFI implementation for the MX100 will always set anything on SATA to HD0 instead of the onboard USB storage, so we have to accomidate it since OpenWRT's GRUB does not support detecting a boot disk via UUID. Signed-off-by: Chris Blake <chrisrblake93@gmail.com>
2021-10-01 14:38:56 +00:00
KCONFIG:=CONFIG_MERAKI_MX100
FILES:=$(LINUX_DIR)/drivers/platform/x86/meraki-mx100.ko
AUTOLOAD:=$(call AutoLoad,60,meraki-mx100,1)
endef
define KernelPackage/meraki-mx100/description
This driver provides support for the front button and LEDs on
the Cisco Meraki MX100 (Tinkerbell) 1U appliance. Note this also
selects the gpio-cdev nu801 userspace driver to support the Status
LED, as well as other required platform drivers.
endef
$(eval $(call KernelPackage,meraki-mx100))
define KernelPackage/w83627hf-wdt
SUBMENU:=$(OTHER_MENU)
TITLE:=Winbond 83627HF Watchdog Timer
DEPENDS:=@TARGET_x86
KCONFIG:=\
CONFIG_W83627HF_WDT \
CONFIG_WATCHDOG_CORE=y
FILES:=$(LINUX_DIR)/drivers/watchdog/w83627hf_wdt.ko
AUTOLOAD:=$(call AutoLoad,50,w83627hf-wdt,1)
endef
define KernelPackage/w83627hf-wdt/description
Kernel module for Winbond 83627HF Watchdog Timer
endef
$(eval $(call KernelPackage,w83627hf-wdt))