|
我在board-da850-evm.c文件增加ax88796b的板级驱动:static struct resource ax88796b_resources[] = {
- q$ J" z0 q) R r. l/ b' ~* R2 e& j [0] = {
6 R% C" R1 t0 s* v: m7 Q3 v .start = DA8XX_AEMIF_CS5_BASE,( r- D, E' Z4 o+ `3 ]0 s
.end = DA8XX_AEMIF_CS5_BASE + SZ_32K - 1,1 A! y/ r% C1 R* j+ d' l
.flags = IORESOURCE_MEM,
6 }( E+ l3 z6 H2 ~3 x* `5 w2 L },. [; }- v# y* X
[1] = {
& x/ u$ L4 m9 _/ G .start = -1,/ T6 D/ b7 q# K" H' }8 w) r
.end = -1,6 Q1 e0 D I {6 V4 P% w
.flags = IORESOURCE_IRQ | IORESOURCE_IRQ_HIGHLEVEL,
& {) E7 L( W y" j) L },
+ m6 K) y1 j! v% J5 U' _0 @% o: U% b' c6 T
};' W/ y$ M; h: C
; c( X5 m7 b# [) V7 E" D' n9 G
static struct platform_device ax88796b_device = {
: M( Z2 L9 U5 ]9 n! I .name = "ax88796b",
. m: X3 n7 c$ ~$ R4 V& R .dev = {
% G! n! s W* ]% _# Q7 d+ `! L3 z0 o" Y1 }$ n* i" f6 C4 m* ~8 {2 n
},+ h/ H' v* c: R, @
.num_resources = ARRAY_SIZE(ax88796b_resources),7 g5 `. V/ }( M ]. ~+ v: n
.resource = ax88796b_resources,7 T9 o5 |5 a. A+ J( M# C
};, `- _- v5 ?) x$ B7 E9 D$ A
( g- q* L- a U) o# L) q( Kstatic inline void da850_evm_setup_ax88796b(void)
% K8 L5 b) c$ X0 W! w{5 t5 s0 f* b% u2 H6 a) C Q U
void __iomem *aemif_addr;
; w9 l- G, i5 I int ret = 0;
0 ~' @" c6 _: H. Y/ @3 p' E: E
! i* ^/ M2 p, K" z3 h, c* s6 O3 t ret = davinci_cfg_reg_list(da850_evm_ax88796b_pins);0 e. B' |6 W3 L
, P. O+ j/ y( e$ w% S
if(ret)
* t# c0 {# {- g, T pr_warning("da850_evm_init: ax88796b mux setup failde:"
9 U$ G7 i1 d& A- h' w3 o ? "%d\n", ret);
. x6 I6 W, d/ U- {* | aemif_addr = ioremap(DA8XX_AEMIF_CTL_BASE, SZ_32K);
& Q7 @1 ^' n: s2 c. x) ?8 z
|" Q" a! u/ d# F" |1 A% P" Y0 m writel(readl(aemif_addr + DA8XX_AEMIF_CE5CFG_OFFSET) |* q: t( s5 R% s+ U% g6 B
DA8XX_AEMIF_ASIZE_16BIT,- }+ ^* `" M# I$ g
aemif_addr + DA8XX_AEMIF_CE5CFG_OFFSET);! v" T5 @% n# |5 w( l; X7 D
iounmap(aemif_addr);
* m1 k$ i& ?; B" h& t; Y5 g ax88796b_resources[1].start = gpio_to_irq(DA850_AX88796B_IRQ);
# T m$ n3 r( D0 F3 |0 F/ y ax88796b_resources[1].end = ax88796b_resources[1].start;
) a& |$ {1 J$ J6 t
/ I& o3 A; j I8 W% m" L, l2 e& D& x& b3 q platform_device_register(&ax88796b_device);5 _' I2 g+ X6 [' B7 V. M$ ]+ ]! w
. }2 ?7 x7 d- O3 ? u9 r}
' x) e" C, _, r# f) O/ u- _, B( @1 H8 G8 [# Y
和相关的引脚配置5 m7 D3 x( W( O: q8 B4 x# D
编译通过,
+ k: v6 `! c( g h在板子内核启动过程中:; z {: E- J8 B% B! u( y
INIT: version 2.88 booting
& w- D, D/ g! a3 VStarting udev+ ~+ K2 I! |3 W% ?1 h3 m
Starting Bootlog daemon: bootlogd.' P2 b9 v/ v. L* @# b" U: m
ALSA: Restoring mixer settings...
, a4 G# j1 L* ]) @7 |( Q/usr/sbin/alsactl: load_state:1686: No soundcards found...
# E0 H9 F$ h, aConfiguring network interfaces... [ 12.665617] davinci_mdio davinci_mdio.0: resetting idled controller" V) W O2 D! I: R2 m
[ 12.672854] net eth0: attached PHY driver [SMSC LAN8710/LAN8720] (mii_bus:phy_addr=davinci_mdio-0:00, id=7c0f1): c4 A: |' j2 p3 H) M
udhcpc (v1.20.2) started
3 i4 v3 J1 U7 _+ \/ nSending discover...5 S) M) V/ n' h) B" G9 I
Sending discover...
: H6 p6 A- Y/ [6 ?" A- v( @, G5 M( tSending discover...2 `4 c/ K: G! s# z+ A& Z
No lease, failing% T6 k9 A% o. Z- B: {" P
done.
" N" }0 v# Q" p* mWed Nov 6 04:33:00 UTC 2013
: i, @) v$ d0 G% o( ]0 {4 MINIT: Entering runlevel: 5
: i% c% r- }! i0 ]Starting system message bus: dbus.
6 \# x) g: F3 K8 Y* Y" DStarting Dropbear SSH server: [ 22.869096] ipv6: disagrees about version of symbol inet_recvmsg
f6 B9 E+ [8 Y[ 22.875341] ipv6: Unknown symbol inet_recvmsg (err -22)
7 f) P7 q' z2 I2 ?1 ^[ 22.880894] ipv6: disagrees about version of symbol skb_free_datagram* }+ c7 P' U& _6 R, ~' W
[ 22.887493] ipv6: Unknown symbol skb_free_datagram (err -22)
( N/ E/ b- C* n$ ?[ 22.893560] ipv6: disagrees about version of symbol __skb_checksum_complete
3 J+ T' {1 c: J+ l/ k[ 22.900598] ipv6: Unknown symbol __skb_checksum_complete (err -22)
x3 `/ `! V' R |[ 22.907048] ipv6: disagrees about version of symbol register_sysctl_paths
" N' {; L4 @1 V5 t B) k- t! x" }, a- z( D1 h, o! f
[ 22.913984] ipv6: Unknown symbol register_sysctl_paths (err -22)+ @; O+ C0 L0 a* u: W
[ 22.920203] ipv6: disagrees about version of symbol xfrm_inner_extract_output
/ c4 w: X9 K) x( O: V[ 22.927486] ipv6: Unknown symbol xfrm_inner_extract_output (err -22)$ o+ \' C$ g Z9 v+ Q
[ 22.934104] ipv6: disagrees about version of symbol skb_free_datagram_locked1 r1 S5 u, N$ ~" M4 J6 j
[ 22.941222] ipv6: Unknown symbol skb_free_datagram_locked (err -22)9 X y" @4 W! }9 I7 A! A: A
[ 22.947739] ipv6: disagrees about version of symbol sock_i_uid3 J' j' O& h/ Z' k k2 g: @* n% B2 I
! E. ]+ R% j8 ] q- W3 b
就会出现这个问题,请问如何解决
6 k3 H ^- l# l) N' w5 O$ H) I1 a8 c$ T- f
|
|