目录
概述
在前一篇博文中已经提到,RT-Thread的官方驱动中的有点小缺陷,我们通过修改SConscript文件解决了这个问题。为了彻底解决这个问题方便大家使用,我想把这个解决方案作为PR提交给官方,让他们将修改融入RT-Thread的代码中。最终经过努力,在官方人员的指导下,我完善了解决方案,并最终并加入到官方代码中。
提交PR的过程
RT-Thread有一个运作得非常成功的社区,一直鼓励大家提交PR来改进和完善软件的。有关PR提交的步骤,在其社区有一个详细的说明:RT-Thread-向RT-Thread 提交Pull Request(PR)RT-Thread问答社区 - RT-Thread。他们还专门制作了一个B站视频:从0教你如何给RT-Thread贡献代码_哔哩哔哩_bilibili。
我也按照其要求,向其Github仓库提交了PR:Update SConscript by zealsoftstudio · Pull Request #8705 · RT-Thread/rt-thread (github.com)
很快,管理员就对这个PR做出了评论。他指出我的解决方案不太符合RT-Thread的习惯。他认为应该使用BSP_USING_ETH 而不是RT_USING_PHY,并建议我参考一下stm32f407-atk-explorer开发板。根据管理员的建议,我修改了board目录下的Kconfig文件,在其中添加了如下代码:
config BSP_USING_ETH
bool "Enable Ethernet"
default n
select RT_USING_LWIP
select RT_USING_NETDEV
select RT_USING_SAL
然后,再次提交了修改代码。
当天晚上,管理员就批准了提交,将修改融合进了主线代码。
操作上的变化
由于最终的修改和最初的想法有所不同,所以如果用户是从最新的代码开始NXP FRDM-MCXN947的开发,有一点操作上的变化和上一篇博文不同。就是在menuconfig中,不是在在RT-Thread Components -> Device Drivers中选择Using ethernet phy device drivers,而是在Hardware Drivers Config->On-chip Peripheral Drivers中选择Enable Ethernet。
总体来说,这次PR的提交非常顺利。