Linux 3.2.0 にあるカーネル モジュールを変更する必要があります。内drivers/staging/bcm
では、ドライバーはデバイス ID をサポートする必要がありますが、ファイルでは198F:015E
代わりにとして言及されていました。これを に変更しましたが、コンパイルが成功した後でも、新しいデバイス ID がカーネルによって取得されません。InterfaceInit.h
198F:15E
015E
の出力は次のmodinfo
とおりです。
filename: <somewhere/>bcm_wimax.ko
license: GPL
version: 5.2.45
description: Beceem Communications Inc. WiMAX driver
srcversion: D6016018ABCFFD16AF31D22
alias: usb:v19D2p0007d*dc*dsc*dp*ic*isc*ip*
alias: usb:v0489pE017d*dc*dsc*dp*ic*isc*ip*
alias: usb:v19D2p0132d*dc*dsc*dp*ic*isc*ip*
alias: usb:v198FpBCCDd*dc*dsc*dp*ic*isc*ip*
alias: usb:v198Fp0220d*dc*dsc*dp*ic*isc*ip*
alias: usb:v198Fp0210d*dc*dsc*dp*ic*isc*ip*
alias: usb:v198Fp0300d*dc*dsc*dp*ic*isc*ip*
depends:
vermagic: 3.2.0-26-generic-pae SMP mod_unload modversions 686
parm: debug:Debug level (0=none,...,16=all) (uint)
私198F:015E
はまだ表示されません !奇妙なことに、コンパイルを開始すると、モジュールのソース フォルダー内に bcm_wimax.mod.c というファイルが生成されます。modinfo
その中で、エイリアスのことを知りました。次のようになります。
#include <linux/module.h>
#include <linux/vermagic.h>
#include <linux/compiler.h>
MODULE_INFO(vermagic, VERMAGIC_STRING);
struct module __this_module
__attribute__((section(".gnu.linkonce.this_module"))) = {
.name = KBUILD_MODNAME,
.init = init_module,
#ifdef CONFIG_MODULE_UNLOAD
.exit = cleanup_module,
#endif
.arch = MODULE_ARCH_INIT,
};
MODULE_INFO(staging, "Y");
static const struct modversion_info ____versions[]
__used
__attribute__((section("__versions"))) = {
};
static const char __module_depends[]
__used
__attribute__((section(".modinfo"))) =
"depends=";
MODULE_ALIAS("usb:v198Fp0300d*dc*dsc*dp*ic*isc*ip*");
MODULE_ALIAS("usb:v198Fp0210d*dc*dsc*dp*ic*isc*ip*");
MODULE_ALIAS("usb:v198Fp0220d*dc*dsc*dp*ic*isc*ip*");
MODULE_ALIAS("usb:v198FpBCCDd*dc*dsc*dp*ic*isc*ip*");
MODULE_ALIAS("usb:v19D2p0132d*dc*dsc*dp*ic*isc*ip*");
MODULE_ALIAS("usb:v0489pE017d*dc*dsc*dp*ic*isc*ip*");
MODULE_ALIAS("usb:v19D2p0007d*dc*dsc*dp*ic*isc*ip*");
MODULE_INFO(srcversion, "D6016018ABCFFD16AF31D22");
しかし、変更しようとしましbcm_wimax.mod.c
たが、コンパイル後にファイルが元の状態に戻り、編集が削除されました。198f:015e
モジュール エイリアス セクションに my を追加するにはどうすればよいですか?