摘要: 1.依赖倒置原则(DIP): 1.1 高层模块(稳定)不应该依赖于底层模块(变化),两者都应该依赖于抽象模块(稳定); 1.2 抽象(稳定)不应该依赖于实现细节(变化),实现细节应该依赖于抽象(稳定); 2.开发封闭原则(OCP): 2.1 对扩展开放,对更改封闭; 2.2 类模块应该是可扩展的,但 阅读全文
posted @ 2018-01-11 23:53 gs1008612 阅读(253) 评论(0) 推荐(0) 编辑
摘要: 上篇分析了两个关键宏U_BOOT_DRIVER及U_BOOT_DEVICES的作用,有了上篇的基础,本文将分析: 1.上篇中的uboot_list段中的信息如何被用起来? 2.uclass,uclass_driver,udevice,driver之间的关系? 从board_r.c中的initr_dm 阅读全文
posted @ 2018-01-09 19:55 gs1008612 阅读(3290) 评论(0) 推荐(1) 编辑
摘要: uboot版本:uboot-201711 要分析uclass之前,首先得搞清楚两个宏U_BOOT_DRIVER及U_BOOT_DEVICE的作用: 1.U_BOOT_DRIVER及U_BOOT_DEVICE宏定义如下: 下面具体分析如下: 例如: 根据上述宏定义展开得到: 从上面我们可以看到声明他们 阅读全文
posted @ 2018-01-09 18:42 gs1008612 阅读(6226) 评论(0) 推荐(1) 编辑