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