如何编写MX 6和TJA1100 PHY的驱动程序?

时间:2019-05-19 13:24:35

标签: driver ethernet imx6

我正在开发基于(i。MX 6Solo6DualLite)的新型装饰板,并且将(TJA1100 100BASE-T1 PHY)用于汽车以太网。

如果我的问题没有道理,或者我的方法有误,请纠正我。

我想为此设备编写驱动程序。并确保其正常运行。

1-我可以确保驱动程序在U-boot步骤中正确运行,对吗?我的意思是不需要加载Linux内核,因此我只需在U-boot源代码中添加源代码C驱动程序并进行编译。我想在U-boot步骤中执行此操作,因此我可以限制初始化所有外围设备的文件数,并使其尽可能简单,因为U-boot的行为类似于(mini-Os)

2-我不知道该如何编写驱动程序(确切地说..),因此我正在寻找在任何其他处理器中初始化以太网控制器并初始化另一种类型的以太网phy的驱动程序(源代码)。为了获得一个想法并为I.MX6和TJA1100编写类似的驱动程序源代码,? 在此之后,我认为我可能会添加一些非常基本的文件c用于诸如ARP之类的简单协议,以进行测试。.

3-是从另一个驱动程序代码源中启发编写驱动程序代码的好主意吗?

4-也许,如果您已经有驱动程序(例如MX 6Solo6DualLite和TJA1100 100BASE-T1 PHY),可以请提供给我...?

对于第二个问题,我试图从U-boot源代码中提取C文件,该文件初始化AM335x中的以太网控制器,并初始化LAN8710A phy(以beaglebone黑色显示),以便获得灵感并编写类似的驱动程序源代码。但是我找不到它..我找到了协议的网络C文件..但是那让我感到困扰,我无法将它们与初始化以太网控制器和ethernent Phy的真实C文件分开。

http://www.denx.de/wiki/U-Boot/SourceCode

1 个答案:

答案 0 :(得分:0)

在恩智浦论坛上发布了一个驱动程序:

https://community.nxp.com/thread/460767

它包括一些应该与U-Boot一起使用的裸机代码和Linux驱动程序。