Linux 下使用 vt6656 和 WEXT 的 SSID 名称无效

Linux 下使用 vt6656 和 WEXT 的 SSID 名称无效

硬件:定制基板上的 Technexion TDM3730 模块。软件:基于 Technexion 发行版的 Linux 内核 v.2.6.37

最初,我有 2 种 TDM3730 模块变体:带和不带 wifi 芯片。
模块包含板载 WiFi 芯片,使用 libertas_sdio 驱动程序和 nl80211,工作正常。
但我想将外部 WiFi 模块连接到另一个模块变体。

我有 USB WiFi 模块 VT6656,我的 Linux 内核已经有相应的驱动程序(在 stage 子目录中)。驱动程序 insmod 运行良好,注册了 eth1 接口。
“ifconfig eth1 some.my.ip.addr up”运行正常,但我收到两条奇怪的消息:
“Config_FileOperation file Not exist”和“Zone=[2][E][U]”
然后“iwlist eth1 scan”运行正常,我可以看到我们所有的 wifi 网络。
所以我正在制作 wpa_passphrase 并获取配置:

network={
ssid="智能焊锡室"
#psk="my_psk_in_text"
psk=my_psk_in_hex_string
}

最后,当我调用
wpa_supplicant -B -Dwext -ieth1 -c /path/to/my/conf时
,我收到来自 vt6656 驱动程序的消息,如未
找到扫描 [g¦isQ Jü)=¦ëªvóF|TT°Z.c3ßãÚ],已断开连接!

看起来名称不包含任何非 ASCII 字符,被错误地传递给了驱动程序(板载 wifi 芯片的相同配置完全正常)。但是这种名称损坏的原因是什么?wpa_supplicant 应用程序、WEXT 驱动程序、vt6656 驱动程序?有已知的方法可以解决这个问题吗?

相关内容