diff options
author | John Crispin <john@openwrt.org> | 2013-09-17 21:45:05 +0000 |
---|---|---|
committer | John Crispin <john@openwrt.org> | 2013-09-17 21:45:05 +0000 |
commit | 022cadd64e8a24818d15b22bc28f3460e0b2519c (patch) | |
tree | 7042ab2f0b01f0e354804808fdc0be3b2f1aa08a /include | |
parent | aa2109fb1fbb3670af8e0b7b733b55211490013d (diff) | |
download | upstream-022cadd64e8a24818d15b22bc28f3460e0b2519c.tar.gz upstream-022cadd64e8a24818d15b22bc28f3460e0b2519c.tar.bz2 upstream-022cadd64e8a24818d15b22bc28f3460e0b2519c.zip |
include: add AutoProbe support
This is needed to make modprobe work
Signed-off-by: John Crispin <blogic@openwrt.org>
SVN-Revision: 38020
Diffstat (limited to 'include')
-rw-r--r-- | include/kernel.mk | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/include/kernel.mk b/include/kernel.mk index 5442c9153f..86100d7859 100644 --- a/include/kernel.mk +++ b/include/kernel.mk @@ -79,6 +79,25 @@ endef define ModuleAutoLoad $(SH_FUNC) \ 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() { \ priority="$$$$$$$$1"; \ mods="$$$$$$$$2"; \ @@ -194,6 +213,10 @@ define AutoLoad add_module "$(1)" "$(2)" "$(3)"; endef +define AutoProbe + probe_module "$(1)" "$(2)"; +endef + 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)) )) |