|
我在board-da850-evm.c文件增加ax88796b的板级驱动:static struct resource ax88796b_resources[] = {$ {3 S1 m: i5 B9 f
[0] = {
, N, `. e4 n! P5 D* ^, H .start = DA8XX_AEMIF_CS5_BASE,
1 P2 ^# T9 O/ w* H; q6 D .end = DA8XX_AEMIF_CS5_BASE + SZ_32K - 1,
1 F- a" M% C) g2 ~8 X. X4 ^. d .flags = IORESOURCE_MEM,1 y4 l, W% N# ?2 ~2 B
},8 L9 b3 U: U; v, W6 `8 \
[1] = {
S+ a; D' ]+ _6 \6 D! B .start = -1,, G& b: A) P' ?* U, l
.end = -1,
+ `7 B. I3 f e5 s .flags = IORESOURCE_IRQ | IORESOURCE_IRQ_HIGHLEVEL,9 r1 M" v- ^9 C- |4 d) M
},
' L3 r+ h4 `6 w: S9 W
2 ?' } L$ f, C, o$ P d! d1 h! |* \+ A};" u. J2 g9 S, Q _' k4 T( y
, j: v) d; T% Y% M7 p
static struct platform_device ax88796b_device = {. e1 R9 t: ^5 L4 h+ B7 e
.name = "ax88796b",/ g* { g7 z9 O$ D: Q6 O4 M
.dev = {
) J: M( o/ g1 [: m6 z; ?7 B/ A1 \0 n2 ]
},
8 w8 X3 x& M0 y; V9 F/ Y9 {! F .num_resources = ARRAY_SIZE(ax88796b_resources)," c- B3 }- d- z m$ a5 F
.resource = ax88796b_resources,
6 S- o# Q: p: W, j; Y) R};6 M6 } I- Y S7 F
: P: W: A$ e$ z5 `4 n& ?2 _$ _
static inline void da850_evm_setup_ax88796b(void)
6 b( }, x$ [' d3 i{
K) B, g; h) S void __iomem *aemif_addr;1 C r/ M5 m; A) Y+ J+ C; [
int ret = 0;) M* ^% x: {0 A1 D- H m- v
+ F- _. Z% X7 C3 Y$ E) F
ret = davinci_cfg_reg_list(da850_evm_ax88796b_pins);
, c8 L1 z h5 `" m3 i( H $ B1 R2 b) h% a* Y8 P% s# q2 A7 e0 P
if(ret)% Q& O7 V0 p% r- m# e M
pr_warning("da850_evm_init: ax88796b mux setup failde:" J" ~* n9 c7 ]0 N
"%d\n", ret);0 q$ f: N6 o$ q" @
aemif_addr = ioremap(DA8XX_AEMIF_CTL_BASE, SZ_32K);, q' }0 h f8 e! n" {! I) x
& A; t, }4 R; x7 a; o
writel(readl(aemif_addr + DA8XX_AEMIF_CE5CFG_OFFSET) |
I* \' |! H5 P* r8 E# h. Y DA8XX_AEMIF_ASIZE_16BIT,
3 N! y+ K. d! B# y1 T8 L& g% E aemif_addr + DA8XX_AEMIF_CE5CFG_OFFSET);; k: F2 C: E! J9 c. Q! m
iounmap(aemif_addr);. ^8 [3 I# R& N: S1 r9 y4 s% @
ax88796b_resources[1].start = gpio_to_irq(DA850_AX88796B_IRQ);
2 r0 f k$ ?2 _7 P ax88796b_resources[1].end = ax88796b_resources[1].start;$ n: _. m: i8 R& [
8 g5 i, w+ c' b6 {
platform_device_register(&ax88796b_device);6 r4 J& j- P8 B3 g4 Q# M. l
6 ]3 R- N- D7 t1 X% u8 r" V}
/ s) i) h3 O4 H6 r6 _, Y* B" V& P9 R4 f0 S
和相关的引脚配置
" f0 C* J( [" o5 R2 R编译通过,
: l! q# q0 `) x4 q/ ~1 x在板子内核启动过程中:8 b6 J- }2 I6 l O' U; T6 N# ^
INIT: version 2.88 booting
0 n9 i' R3 V4 T! L, EStarting udev+ ?0 I/ S ~# Y! i9 t
Starting Bootlog daemon: bootlogd.7 T# h8 Q4 G, u" s( S/ H
ALSA: Restoring mixer settings...- x5 F1 i1 Z4 y
/usr/sbin/alsactl: load_state:1686: No soundcards found..., G8 E4 e! E6 Q" u
Configuring network interfaces... [ 12.665617] davinci_mdio davinci_mdio.0: resetting idled controller) B( M8 P$ e' _5 m
[ 12.672854] net eth0: attached PHY driver [SMSC LAN8710/LAN8720] (mii_bus:phy_addr=davinci_mdio-0:00, id=7c0f1)
( a) j( ~" U9 A' b+ S, l4 Tudhcpc (v1.20.2) started
% U7 M' e# h3 r7 I! W: \ SSending discover...+ c( T+ N4 F4 W
Sending discover...
- T; W+ L- I) x A, h! `8 Z' m2 Y% k LSending discover...( P G% g# V4 Z
No lease, failing. I, }; c* M: y6 V! A; U( U
done." U4 V7 D$ O3 d& |
Wed Nov 6 04:33:00 UTC 2013
1 P3 Y, \4 o6 M: O, H; `9 `INIT: Entering runlevel: 5
$ d ]/ k+ W, ~* Z) wStarting system message bus: dbus.2 K; k* t z% L
Starting Dropbear SSH server: [ 22.869096] ipv6: disagrees about version of symbol inet_recvmsg% C% ~8 k, \# w, u
[ 22.875341] ipv6: Unknown symbol inet_recvmsg (err -22)
" Z4 F2 I2 B3 B0 w. N. N[ 22.880894] ipv6: disagrees about version of symbol skb_free_datagram) o8 \4 x: V0 M( Q6 G$ Q
[ 22.887493] ipv6: Unknown symbol skb_free_datagram (err -22)+ v+ T) V) A' e/ o
[ 22.893560] ipv6: disagrees about version of symbol __skb_checksum_complete) u n, G" H- k1 ^& [/ ^
[ 22.900598] ipv6: Unknown symbol __skb_checksum_complete (err -22)
9 i+ u2 R8 n" s F9 E# K% n% B9 U[ 22.907048] ipv6: disagrees about version of symbol register_sysctl_paths$ ^+ i- V4 ?! N& s4 r6 g4 u1 [- N
* c, a: k) g! L! K7 v( m[ 22.913984] ipv6: Unknown symbol register_sysctl_paths (err -22)+ O h8 V3 I& s5 q. e* D2 n
[ 22.920203] ipv6: disagrees about version of symbol xfrm_inner_extract_output
9 j$ w$ J3 l- M- U1 Q; G[ 22.927486] ipv6: Unknown symbol xfrm_inner_extract_output (err -22)
C2 N4 t# S' s/ ~- N: a- S1 [[ 22.934104] ipv6: disagrees about version of symbol skb_free_datagram_locked
" ?4 r+ \4 c( F[ 22.941222] ipv6: Unknown symbol skb_free_datagram_locked (err -22)/ x0 {! Q+ X# w
[ 22.947739] ipv6: disagrees about version of symbol sock_i_uid
% G, {) m o' L& J) e
f* h9 D0 \ _% Q( k" {就会出现这个问题,请问如何解决
# q j6 p& C! f9 E# A% {, }* c9 C" z/ r2 T
|
|