1# "!!+ +N
.
"!!+1# ! N !*
//由第 1 步注册的设备,获取到其 struct device 结构的 plaorm_data 参数
"!!+1# ! N!+-+; !*
! *
%++T-++UU+T!
!+86HR80*
!+-+)P"P%"!!+1# !<+DI Q85684*
%+T !
!+86H/8/*
//物理内容<--->内核虚拟地址
%+1# '"<+ !+.
+-+86HR80*
'!+! )%*
@
// 设 置 即 将 要 在 I2C 总 线 建 立 的 适 配 器 设 备 的 name 成 员 值 为 “ mv64xxx_i2c
adapter”,注意:这个名字不是要创建的设备的 kobject 的名字!这个 name 成员只是
它的一个属性
"!S !!;<+/01#222 345 67/8+C+!C<
"P% !!;*
! &!K ( !&!K*
" ) !( !)*
//配置获取到的 struct device 结构的 plaorm_data 参数
!%K +-+!%K *
!%K +-+!%K *
//由第 1 步注册的设备,获取到中断号
!K+-+ '! K<+*
%+ !K+++.
+-+862H*
'!+! '"*
@
//设置 I2C 适配器的设备的父亲为第 1 步创建的设备即/sys/plaorm/mv64xxx_i2c.0
!!;;!+-+(*
//设置 I2C 适配器的算法成员,这个是 linux 的 I2C 驱动的核心
!!;'+-+(1# '*
!!;&+-+3O> /HR48*
!!;""+-+ 47>> OG/H6+U+ 47>> >R*
!!;,!+-+"" ! VW"!,!*
//设置 I2C 适配器的次设备号成员,为 0