|
我在board-da850-evm.c文件增加ax88796b的板级驱动:static struct resource ax88796b_resources[] = {
/ r- p8 T) X0 c5 v: b, Y9 w [0] = {
0 v, d8 w. B3 Y1 C% D5 k .start = DA8XX_AEMIF_CS5_BASE,
9 E" p3 k* \0 ~1 z$ j6 [% K5 G .end = DA8XX_AEMIF_CS5_BASE + SZ_32K - 1,
7 I. f5 o/ O) p2 \+ h8 C7 t .flags = IORESOURCE_MEM,
9 D. n: q3 U, {/ @ },
5 Y+ O# Q$ T* Z& M# ? [1] = {
" O8 R# X* O. @$ G* ?- q .start = -1,2 |0 c1 c4 n6 g( A9 V; K: K
.end = -1,
) o" g2 }( b- @3 a/ |: [ .flags = IORESOURCE_IRQ | IORESOURCE_IRQ_HIGHLEVEL,- c/ G1 Y% l* M2 o$ k6 L( Y
},
0 y9 R( w8 O( Z' X# m* e9 U
( a( K0 T2 e% j};
% ^. {- z9 l( C% e; X, Y9 Y: m& ^4 ?/ h; C. v
static struct platform_device ax88796b_device = {) @; e6 K( B# u( ^- I
.name = "ax88796b",
! _! U, z- Y/ I3 { .dev = {
% d, V9 G: x/ j4 }+ z/ _! |# Y$ M7 j
},
& d* H' k* \& g! P- I* E0 n .num_resources = ARRAY_SIZE(ax88796b_resources),, B% B; d7 W9 _1 R, I: K6 I; U2 X
.resource = ax88796b_resources,2 W& o, O1 Z# I# f/ R ~
};
: {% k5 i/ D4 z& Y6 J' h! o3 @: n* C m9 }2 O. g* l
static inline void da850_evm_setup_ax88796b(void)* P5 d( A" q/ ]
{6 o) P- o8 Y! M3 @' T
void __iomem *aemif_addr;! P9 X9 D& ~* r! G3 }
int ret = 0;
0 l5 B' `0 m. X- t
: X3 d$ k$ i0 C. U; \ ret = davinci_cfg_reg_list(da850_evm_ax88796b_pins);
, }/ B, m# d" ]6 T3 [ / D9 m; {8 I4 d7 o! V( [9 [
if(ret). {/ ]" m B9 c4 K. @' X
pr_warning("da850_evm_init: ax88796b mux setup failde:"
3 U% R( ^* p( s "%d\n", ret);. G7 Z% D; {$ M+ j" @1 P( Z) N; q
aemif_addr = ioremap(DA8XX_AEMIF_CTL_BASE, SZ_32K);
/ _3 I! ^& V/ K : C" e4 X5 ^3 V, F
writel(readl(aemif_addr + DA8XX_AEMIF_CE5CFG_OFFSET) |; W( D. z2 Q! x1 _5 F
DA8XX_AEMIF_ASIZE_16BIT,
) M$ {* M7 P* I2 Q3 L aemif_addr + DA8XX_AEMIF_CE5CFG_OFFSET);
% D8 F( F9 r: G- X, Z, C/ Q { iounmap(aemif_addr);
% k& \/ K |: x5 k k2 M3 P ax88796b_resources[1].start = gpio_to_irq(DA850_AX88796B_IRQ);
$ l, {$ c8 S8 H( L5 u0 D ax88796b_resources[1].end = ax88796b_resources[1].start;
& {2 N$ j6 C6 ]8 n) L8 t
/ v6 l0 Q8 j( T/ e platform_device_register(&ax88796b_device);
5 `! _/ L' R8 v3 V
, z) C1 u6 D% t* A8 G4 t; C}7 {/ U, E. F' i
7 z* }' K& v4 z和相关的引脚配置
& W$ _' l7 O' L- a, d( |5 U/ ]编译通过,8 T) [2 w4 Y9 K) B& q* v7 U
在板子内核启动过程中:
( Q8 l& c7 F4 H. t8 T8 s2 dINIT: version 2.88 booting
" e Y0 Y/ y3 ~Starting udev
s/ I7 P( s& S! CStarting Bootlog daemon: bootlogd.
9 u) n4 O; l$ i9 E8 oALSA: Restoring mixer settings...1 ?+ {# T3 A4 Q1 r. g) }
/usr/sbin/alsactl: load_state:1686: No soundcards found...6 S, u2 w" b3 O9 E9 J% v/ W
Configuring network interfaces... [ 12.665617] davinci_mdio davinci_mdio.0: resetting idled controller3 f1 }0 N0 E" ^& w+ v2 ]" }
[ 12.672854] net eth0: attached PHY driver [SMSC LAN8710/LAN8720] (mii_bus:phy_addr=davinci_mdio-0:00, id=7c0f1)3 v$ @' o/ H/ K% E' D7 f
udhcpc (v1.20.2) started7 T9 E! h1 P2 n" ^! Q3 T/ x& ]
Sending discover.../ J! `8 v/ a, C# s; V
Sending discover...! j9 Z. D+ [9 O' h" v2 `
Sending discover...; j4 |3 B' ~0 t0 q7 k
No lease, failing
+ W1 V1 Y# t! o0 a2 idone.- E) W! C, R9 Q1 H& m3 L+ O0 V6 f
Wed Nov 6 04:33:00 UTC 2013
# S$ f x- v7 J2 {INIT: Entering runlevel: 5
* F3 g8 F& A, ~2 g! W# d sStarting system message bus: dbus.( {# Y h2 |4 D: U! b5 z
Starting Dropbear SSH server: [ 22.869096] ipv6: disagrees about version of symbol inet_recvmsg- c8 C* p4 S9 `
[ 22.875341] ipv6: Unknown symbol inet_recvmsg (err -22)
9 Y! U: i. O t/ M) R[ 22.880894] ipv6: disagrees about version of symbol skb_free_datagram
+ P$ V# q6 _4 |[ 22.887493] ipv6: Unknown symbol skb_free_datagram (err -22)
7 x. v% ] R5 z2 q[ 22.893560] ipv6: disagrees about version of symbol __skb_checksum_complete2 A& r6 j" {/ |4 M8 D( |
[ 22.900598] ipv6: Unknown symbol __skb_checksum_complete (err -22)
8 H- X- B; s- G; a[ 22.907048] ipv6: disagrees about version of symbol register_sysctl_paths
+ `' {5 K4 e" t$ s' n' I5 X1 z' C. N! o; `. ]7 P$ B
[ 22.913984] ipv6: Unknown symbol register_sysctl_paths (err -22)
; C. R$ _9 M0 z3 ~) d6 |[ 22.920203] ipv6: disagrees about version of symbol xfrm_inner_extract_output( o P& \5 T3 ~6 [9 b, s
[ 22.927486] ipv6: Unknown symbol xfrm_inner_extract_output (err -22)! }+ Z G% [; x# r0 z) {: j3 k3 M
[ 22.934104] ipv6: disagrees about version of symbol skb_free_datagram_locked4 U. E% Q8 f8 O+ z
[ 22.941222] ipv6: Unknown symbol skb_free_datagram_locked (err -22)
9 C X* y0 n8 l. x9 x( y[ 22.947739] ipv6: disagrees about version of symbol sock_i_uid. d; _8 c2 p) p: @" i3 f$ Q- j
4 L) b* w3 [5 T
就会出现这个问题,请问如何解决
/ e6 H2 P. f9 v2 l8 X: d) R# V& |2 X" V
! ?4 ^7 p: A, A$ P* v4 K; C" V( S9 `& l |
|