LICENSE := GPLv2 VERSION := 2 DOWNLOADS := dwc_otg.git usb.archive intel_fb.archive lxip.archive \ wifi.archive fec.archive libnl.archive wpa_supplicant.archive \ fw_3160.archive fw_6000.archive fw_6205a.archive fw_6205b.archive \ fw_7260.archive fw_7265.archive fw_8260.archive fw_1000.archive # # Tools # $(call check_tool,flex) $(call check_tool,bison) FLEX = flex YACC = bison # # The git checkout checks for the existence of SRC_DIR, which is created by the # Linux extraction, therefore make sure to checkout the GIT sources first. # usb.archive: dwc_otg.git # # The git checkout checks for the existence of SRC_DIR, which is created by the # Linux extraction, therefore make sure to checkout the GIT sources first. # usb.archive: dwc_otg.git # # USB # SRC_DIR_USB := src/lib/usb VERSION_USB := 4.4.3 URL(usb) := https://www.kernel.org/pub/linux/kernel/v4.x/linux-$(VERSION_USB).tar.xz SHA(usb) := 336d66925a15ce9077cbf2c38acbdc6c2644e33f DIR(usb) := $(SRC_DIR_USB) TAR_OPT(usb) := --strip-components=1 --files-from - < <(sed 's/-x.x.x/-$(VERSION_USB)/g' $(REP_DIR)/usb.list) HASH_INPUT += $(REP_DIR)/usb.list # # Raspberry Pi USB controller # URL(dwc_otg) := https://github.com/ssumpf/dwc_otg.git REV(dwc_otg) := r3 DIR(dwc_otg) := $(SRC_DIR_USB)/drivers/usb/host/dwc_otg # # Intel framebuffer driver # SRC_DIR_INTEL_FB := src/drivers/framebuffer/intel VERSION_INTEL_FB := 4.4.3 URL(intel_fb) := https://www.kernel.org/pub/linux/kernel/v4.x/linux-$(VERSION_INTEL_FB).tar.xz SHA(intel_fb) := 336d66925a15ce9077cbf2c38acbdc6c2644e33f DIR(intel_fb) := $(SRC_DIR_INTEL_FB) TAR_OPT(intel_fb) := --strip-components=1 --files-from - < <(sed 's/-x.x.x/-$(VERSION_INTEL_FB)/g' $(REP_DIR)/intel_fb.list) HASH_INPUT += $(REP_DIR)/intel_fb.list # # mac80211 stack, iwlwifi sources # SRC_DIR_WIFI := src/lib/wifi VERSION_WIFI := 4.4.3 URL(wifi) := https://www.kernel.org/pub/linux/kernel/v4.x/linux-$(VERSION_WIFI).tar.xz SHA(wifi) := 336d66925a15ce9077cbf2c38acbdc6c2644e33f DIR(wifi) := $(SRC_DIR_WIFI) TAR_OPT(wifi) := --strip-components=1 --files-from - < <(sed 's/-x.x.x/-$(VERSION_WIFI)/g' $(REP_DIR)/wifi.list) HASH_INPUT += $(REP_DIR)/wifi.list # # IP stack sources # SRC_DIR_LXIP := src/lib/lxip VERSION_LXIP := 4.4.3 URL(lxip) := https://www.kernel.org/pub/linux/kernel/v4.x/linux-$(VERSION_LXIP).tar.xz SHA(lxip) := 336d66925a15ce9077cbf2c38acbdc6c2644e33f DIR(lxip) := $(SRC_DIR_LXIP) TAR_OPT(lxip) := --strip-components=1 --files-from - < <(sed 's/-x.x.x/-$(VERSION_LXIP)/g' $(REP_DIR)/lxip.list) HASH_INPUT += $(REP_DIR)/lxip.list # # Freescale Ethernet controller # SRC_DIR_FEC := src/drivers/nic/fec VERSION_FEC := 4.4.3 URL(fec) := https://www.kernel.org/pub/linux/kernel/v4.x/linux-$(VERSION_FEC).tar.xz SHA(fec) := 336d66925a15ce9077cbf2c38acbdc6c2644e33f DIR(fec) := $(SRC_DIR_FEC) TAR_OPT(fec) := --strip-components=1 --files-from - < <(sed 's/-x.x.x/-$(VERSION_FEC)/g' $(REP_DIR)/fec.list) HASH_INPUT += $(REP_DIR)/fec.list # # libnl sources # URL(libnl) := https://github.com/thom311/libnl/releases/download/libnl3_2_25/libnl-3.2.25.tar.gz SHA(libnl) := b7a4981f7edf7398256d35fd3c0b87bc84ae27d1 DIR(libnl) := src/lib/libnl default: generate_libnl_files generate_libnl_files: $(DOWNLOADS) @$(MSG_PREFIX)"generate libnl files " $(VERBOSE)$(FLEX) --header-file=${DIR(libnl)}/lib/route/pktloc_grammar.h \ -o ${DIR(libnl)}/lib/route/pktloc_grammar.c \ ${DIR(libnl)}/lib/route/pktloc_grammar.l $(VERBOSE)$(YACC) -d -o ${DIR(libnl)}/lib/route/pktloc_syntax.c \ ${DIR(libnl)}/lib/route/pktloc_syntax.y $(VERBOSE)$(FLEX) --header-file=${DIR(libnl)}/lib/route/cls/ematch_grammar.h \ -o ${DIR(libnl)}/lib/route/cls/ematch_grammar.c \ ${DIR(libnl)}/lib/route/cls/ematch_grammar.l $(VERBOSE)$(YACC) -d -o ${DIR(libnl)}/lib/route/cls/ematch_syntax.c \ ${DIR(libnl)}/lib/route/cls/ematch_syntax.y # # wpa_supplicant sources # URL(wpa_supplicant) := https://w1.fi/releases/wpa_supplicant-2.2.tar.gz SHA(wpa_supplicant) := 0c2ff4fd2e2f6325147cca0357d6c9f524efa26a DIR(wpa_supplicant) := src/app/wpa_supplicant # # Firmware images for iwlwifi Intel Wireless 3160 # URL(fw_3160) := https://wireless.wiki.kernel.org/_media/en/users/drivers/iwlwifi-3160-ucode-16.242414.0.tgz SHA(fw_3160) := 4777e85d75d3dc17ba40dd32f30cd9ebdcf9e533 DIR(fw_3160) := firmware # # Firmware images for iwlwifi Ultimate-N 6300 and Advanced-N 6200 # URL(fw_6000) := https://wireless.wiki.kernel.org/_media/en/users/drivers/iwlwifi-6000-ucode-9.221.4.1.tgz SHA(fw_6000) := a888cf54974702594e82bcbfca20c26d8f906e9f DIR(fw_6000) := firmware # # Firmware images for iwlwifi Advanced-N 6205 # URL(fw_6205a) := https://wireless.wiki.kernel.org/_media/en/users/drivers/iwlwifi-6000g2a-ucode-18.168.6.1.tgz SHA(fw_6205a) := a542c82dba96e0bfb1b0e01817a59575c5c87fc4 DIR(fw_6205a) := firmware # # Firmware images for iwlwifi Advanced-N 6230 / 6235 and Wireless-N 130 / 1030 # URL(fw_6205b) := https://wireless.wiki.kernel.org/_media/en/users/drivers/iwlwifi-6000g2b-ucode-18.168.6.1.tgz SHA(fw_6205b) := f4c72b75ae8415661182d63154234dc0a55bc3db DIR(fw_6205b) := firmware # # Firmware images for iwlwifi Wireless 7260 # URL(fw_7260) := https://wireless.wiki.kernel.org/_media/en/users/drivers/iwlwifi-7260-ucode-16.242414.0.tgz SHA(fw_7260) := e167ae4d3ed5ac5ca4d8b5f154d47324809717e6 DIR(fw_7260) := firmware # # Firmware images for iwlwifi Wireless 7265 # URL(fw_7265) := https://wireless.wiki.kernel.org/_media/en/users/drivers/iwlwifi-7265-ucode-16.242414.0.tgz SHA(fw_7265) := 2a408809f51d552aa2c5d26c9a582d7729ce612b DIR(fw_7265) := firmware # # Firmware images for iwlwifi Wireless 8260 # URL(fw_8260) := https://wireless.wiki.kernel.org/_media/en/users/drivers/iwlwifi-8000-ucode-16.242414.0.tgz SHA(fw_8260) := ec5ee829aeebab93e1228848a7675e4469ab3ce2 DIR(fw_8260) := firmware # # Firmware images for iwlwifi Wireless-N 1000 # URL(fw_1000) := https://wireless.wiki.kernel.org/_media/en/users/drivers/iwlwifi-1000-ucode-39.31.5.1.tgz SHA(fw_1000) := 6b2d9e0fe18ffa98c8335f989833ef12a2f4604b DIR(fw_1000) := firmware https://wireless.wiki.kernel.org/_media/en/users/drivers/iwlwifi-1000-ucode-39.31.5.1.tgz # # Patches # PATCHES := $(addprefix patches/,$(notdir $(wildcard $(REP_DIR)/patches/w*.patch))) PATCHES += $(addprefix patches/,$(notdir $(wildcard $(REP_DIR)/patches/libnl*.patch))) PATCHES += $(addprefix patches/,$(notdir $(wildcard $(REP_DIR)/patches/lxip*.patch))) PATCHES += $(addprefix patches/,$(notdir $(wildcard $(REP_DIR)/patches/intel*.patch))) PATCHES += $(addprefix patches/,$(notdir $(wildcard $(REP_DIR)/patches/usb*.patch))) PATCHES += $(addprefix patches/,$(notdir $(wildcard $(REP_DIR)/patches/intel*.patch))) PATCHES += $(addprefix patches/,$(notdir $(wildcard $(REP_DIR)/patches/fec_*.patch))) #IP stack LXIP_OPT = -p1 -d$(SRC_DIR_LXIP) PATCH_OPT(patches/lxip_icmp.patch) := $(LXIP_OPT) PATCH_OPT(patches/lxip_ip_config.patch) := $(LXIP_OPT) PATCH_OPT(patches/lxip_netlink.patch) := $(LXIP_OPT) PATCH_OPT(patches/lxip_request_sock.patch) := $(LXIP_OPT) PATCH_OPT(patches/lxip_sk_wq.patch) := $(LXIP_OPT) PATCH_OPT(patches/lxip_skbuff_cast.patch) := $(LXIP_OPT) # WIFI WIFI_OPT = -p1 -d$(SRC_DIR_WIFI) PATCH_OPT(patches/wifi.patch) := $(WIFI_OPT) PATCH_OPT(patches/wifi_crypto.patch) := $(WIFI_OPT) PATCH_OPT(patches/wifi_mem.patch) := $(WIFI_OPT) # libnl PATCH_OPT(patches/libnl.patch) := -p1 -d ${DIR(libnl)} # WPA supplicant PATCH_OPT(patches/wpa_supplicant.patch) := -p1 -d ${DIR(wpa_supplicant)} # USB USB_OPT = -p1 -d$(SRC_DIR_USB) PATCH_OPT(patches/usb_ax88179.patch) := $(USB_OPT) PATCH_OPT(patches/usb_csum.patch) := $(USB_OPT) PATCH_OPT(patches/usb_evdev.patch) := $(USB_OPT) PATCH_OPT(patches/usb_mem.patch) := $(USB_OPT) PATCH_OPT(patches/usb_usbnet.patch) := $(USB_OPT) PATCH_OPT(patches/usb_rndis.patch) := $(USB_OPT) # INTEL FB PATCH_OPT(patches/intel_fb_export_api.patch) := -p1 -d$(SRC_DIR_INTEL_FB) PATCH_OPT(patches/intel_fb_drm_remove.patch) := -p1 -d$(SRC_DIR_INTEL_FB) PATCH_OPT(patches/intel_fb_backlight.patch) := -p1 -d$(SRC_DIR_INTEL_FB) # Freescale NIC PATCH_OPT(patches/fec_skbuff_cast.patch) := -p1 -d$(SRC_DIR_FEC) # vi: set ft=make :