|
|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
Linux内核版本:2.6.30.4. T4 }2 G* u. p; R* W3 f$ \- K2 z# N( w" K
测试平台:EmbedSky TQ24409 Y0 ], q5 l' @. Y6 A- R
5 e/ K( S6 G- y0 k$ i
在2.6.30.4内核源码中,已经给出了S3C2440的SPI驱动,但是TQ2440并没有启用这个驱动,因此要在arch/ARM/mach-s3c2440/mach-tq2440.c中加入SPI的支持。网上参考的文章只将S3C2440的SPI0进行了配置,如果需要使用到两个SPI Master,就需要进行进一步配置。首先增加如下结构定义:5 b' ]. j& ]8 `8 B
! {) J/ k* _; I0 ~
static struct spi_board_info s3c2410_spi0_board[] = {
. b0 P2 g# K4 w) { [0] = {
- b4 h$ y! p" p0 o" k' b .modalias = "spidev",. J+ j+ l8 r0 e [0 L$ Y& K
.bus_num = 0,
9 J% ]' F! d) |2 W. r1 e .chip_select = 0,
7 V( {# M5 x" [* q .irq = IRQ_EINT10,) @* ]7 s4 {1 b1 S. H
.max_speed_hz = 500*1000,
: q/ g: R7 b$ b, Q5 P1 c7 G },4 O# A+ V& P* {* j/ @
};$ V2 P: _. z" @& n+ \* O+ L3 o( h
9 a3 r4 K$ @1 d) _7 i
static struct s3c2410_spi_info s3c2410_spi0_platdata = {+ W$ _3 m- R$ Z h* y! f# @* f
.pin_cs = S3C2410_GPG2,
% R* @) j P$ n$ x# ^$ z .num_cs = 1,. A1 f( D' j7 i9 H) X. i" K
.bus_num = 0,2 i: l' x* e) u& C
};
4 d' R$ e" B8 j% i9 h( Q8 B, a# @" Q6 R4 [8 z. r3 r+ b. q& U# c* u+ g
static struct spi_board_info s3c2410_spi1_board[] = {
9 J, }# z2 q: l4 q- |" F [0] = {5 @* L" P/ `$ ]3 y3 k/ ?6 g1 P: i- |
.modalias = "spidev",# A, s9 ]3 V' v* w) j& e
.bus_num = 1,- j: P9 f( x; u! i# A
.chip_select = 0,
3 z5 ` Z+ m3 V* J4 T' ~$ N. ? .irq = IRQ_EINT11,) E9 L. v5 l. [- F: K0 G0 O/ h
.max_speed_hz = 500*1000,' m( X& G* r. G3 ?1 @. J( u/ u
}, r! E/ ~/ q$ A8 o7 Q4 ]0 @
};8 Y1 H! e4 q; U' o$ H1 w$ R
9 ]. B! ~) u7 j' X7 o4 j! D
static struct s3c2410_spi_info s3c2410_spi1_platdata = {
4 _3 H$ r* @ u5 B6 g$ C3 |! [8 f .pin_cs = S3C2410_GPG3,& B1 ]1 x% V7 a- ]
& E' K w$ ]8 J) ^7 y D7 g& c9 k6 T8 \; Y
+ L3 H o. S% p4 f: e
9 V4 K% J2 i7 v; \6 U+ t" u7 n |
|