|
|
我在board-da850-evm.c文件增加ax88796b的板级驱动:static struct resource ax88796b_resources[] = {
% i$ T) O: G+ ~1 N+ ?# b* U [0] = {4 }! I! @, z4 A8 m! |1 b6 `
.start = DA8XX_AEMIF_CS5_BASE," }. Y* U6 p7 [- e- C
.end = DA8XX_AEMIF_CS5_BASE + SZ_32K - 1,
2 z/ t d9 [- b% q' b+ f% J4 p .flags = IORESOURCE_MEM,
, g, n n a$ _: U },* z% z+ i" t6 L
[1] = {
- @6 F, C; ^. g% ~% S& n8 [$ P .start = -1,5 b/ R/ C/ ]7 {2 k& A7 Y
.end = -1,
' V8 U& ]% J9 C! p .flags = IORESOURCE_IRQ | IORESOURCE_IRQ_HIGHLEVEL,
0 i+ i @/ j/ J G+ Y },/ }& w, b5 l3 ^+ h2 m! U
+ @ L V+ I, v2 n+ F};
9 m3 j4 R$ F% M/ f5 u9 S
! b3 s! F; o7 T0 w) @static struct platform_device ax88796b_device = {4 t S7 T' e1 k2 F: V' l
.name = "ax88796b",* Z0 E$ q2 w: {3 q4 H, V
.dev = {
0 [- _1 f( L/ O1 p5 t& x
* q$ a0 i' o+ V" x/ [ },
% s4 B4 G/ k* `% ~ .num_resources = ARRAY_SIZE(ax88796b_resources),
$ @9 e) u) D( g ]8 l& W .resource = ax88796b_resources,
% S' j" A- Q0 _0 Z, f% N};
6 {. v/ V! N/ R, v2 }. V# c
9 O, F2 U# P. p7 D) } d& Pstatic inline void da850_evm_setup_ax88796b(void)
# o, x6 E* Y# ]0 q7 @{# z R- \8 M9 h
void __iomem *aemif_addr;7 N" E7 J3 V/ |
int ret = 0;% v$ @9 I- A7 U
: v+ r! {$ ]# H W. c0 k
ret = davinci_cfg_reg_list(da850_evm_ax88796b_pins); v+ y; V" p' |% h" O& E
' W4 @; i( i. @% ?# u0 e3 z. {
if(ret)
- B* j1 T7 b/ P pr_warning("da850_evm_init: ax88796b mux setup failde:"! ~) a( O5 ?; e. s5 F" c
"%d\n", ret);& ^- I: ]$ z, f2 y$ n
aemif_addr = ioremap(DA8XX_AEMIF_CTL_BASE, SZ_32K);' h+ e' Q% E, O4 J% H: k- _
( P; T- `3 g+ Q b' k' p; i writel(readl(aemif_addr + DA8XX_AEMIF_CE5CFG_OFFSET) |$ I' W3 n- m$ u2 O2 S8 @5 j
DA8XX_AEMIF_ASIZE_16BIT,9 T3 z/ s8 P# j. k+ P' o* s
aemif_addr + DA8XX_AEMIF_CE5CFG_OFFSET);
/ u8 Q. O; T! W+ X8 n$ j8 n b iounmap(aemif_addr);
& l- b% J7 N! U7 C/ m. \ ax88796b_resources[1].start = gpio_to_irq(DA850_AX88796B_IRQ);
~: X% o% P( C- a ax88796b_resources[1].end = ax88796b_resources[1].start;9 N. M2 b- a( I u, L# g4 K3 A
' W' T0 N8 e9 W, z# h h platform_device_register(&ax88796b_device);8 a$ o4 R$ r/ Y) u
, T; v- d- e. a# f
}
' ~" F% `9 U7 L' {) \* \+ ~# g6 G) t u& O; `, ?9 R
和相关的引脚配置0 b& _! N4 M, V0 v" U
编译通过,
. H7 A5 w2 ~0 t0 i8 C9 }: p$ Q1 u在板子内核启动过程中:
( m G% W* { t/ l2 Y" `% K4 DINIT: version 2.88 booting2 F! B7 K1 @# y, }
Starting udev0 S. z, c& V0 a2 ]
Starting Bootlog daemon: bootlogd.5 ~* V/ y5 Z" O N
ALSA: Restoring mixer settings...
& A% h- r6 U* \/usr/sbin/alsactl: load_state:1686: No soundcards found...0 c& ]) {" _2 F% w: G
Configuring network interfaces... [ 12.665617] davinci_mdio davinci_mdio.0: resetting idled controller
4 ]/ V. j+ z8 b* C[ 12.672854] net eth0: attached PHY driver [SMSC LAN8710/LAN8720] (mii_bus:phy_addr=davinci_mdio-0:00, id=7c0f1)% B; L' Q, F/ W8 d* ^
udhcpc (v1.20.2) started
/ Q% A3 w6 L7 s7 M" m3 PSending discover...
: n3 |# \$ ~( fSending discover...
- y5 Y# @4 R! ZSending discover...0 r! }/ @: k& J8 u9 _
No lease, failing
: p4 Z+ K' q7 R( P; idone./ [/ \4 M3 G; C+ o9 H0 A
Wed Nov 6 04:33:00 UTC 2013
, c$ Z# t) o, L) w. q; Q- ~INIT: Entering runlevel: 5
1 m/ k% w, N( f# y% aStarting system message bus: dbus.( L8 b% j# Y) V" u& V& O: C
Starting Dropbear SSH server: [ 22.869096] ipv6: disagrees about version of symbol inet_recvmsg( b' y5 a2 K+ A
[ 22.875341] ipv6: Unknown symbol inet_recvmsg (err -22)% E/ h o* o4 I& q1 M9 V
[ 22.880894] ipv6: disagrees about version of symbol skb_free_datagram
8 f* w6 ?/ U$ [0 _9 N6 J) I4 j[ 22.887493] ipv6: Unknown symbol skb_free_datagram (err -22)
, A, E. k7 x; n8 @2 _! s8 ?6 G[ 22.893560] ipv6: disagrees about version of symbol __skb_checksum_complete
1 ~2 }4 N+ B7 }0 C/ E[ 22.900598] ipv6: Unknown symbol __skb_checksum_complete (err -22)2 |3 i4 M' Z0 T) }* P+ g" \. v
[ 22.907048] ipv6: disagrees about version of symbol register_sysctl_paths# \$ v& o- m# z4 T
# _) Y* |. `) }' i" `
[ 22.913984] ipv6: Unknown symbol register_sysctl_paths (err -22)* E/ x2 k. Q3 o! x+ a
[ 22.920203] ipv6: disagrees about version of symbol xfrm_inner_extract_output
; T. w; ?6 v. A X. x) h[ 22.927486] ipv6: Unknown symbol xfrm_inner_extract_output (err -22)$ v) N3 J* M# N4 s$ m8 {
[ 22.934104] ipv6: disagrees about version of symbol skb_free_datagram_locked
' p* `" l- n, K& H[ 22.941222] ipv6: Unknown symbol skb_free_datagram_locked (err -22)
# M& c0 Q3 L* ^& x2 U[ 22.947739] ipv6: disagrees about version of symbol sock_i_uid' W" A& Y& s' M
6 p. _! A* s) X k; o' e/ I
就会出现这个问题,请问如何解决8 j' `1 M8 O/ w( Y2 H
; P) C6 U7 ]8 t3 C0 u" f& ^' j |
|