include: add AutoProbe support

This is needed to make modprobe work

Signed-off-by: John Crispin <blogic@openwrt.org>

SVN-Revision: 38020
This commit is contained in:
John Crispin 2013-09-17 21:45:05 +00:00
parent aa2109fb1f
commit 022cadd64e

View file

@ -79,6 +79,25 @@ endef
define ModuleAutoLoad define ModuleAutoLoad
$(SH_FUNC) \ $(SH_FUNC) \
export modules=; \ export modules=; \
probe_module() { \
mods="$$$$$$$$1"; \
boot="$$$$$$$$2"; \
shift 2; \
for mod in $$$$$$$$mods; do \
if [ -e $(2)/$(MODULES_SUBDIR)/$$$$$$$$mod.ko ]; then \
mkdir -p $(2)/etc/modules.d; \
echo "$$$$$$$$mod" >> $(2)/etc/modules.d/$(1); \
fi; \
done; \
if [ -e $(2)/etc/modules.d/$(1) ]; then \
if [ "$$$$$$$$boot" = "1" ]; then \
mkdir -p $(2)/etc/modules-boot.d; \
ln -s ../modules.d/$(1) $(2)/etc/modules-boot.d/; \
fi; \
modules="$$$$$$$${modules:+$$$$$$$$modules}"; \
fi; \
dkl; \
}; \
add_module() { \ add_module() { \
priority="$$$$$$$$1"; \ priority="$$$$$$$$1"; \
mods="$$$$$$$$2"; \ mods="$$$$$$$$2"; \
@ -194,6 +213,10 @@ define AutoLoad
add_module "$(1)" "$(2)" "$(3)"; add_module "$(1)" "$(2)" "$(3)";
endef endef
define AutoProbe
probe_module "$(1)" "$(2)";
endef
version_field=$(if $(word $(1),$(2)),$(word $(1),$(2)),0) version_field=$(if $(word $(1),$(2)),$(word $(1),$(2)),0)
kernel_version_merge=$$(( ($(call version_field,1,$(1)) << 24) + ($(call version_field,2,$(1)) << 16) + ($(call version_field,3,$(1)) << 8) + $(call version_field,4,$(1)) )) kernel_version_merge=$$(( ($(call version_field,1,$(1)) << 24) + ($(call version_field,2,$(1)) << 16) + ($(call version_field,3,$(1)) << 8) + $(call version_field,4,$(1)) ))