我正在尝试使用命令行连接到 ad-hoc 网络而没有激活设置中的 Wifi。当使用“insmod /system/modules/bcm4329.ko”加载时,我的 nexus S 只是挂起。'dmesg' 显示未找到固件;fw_bcm4329.bin 实际上在 /system/vendor/firmware/fw_bcm4329.bin 中:
<4>[ 354.173186] DHD: dongle ram size is set to 294912(orig 294912)
<4>[ 354.174251] _dhdsdio_download_firmware: dongle image file
download failed
<4>[ 354.174441] dhd_bus_start: dhdsdio_probe_download failed.
firmware = /system/etc/firmware/fw_bcm4329.bin nvram = /proc/
calibration
<4>[ 354.174600] dhdsdio_probe: failed
<4>[ 365.941444] dhd_module_init: sdio_register_driver timeout
将固件链接到所需位置无济于事。问题:谁能帮我理解 Nexus S 是如何加载这个模块的?
文件 /hardware/libhardware_legacy/wifi/wifi.c 有以下几行:
static const char IFACE_DIR[] = "/data/system/
wpa_supplicant";
static const char DRIVER_MODULE_NAME[] = WIFI_DRIVER_MODULE_NAME;
static const char DRIVER_MODULE_TAG[] = WIFI_DRIVER_MODULE_NAME " ";
static const char DRIVER_MODULE_PATH[] = WIFI_DRIVER_MODULE_PATH;
static const char DRIVER_MODULE_ARG[] = WIFI_DRIVER_MODULE_ARG;
static const char FIRMWARE_LOADER[] = WIFI_FIRMWARE_LOADER;
static const char DRIVER_PROP_NAME[] = "wlan.driver.status";
问题:wifi 模块的路径是否在某处重新定义?
谢谢