WhyCan Forum

本站无需注册,无需积分,无需回复可下载所有资料,如果真的喜欢小站,请您注册之后请至少回复一个帖子激活Id,谢谢支持! 站长QQ: 516333132 (挖坑网/填坑网) admin@whycan.cn

您尚未登录。

#1 2019-03-13 13:10:16

qianhao
会员
注册时间: 2017-12-14
累计积分: 115

V3S主线驱动wifi-esp8089

参考了几位网友的帖子,wifi还是没有调通,特来开一贴,求教各位大神
下面附上我搬来大神的资源ESP8089.pdfesp8089-cleanup.zip
第一个是操作步骤  第二是源码。按照大神步骤来配置内核,不知道为何, 打死他都没有去编译这源码。求教!

最近编辑记录 qianhao (2019-03-13 13:40:59)

离线

#2 2019-03-13 13:38:18

晕哥
Administrator
注册时间: 2017-09-06
累计积分: 6,471

Re: V3S主线驱动wifi-esp8089

参考一下: https://whycan.cn/t_2091.html
linux4.19 esp8089


代码这里下载的: https://github.com/Lichee-Pi/esp8089

离线

#3 2019-03-13 14:41:10

晕哥
Administrator
注册时间: 2017-09-06
累计积分: 6,471

Re: V3S主线驱动wifi-esp8089

1. 克隆代码:

2. 修改 Makefile:

obj-$(CONFIG_ESP8089) := esp8089.o

改为:

obj-m := esp8089.o

3. 编译:

ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- make -C /opt/linux-v3s/ M=${PWD}  modules

4. 修复一个编译错误, 参考: https://github.com/lwfinger/rtlwifi_new/issues/247

step 1: sudo vim /usr/src/linux-headers-$(uname -r)/include/net/mac80211.h
(Note: taking backup of the file is recommended).

step 2 : comment this enum: "enum mac80211_rx_flags { }"

step 3 : Add the following instead:
enum mac80211_rx_flags {
RX_FLAG_MMIC_ERROR = BIT(0),
RX_FLAG_DECRYPTED = BIT(1),
RX_FLAG_MACTIME_PLCP_START = BIT(2),
RX_FLAG_MMIC_STRIPPED = BIT(3),
RX_FLAG_IV_STRIPPED = BIT(4),
RX_FLAG_FAILED_FCS_CRC = BIT(5),
RX_FLAG_FAILED_PLCP_CRC = BIT(6),
RX_FLAG_MACTIME_START = BIT(7),
RX_FLAG_SHORTPRE = BIT(8),
RX_FLAG_HT = BIT(9),
RX_FLAG_40MHZ = BIT(10),
RX_FLAG_SHORT_GI = BIT(11),
RX_FLAG_NO_SIGNAL_VAL = BIT(12),
RX_FLAG_HT_GF = BIT(13),
RX_FLAG_AMPDU_DETAILS = BIT(14),
RX_FLAG_PN_VALIDATED = BIT(15),
RX_FLAG_DUP_VALIDATED = BIT(16),
RX_FLAG_AMPDU_LAST_KNOWN = BIT(17),
RX_FLAG_AMPDU_IS_LAST = BIT(18),
RX_FLAG_AMPDU_DELIM_CRC_ERROR = BIT(19),
RX_FLAG_AMPDU_DELIM_CRC_KNOWN = BIT(20),
RX_FLAG_MACTIME_END = BIT(21),
RX_FLAG_VHT = BIT(22),
RX_FLAG_LDPC = BIT(23),
RX_FLAG_ONLY_MONITOR = BIT(24),
RX_FLAG_SKIP_MONITOR = BIT(25),
RX_FLAG_STBC_MASK = BIT(26) | BIT(27),
RX_FLAG_10MHZ = BIT(28),
RX_FLAG_5MHZ = BIT(29),
RX_FLAG_AMSDU_MORE = BIT(30),
RX_FLAG_RADIOTAP_VENDOR_DATA = BIT(31),
RX_FLAG_MIC_STRIPPED = BIT_ULL(32),
RX_FLAG_ALLOW_SAME_PN = BIT_ULL(33),
};

5. 编译log:

ubuntu:/opt/esp8089$ ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- make -C /opt/linux-v3s/ M=${PWD}  modules
make: Entering directory `/opt/linux-uart2'
  CC [M]  /opt/esp8089/esp_debug.o
  CC [M]  /opt/esp8089/sdio_sif_esp.o
  CC [M]  /opt/esp8089/esp_io.o
  CC [M]  /opt/esp8089/esp_file.o
  CC [M]  /opt/esp8089/esp_main.o
  CC [M]  /opt/esp8089/esp_sip.o
  CC [M]  /opt/esp8089/esp_ext.o
  CC [M]  /opt/esp8089/esp_ctrl.o
  CC [M]  /opt/esp8089/esp_mac80211.o
  CC [M]  /opt/esp8089/esp_utils.o
  LD [M]  /opt/esp8089/esp8089.o
  Building modules, stage 2.
  MODPOST 1 modules
  CC      /opt/esp8089/esp8089.mod.o
  LD [M]  /opt/esp8089/esp8089.ko
make: Leaving directory `/opt/linux_v3s'

离线

#4 2019-03-13 14:47:12

qianhao
会员
注册时间: 2017-12-14
累计积分: 115

Re: V3S主线驱动wifi-esp8089

step 1: sudo vim /usr/src/linux-headers-$(uname -r)/include/net/mac80211.h
(Note: taking backup of the file is recommended).

step 2 : comment this enum: "enum mac80211_rx_flags { }"

step 3 : Add the following instead:
enum mac80211_rx_flags {
RX_FLAG_MMIC_ERROR = BIT(0),
RX_FLAG_DECRYPTED = BIT(1),
RX_FLAG_MACTIME_PLCP_START = BIT(2),
RX_FLAG_MMIC_STRIPPED = BIT(3),
RX_FLAG_IV_STRIPPED = BIT(4),
RX_FLAG_FAILED_FCS_CRC = BIT(5),
RX_FLAG_FAILED_PLCP_CRC = BIT(6),
RX_FLAG_MACTIME_START = BIT(7),
RX_FLAG_SHORTPRE = BIT(8),
RX_FLAG_HT = BIT(9),
RX_FLAG_40MHZ = BIT(10),
RX_FLAG_SHORT_GI = BIT(11),
RX_FLAG_NO_SIGNAL_VAL = BIT(12),
RX_FLAG_HT_GF = BIT(13),
RX_FLAG_AMPDU_DETAILS = BIT(14),
RX_FLAG_PN_VALIDATED = BIT(15),
RX_FLAG_DUP_VALIDATED = BIT(16),
RX_FLAG_AMPDU_LAST_KNOWN = BIT(17),
RX_FLAG_AMPDU_IS_LAST = BIT(18),
RX_FLAG_AMPDU_DELIM_CRC_ERROR = BIT(19),
RX_FLAG_AMPDU_DELIM_CRC_KNOWN = BIT(20),
RX_FLAG_MACTIME_END = BIT(21),
RX_FLAG_VHT = BIT(22),
RX_FLAG_LDPC = BIT(23),
RX_FLAG_ONLY_MONITOR = BIT(24),
RX_FLAG_SKIP_MONITOR = BIT(25),
RX_FLAG_STBC_MASK = BIT(26) | BIT(27),
RX_FLAG_10MHZ = BIT(28),
RX_FLAG_5MHZ = BIT(29),
RX_FLAG_AMSDU_MORE = BIT(30),
RX_FLAG_RADIOTAP_VENDOR_DATA = BIT(31),
RX_FLAG_MIC_STRIPPED = BIT_ULL(32),
RX_FLAG_ALLOW_SAME_PN = BIT_ULL(33),
};

离线

页脚