[IMX6Q]如何得知当前平台是IMX6Q
kernel version: 3.0.35
一般linux的通用方法是通过
kernel_imx\include\generated\mach-types.h里的定义
machine_is_mx6q_sabresd 来判断当前是否属于此平台
#ifdef CONFIG_MACH_MX6Q_SABRESD
# ifdef machine_arch_type
# undef machine_arch_type
# define machine_arch_type __machine_arch_type
# else
# define machine_arch_type MACH_TYPE_MX6Q_SABRESD
# endif
# define machine_is_mx6q_sabresd() (machine_arch_type == MACH_TYPE_MX6Q_SABRESD)
#else
# define machine_is_mx6q_sabresd() (0)
#endif因为有多个平台同时定义,所以machine_arch_type一般都是__machine_arch_type,
__machine_arch_type的定义在kernel_imx\arch\arm\kernel\head-common.S
__mmap_switched_data:
.......long __machine_arch_type @ r5.long __atags_pointer @ r6
......
当时系统开机之后只定义而并没有赋值,imx6q使用了读取硬件寄存器的方法:
kernel_imx\arch\arm\plat-mxc\include\mach\mxc.h
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
