4

我一直在尝试了解 linux 内核中的 mfd 框架来编写我的驱动程序,但似乎几乎没有任何文档,而且 mfd 内核本身似乎没有太多有用的评论。所以,我试图理解 mfd_cell 结构描述的内容。这似乎是这里的基础。我特别感兴趣的是它是否用作“x”个子设备的一般抽象,或者它是否适用于子设备的完整层次结构。

4

1 回答 1

4

MFD 是包含多个子设备的设备。例如,在嵌入式系统中,PMIC 通常包含电池管理器、充电器,有时还包含具有不相关功能的设备,例如 USB PHY、音频编解码器、实时时钟……

单元用于描述子设备。mfd 子系统将使用在该结构中注册的信息为每个子设备创建一个平台设备,以及该子设备的 platform_data。您可以指定更高级的内容,例如此设备使用的资源和挂起-恢复操作(从子设备的驱动程序调用)。

新创建的平台设备将以单元结构作为平台数据,可以通过cell->platform_data.

于 2013-05-23T13:46:08.883 回答