|
|
我在board-da850-evm.c文件增加ax88796b的板级驱动:static struct resource ax88796b_resources[] = {
3 c- z( M- G, e+ j8 ~- m3 p( i# z1 S [0] = {7 h: g2 o, Q+ J
.start = DA8XX_AEMIF_CS5_BASE,- v! L" y1 `8 O
.end = DA8XX_AEMIF_CS5_BASE + SZ_32K - 1,0 ?9 p, P& {4 ?8 R( Z
.flags = IORESOURCE_MEM,7 O( _& H! R c6 a) a7 V
},
5 _2 c2 d* {# G) }& G c [1] = {! _' m8 n& H# @: b+ e' M; ^
.start = -1," q* H1 o- h5 ?% M6 o( D
.end = -1,8 \' x( C+ ?2 ~# M7 H% R. o& _$ x
.flags = IORESOURCE_IRQ | IORESOURCE_IRQ_HIGHLEVEL,, F1 {# H; b- S' m; c) ~0 P! J
},) W8 L* D. ~, G" K" \
t" w' Y. Y. B. \# a
};
9 t# z) Y5 h6 P3 q1 _
. q g% d/ V$ {* [( L. u* K* Astatic struct platform_device ax88796b_device = {
, H% e5 _8 C+ @3 s, c" B6 a! w% t& F2 C .name = "ax88796b",
; [9 g3 b( m0 i( s1 E+ h1 i# a .dev = {
# A( V( f# R C! \) l
% Y6 G0 `3 C1 F1 \ },
+ K* ?; L J3 O2 F, _ .num_resources = ARRAY_SIZE(ax88796b_resources),
6 G0 J4 ]- j9 W% K; u) i .resource = ax88796b_resources," R! A6 m; V; e% Z3 |4 y
};
, n( |7 w* @, b1 |) L
0 t+ p# e+ d5 J# I1 rstatic inline void da850_evm_setup_ax88796b(void)# [0 R3 D' k5 c1 j3 Q
{+ O6 _! M: P( ~* h' e
void __iomem *aemif_addr;
# I6 o( A- i; g; f0 A& k int ret = 0;
6 e2 ]7 |+ ]4 E6 K
0 _; l2 d) q8 z4 v ret = davinci_cfg_reg_list(da850_evm_ax88796b_pins);
y, @9 [3 r* S j * K5 ]/ U X; s# K
if(ret)
' D- P/ d7 p% U' O9 z pr_warning("da850_evm_init: ax88796b mux setup failde:"1 e6 H# \8 V/ L8 F2 k' a$ j
"%d\n", ret);2 |! J9 c& |, d0 d
aemif_addr = ioremap(DA8XX_AEMIF_CTL_BASE, SZ_32K);
' y/ G6 |- }% u( K) @- ^
! X+ ^+ g+ o7 C2 g- b" u: w6 }2 V+ w writel(readl(aemif_addr + DA8XX_AEMIF_CE5CFG_OFFSET) |. x2 e2 ~* v. t2 S% w4 P2 d
DA8XX_AEMIF_ASIZE_16BIT,/ B+ U" i& P ?4 M
aemif_addr + DA8XX_AEMIF_CE5CFG_OFFSET);2 O7 t" v! Y0 ~4 e; \8 ^* j* `
iounmap(aemif_addr);1 @' s0 K! z: M0 i* O6 p. u
ax88796b_resources[1].start = gpio_to_irq(DA850_AX88796B_IRQ);
; M Y, P5 K+ \* w- l ax88796b_resources[1].end = ax88796b_resources[1].start;
5 q- c$ W* f* _: t [
U* I( q7 k" n# m3 \ platform_device_register(&ax88796b_device);
7 H1 l2 l* M9 j2 T 1 O2 e; u1 z! O. }2 Z1 E0 W
}
* I* o* i/ j' K0 C
/ z' l' o. E1 X和相关的引脚配置5 F+ @' Q! o. I0 F5 u
编译通过,' U" c$ Z3 v3 J; \6 w: |
在板子内核启动过程中:1 A. o1 [. R# U6 w, G
INIT: version 2.88 booting. F' c7 c6 z3 Y. M, e- A5 R+ g
Starting udev3 E% v/ p0 y0 n6 _$ J, @& I1 }
Starting Bootlog daemon: bootlogd.
, Q. d4 m s+ d3 ?4 M) V# B" @# \ALSA: Restoring mixer settings...5 C) I$ x& Z: h5 G5 S) @, T7 S0 e/ [
/usr/sbin/alsactl: load_state:1686: No soundcards found...
8 c4 @# [" \! l s6 tConfiguring network interfaces... [ 12.665617] davinci_mdio davinci_mdio.0: resetting idled controller
0 y4 X, X: T& `, l( B0 T" Q: _[ 12.672854] net eth0: attached PHY driver [SMSC LAN8710/LAN8720] (mii_bus:phy_addr=davinci_mdio-0:00, id=7c0f1)
) d' E# Z; b# uudhcpc (v1.20.2) started
( J& G& x% e. A3 lSending discover...
& p) S7 f! P7 tSending discover...7 d8 U4 M2 b+ G+ ^- v+ f
Sending discover...
8 h8 U& v( e& ~6 gNo lease, failing$ r: i# F. F' Y" i2 f" F" e
done.
$ Z" F" c5 V4 i' @" dWed Nov 6 04:33:00 UTC 2013
7 e8 y" X0 s$ }- l) g" E* F& tINIT: Entering runlevel: 54 j! f- z1 z* C. X
Starting system message bus: dbus.
, y( B, J v& G( U" cStarting Dropbear SSH server: [ 22.869096] ipv6: disagrees about version of symbol inet_recvmsg" k" O! w* s- W. K4 a" k; Q$ l
[ 22.875341] ipv6: Unknown symbol inet_recvmsg (err -22). c3 e6 {7 [1 M/ Q& {
[ 22.880894] ipv6: disagrees about version of symbol skb_free_datagram
6 \+ D" f; g" m2 h( i5 g0 W; {[ 22.887493] ipv6: Unknown symbol skb_free_datagram (err -22); u5 L1 A9 z8 w/ X+ X% d: j
[ 22.893560] ipv6: disagrees about version of symbol __skb_checksum_complete% @$ P% e8 u$ @9 a. ~! `- c
[ 22.900598] ipv6: Unknown symbol __skb_checksum_complete (err -22): c/ B0 i+ d# y& ?& x& l
[ 22.907048] ipv6: disagrees about version of symbol register_sysctl_paths
& J2 J! j# W# ~7 R
4 W* ^# y5 j4 }3 A# k6 S% _( {3 \[ 22.913984] ipv6: Unknown symbol register_sysctl_paths (err -22): H' D! f7 G, Q7 d- Q2 C0 ^. B
[ 22.920203] ipv6: disagrees about version of symbol xfrm_inner_extract_output
& W& i/ m( g7 C6 E1 w7 D[ 22.927486] ipv6: Unknown symbol xfrm_inner_extract_output (err -22)3 j6 t/ l: j' A
[ 22.934104] ipv6: disagrees about version of symbol skb_free_datagram_locked8 H( G! S; T4 t( ^$ P: U: H8 c
[ 22.941222] ipv6: Unknown symbol skb_free_datagram_locked (err -22)0 V K& t" R h4 o
[ 22.947739] ipv6: disagrees about version of symbol sock_i_uid) B* S: T7 `9 W4 ~2 M$ }
# k2 z: E2 k; B
就会出现这个问题,请问如何解决
) V7 W7 H0 A6 A8 a2 j2 @' \
& k# [3 O5 ?3 d: r: s4 y6 o |
|