1*4882a593Smuzhiyun################################################################################ 2*4882a593Smuzhiyun# 3*4882a593Smuzhiyun# dahdi-linux 4*4882a593Smuzhiyun# 5*4882a593Smuzhiyun################################################################################ 6*4882a593Smuzhiyun 7*4882a593SmuzhiyunDAHDI_LINUX_VERSION = 5c840cf43838e0690873e73409491c392333b3b8 8*4882a593SmuzhiyunDAHDI_LINUX_SITE = git://git.asterisk.org/dahdi/linux.git 9*4882a593Smuzhiyun 10*4882a593Smuzhiyun# We need to download all those firmware blobs ourselves, otherwise 11*4882a593Smuzhiyun# dahdi-linux will try to download them at install time. 12*4882a593SmuzhiyunDAHDI_LINUX_FW_SITE = http://downloads.digium.com/pub/telephony/firmware/releases 13*4882a593SmuzhiyunDAHDI_LINUX_FW_FILES = \ 14*4882a593Smuzhiyun dahdi-fwload-vpmadt032-1.25.0.tar.gz \ 15*4882a593Smuzhiyun dahdi-fw-oct6114-032-1.05.01.tar.gz \ 16*4882a593Smuzhiyun dahdi-fw-oct6114-064-1.05.01.tar.gz \ 17*4882a593Smuzhiyun dahdi-fw-oct6114-128-1.05.01.tar.gz \ 18*4882a593Smuzhiyun dahdi-fw-oct6114-256-1.05.01.tar.gz \ 19*4882a593Smuzhiyun dahdi-fw-tc400m-MR6.12.tar.gz \ 20*4882a593Smuzhiyun dahdi-fw-hx8-2.06.tar.gz \ 21*4882a593Smuzhiyun dahdi-fw-vpmoct032-1.12.0.tar.gz \ 22*4882a593Smuzhiyun dahdi-fw-te820-1.76.tar.gz \ 23*4882a593Smuzhiyun dahdi-fw-te133-7a001e.tar.gz \ 24*4882a593Smuzhiyun dahdi-fw-te134-780017.tar.gz \ 25*4882a593Smuzhiyun dahdi-fw-a8b-1f001e.tar.gz \ 26*4882a593Smuzhiyun dahdi-fw-a8a-1d0017.tar.gz \ 27*4882a593Smuzhiyun dahdi-fw-a4b-d001e.tar.gz \ 28*4882a593Smuzhiyun dahdi-fw-a4a-a0017.tar.gz \ 29*4882a593Smuzhiyun dahdi-fw-te435-13001e.tar.gz \ 30*4882a593Smuzhiyun dahdi-fw-te436-10017.tar.gz 31*4882a593Smuzhiyun 32*4882a593SmuzhiyunDAHDI_LINUX_EXTRA_DOWNLOADS = \ 33*4882a593Smuzhiyun $(patsubst %,$(DAHDI_LINUX_FW_SITE)/%,$(DAHDI_LINUX_FW_FILES)) 34*4882a593Smuzhiyun 35*4882a593Smuzhiyun# dahdi-linux claims to be GPLv2 with parts LGPLv2.1 (not 'or later'), 36*4882a593Smuzhiyun# but there are the so-called firmware files (downloaded above) for 37*4882a593Smuzhiyun# which the license is unclear: the header claims to be GPLv2, the 38*4882a593Smuzhiyun# 'loader-wrapper' claims to be GPLv2, but there are two so-called 39*4882a593Smuzhiyun# 'firmware' binary-only .o blobs for which the license is not 40*4882a593Smuzhiyun# explicited, which look like they end up as part of a kernel module, 41*4882a593Smuzhiyun# and for which the source is nowhere to be found on the upstream site 42*4882a593Smuzhiyun# (they are only for x86/x86_64, but we still list them unconditionally). 43*4882a593SmuzhiyunDAHDI_LINUX_LICENSE = GPL-2.0, LGPL-2.1, unknown (firmware files) 44*4882a593SmuzhiyunDAHDI_LINUX_LICENSE_FILES = LICENSE LICENSE.LGPL 45*4882a593Smuzhiyun 46*4882a593SmuzhiyunDAHDI_LINUX_INSTALL_STAGING = YES 47*4882a593Smuzhiyun 48*4882a593SmuzhiyunDAHDI_LINUX_MODULE_SUBDIRS = drivers/dahdi 49*4882a593Smuzhiyun 50*4882a593SmuzhiyunDAHDI_LINUX_MODULE_MAKE_OPTS = \ 51*4882a593Smuzhiyun KSRC=$(LINUX_DIR) \ 52*4882a593Smuzhiyun KVERS=$(LINUX_VERSION_PROBED) \ 53*4882a593Smuzhiyun DAHDI_BUILD_ALL=m \ 54*4882a593Smuzhiyun DAHDI_INCLUDE=$(@D)/include \ 55*4882a593Smuzhiyun INSTALL_MOD_DIR=dahdi 56*4882a593Smuzhiyun 57*4882a593Smuzhiyundefine DAHDI_LINUX_EXTRACT_FW 58*4882a593Smuzhiyun $(foreach f,$(DAHDI_LINUX_FW_FILES),\ 59*4882a593Smuzhiyun cp $(DAHDI_LINUX_DL_DIR)/$(f) $(@D)/drivers/dahdi/firmware/$(f)$(sep)) 60*4882a593Smuzhiyunendef 61*4882a593SmuzhiyunDAHDI_LINUX_POST_EXTRACT_HOOKS += DAHDI_LINUX_EXTRACT_FW 62*4882a593Smuzhiyun 63*4882a593Smuzhiyundefine DAHDI_LINUX_LINUX_CONFIG_FIXUPS 64*4882a593Smuzhiyun $(call KCONFIG_ENABLE_OPT,CONFIG_CRC_CCITT) 65*4882a593Smuzhiyunendef 66*4882a593Smuzhiyun 67*4882a593Smuzhiyun# Need to pass the same options as for building the modules, because 68*4882a593Smuzhiyun# it wants to scan Linux' .config file to check whether some options 69*4882a593Smuzhiyun# are set or not (like CONFIG_FW_LOADER). 70*4882a593Smuzhiyundefine DAHDI_LINUX_CONFIGURE_CMDS 71*4882a593Smuzhiyun $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) \ 72*4882a593Smuzhiyun $(DAHDI_LINUX_MODULE_MAKE_OPTS) \ 73*4882a593Smuzhiyun prereq 74*4882a593Smuzhiyunendef 75*4882a593Smuzhiyun 76*4882a593Smuzhiyundefine DAHDI_LINUX_INSTALL_STAGING_CMDS 77*4882a593Smuzhiyun $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) \ 78*4882a593Smuzhiyun $(DAHDI_LINUX_MODULE_MAKE_OPTS) \ 79*4882a593Smuzhiyun DESTDIR=$(STAGING_DIR) \ 80*4882a593Smuzhiyun install-include 81*4882a593Smuzhiyunendef 82*4882a593Smuzhiyun 83*4882a593Smuzhiyundefine DAHDI_LINUX_INSTALL_TARGET_CMDS 84*4882a593Smuzhiyun $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) \ 85*4882a593Smuzhiyun $(DAHDI_LINUX_MODULE_MAKE_OPTS) \ 86*4882a593Smuzhiyun DESTDIR=$(TARGET_DIR) \ 87*4882a593Smuzhiyun install-firmware \ 88*4882a593Smuzhiyun install-xpp-firm 89*4882a593Smuzhiyunendef 90*4882a593Smuzhiyun 91*4882a593Smuzhiyun$(eval $(kernel-module)) 92*4882a593Smuzhiyun$(eval $(generic-package)) 93