openwifi用到了linux内核,是一个比较完整的嵌入式linux系统。这里还是需要用到装好vivado2018.3的ubuntu系统(虚拟机也可)。因为openwifi作者已经做好了很方便的脚本,所以我们操作的步骤也是非常简单。

1,首先是递归下载openwifi的整个项目。

git clone --recursive https://github.com/open-sdr/openwifi

如果多次失败,可以使用我另外一个博客介绍的脚本,进行自动尝试下载。

2,编译linux内核。下载完毕之后运行一下脚本。

cd openwifi
git checkout sdrpi
export XILINX_DIR=/tools/Xilinx
cd user_space
./prepare_kernel.sh  $XILINX_DIR 32 build

之后就是几分钟的运行:

运行成功后会在openwifi/adi-linux/arch/arm/boot目录看到生成的uImage内核文件,此文件将被拷贝到sd的boot分区。

3,编译驱动,由于驱动是和内核完全对应的,每次编译完内核建议一定要编译一下对应的驱动。步骤很简单,openwifi作者也给出了脚本。执行如下:

cd openwifi/driver
./make_all.sh $XILINX_DIR 32

驱动编译完毕之后会在driver目录下生成若干.ko文件。我们保存在一个新建的目录ko里面。

cd openwifi/driver
mkdir ko
cp `find ./ -name \*.ko` ./ko

总结这样我们就得到了linux的内核文件uImage,以及对应的动态加载驱动放在KO文件夹里面。

其中uImage是放在SD卡的boot区,ko文件夹最终我们要拷贝到sd得rootfs分区下面的openwifi目录里面供安装脚本wgd.sh和fosdem.sh调用。保存这些文件我们后续详细介绍如何使用。

网盘连接A:2022-0921下载的openwifi项目包:

链接:https://pan.baidu.com/s/1NUaAbnqDHU8cLdVReh2Z9g 
提取码:iagz 

网盘连接B:A经过上述介绍的步骤操作后得到的项目代码压缩包。

链接:https://pan.baidu.com/s/1LcKkumHbkz0cS7p4AixBYA 
提取码:wxxv 

网盘连接C:上述生成的uImage文件以及ko目录的压缩包。

链接:https://pan.baidu.com/s/1ekPEr2mDzYWYYKjrud-c8A 
提取码:978q 

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐