/* * @Description: * @Version: * @Author: Arnold * @Date: 2023-12-13 10:58:35 * @LastEditTime: 2023-12-13 10:58:38 */ /* * @Description: * @Version: * @Author: Arnold * @Date: 2023-12-13 10:56:16 * @LastEditTime: 2023-12-13 10:56:19 */ #ifndef __Dev_Hal__ #define __Dev_Hal__ #include "de_demo.h" //udevice主要用于组织数据结构 struct udevice { const struct driver *driver; const char *name; // void *plat_; // void *parent_plat_; // void *uclass_plat_; // ulong driver_data; // struct udevice *parent; // void *priv_; // struct uclass *uclass; // void *uclass_priv_; // void *parent_priv_; // struct list_head uclass_node; // struct list_head child_head; // struct list_head sibling_node; // #if !CONFIG_IS_ENABLED(OF_PLATDATA_RT) // u32 flags_; // #endif // int seq_; // #if CONFIG_IS_ENABLED(OF_REAL) // ofnode node_; // #endif // #if CONFIG_IS_ENABLED(DEVRES) // struct list_head devres_head; // #endif // #if CONFIG_IS_ENABLED(DM_DMA) // ulong dma_offset; // #endif }; #define U_BOOT_DEVICE(__name) struct udevice __name##udevice #define GetDEVICE_Name(__name) __name##udevice #define device_get_ops(dev) ((dev)->driver->ops) #endif