|
我在board-da850-evm.c文件增加ax88796b的板级驱动:static struct resource ax88796b_resources[] = {$ [" Y. I$ z @) Z: ^, j/ ^* ^7 [4 ?' \
[0] = {
- s9 u0 U& g$ t; M. ^ .start = DA8XX_AEMIF_CS5_BASE, _9 o) o2 J0 I
.end = DA8XX_AEMIF_CS5_BASE + SZ_32K - 1,
) t" b! A' s2 [" \* m- @$ T .flags = IORESOURCE_MEM,5 F- A2 P3 x' ~6 z6 \% X
},: A% c+ Y! T, i+ M0 F
[1] = {% W, I! F' Y% W; h& y
.start = -1,2 N9 a) ?: y7 u
.end = -1,
. J! C) G9 W. Z0 f .flags = IORESOURCE_IRQ | IORESOURCE_IRQ_HIGHLEVEL,
+ N+ j& o0 n! e$ m9 Z },
; p6 L' R, |/ h2 s0 l- ?' j9 P
};2 z" p; H( m) x U. }" b% G
) h# i* F# x+ H" |* f1 R' R) |2 L
static struct platform_device ax88796b_device = {' n9 y0 v& M9 }, w) e; T' ? O
.name = "ax88796b",' o5 g& _. i' f! P |" K
.dev = {8 m( ~$ g0 E% h0 s& C4 E
) l: u9 e$ e; |$ n- ?8 q/ o },
; o3 H' l: ^) j' A .num_resources = ARRAY_SIZE(ax88796b_resources),
" L# F6 ]/ k& _2 i* q: a .resource = ax88796b_resources,
1 O* i5 ?- t- S. ^};
& f2 z) X8 I3 c/ l: @4 K9 N: S7 c3 _, {* k8 ^4 |
static inline void da850_evm_setup_ax88796b(void)
+ S& d$ f5 ]6 `* @- t" y9 s{) Z' w. ~. g8 i4 h/ E& t# t
void __iomem *aemif_addr;; x/ j5 d$ v5 `6 v
int ret = 0;
9 u' K. e6 o q3 y( u: F 6 S, x0 t4 V; a6 b5 S- U# Q% }, q
ret = davinci_cfg_reg_list(da850_evm_ax88796b_pins);
: W' r/ Y* K! N4 |5 F: E . j: P' z- {5 A5 `. B% P3 J
if(ret) |2 q* l! W g7 g) x, B8 ]5 f- \( r
pr_warning("da850_evm_init: ax88796b mux setup failde:"
, H( M# j. V0 b "%d\n", ret);4 e+ W V4 a4 ? G# q7 @6 Y1 o
aemif_addr = ioremap(DA8XX_AEMIF_CTL_BASE, SZ_32K);( S3 N% h" y( x' M4 g
; A, [8 w1 N! D' S writel(readl(aemif_addr + DA8XX_AEMIF_CE5CFG_OFFSET) |
$ c% t, D' {- w' W0 j DA8XX_AEMIF_ASIZE_16BIT,
2 ~' h1 e2 p4 I, D' b( O3 l aemif_addr + DA8XX_AEMIF_CE5CFG_OFFSET);/ E* W d. G5 q2 |6 P' Q
iounmap(aemif_addr);. q2 A; V# T% K+ T+ v" P) J7 u
ax88796b_resources[1].start = gpio_to_irq(DA850_AX88796B_IRQ);( e3 j: u0 L, s1 K
ax88796b_resources[1].end = ax88796b_resources[1].start;( e% Z8 F/ R" w3 a5 l
" `' m) |9 W e2 l# p/ J
platform_device_register(&ax88796b_device);: i3 O8 V! V; l
" A+ V" X7 I( Q: V, T; ?# E8 t1 v6 H} m% t Y2 Y5 z0 y, m+ y
" x& A. B& L" F X I: e9 r
和相关的引脚配置2 }8 ^* U5 T7 {: Z& w+ K! G. b
编译通过,( L# R$ q$ V' b' j! k
在板子内核启动过程中:) N, B& ` w u2 L( _& M: O
INIT: version 2.88 booting: C/ g4 c1 h. A
Starting udev8 H. y M8 M1 f
Starting Bootlog daemon: bootlogd.) H! i2 n' I% i' E9 K: p
ALSA: Restoring mixer settings...1 N a* \( R4 l( K" d
/usr/sbin/alsactl: load_state:1686: No soundcards found...( K- ~& E' \- W+ q7 m3 z" B& q* K0 r
Configuring network interfaces... [ 12.665617] davinci_mdio davinci_mdio.0: resetting idled controller# M* e$ Z" \; D# ?3 C. K% f
[ 12.672854] net eth0: attached PHY driver [SMSC LAN8710/LAN8720] (mii_bus:phy_addr=davinci_mdio-0:00, id=7c0f1)
{* h. h% @- Eudhcpc (v1.20.2) started* ^# t O# [ i# D5 J0 E B
Sending discover...0 v( _! n* r$ n o3 A7 M
Sending discover...
- C3 d- b; E) l1 l" GSending discover...
. d! x' O" K+ cNo lease, failing2 [$ n8 }/ J ~* `# w
done.
7 ?( k- w3 H8 ]7 N, {( |4 gWed Nov 6 04:33:00 UTC 2013
. o, `- d0 ?" l+ I7 eINIT: Entering runlevel: 5
% P$ Y4 C0 I5 JStarting system message bus: dbus.5 G, l( Z: I' d) `- H% {
Starting Dropbear SSH server: [ 22.869096] ipv6: disagrees about version of symbol inet_recvmsg3 C H* v- D/ Z
[ 22.875341] ipv6: Unknown symbol inet_recvmsg (err -22); d" Z. [$ \7 b1 N& s+ H' \
[ 22.880894] ipv6: disagrees about version of symbol skb_free_datagram1 h& ]6 _5 W% l y" V! q- B. X5 W
[ 22.887493] ipv6: Unknown symbol skb_free_datagram (err -22): d4 O; B4 Y1 i0 F& S* c" r; |
[ 22.893560] ipv6: disagrees about version of symbol __skb_checksum_complete9 K) H1 v+ n) w+ ~& f8 g6 t
[ 22.900598] ipv6: Unknown symbol __skb_checksum_complete (err -22); W8 z8 e& n& r, E; |
[ 22.907048] ipv6: disagrees about version of symbol register_sysctl_paths
6 k; j+ [1 T8 V1 w8 A9 `; W& O
$ W U# j' [9 `0 f, x[ 22.913984] ipv6: Unknown symbol register_sysctl_paths (err -22)" e. u& M3 ]: i5 Z L
[ 22.920203] ipv6: disagrees about version of symbol xfrm_inner_extract_output
" l: r, ]% k ?9 [4 i: n% W( y[ 22.927486] ipv6: Unknown symbol xfrm_inner_extract_output (err -22)
, X1 H2 _, q" X2 } y[ 22.934104] ipv6: disagrees about version of symbol skb_free_datagram_locked
8 f' i( D" b& @# r0 J( U. |[ 22.941222] ipv6: Unknown symbol skb_free_datagram_locked (err -22)6 N" M' v3 W# k7 B9 C9 W s
[ 22.947739] ipv6: disagrees about version of symbol sock_i_uid
# _* l/ s. p% U2 _. o5 |/ v$ N9 h2 V+ j4 L/ x
就会出现这个问题,请问如何解决: }8 B6 k1 \ J; E7 Z: W
6 C; K. Z) Q2 O$ @8 b. b" D
|
|