|
我在board-da850-evm.c文件增加ax88796b的板级驱动:static struct resource ax88796b_resources[] = {
' D5 F) a1 R- G4 w [0] = {
( W% Y( ]2 `" `+ \$ G- m8 d .start = DA8XX_AEMIF_CS5_BASE,- q% ]3 q7 r, C
.end = DA8XX_AEMIF_CS5_BASE + SZ_32K - 1,# R3 V3 Q0 J2 @* V' s) m3 F2 R$ h/ \
.flags = IORESOURCE_MEM,
$ s Q% F d0 x" F9 | },
5 B3 b& m; p; Q8 a8 b [1] = {& V' ~! i0 [5 j, T) c. c
.start = -1,; z$ d4 \" {' u) h8 b- s" z* b
.end = -1,# u, e( T# E0 }6 _# I
.flags = IORESOURCE_IRQ | IORESOURCE_IRQ_HIGHLEVEL,6 w! a, M8 z% Q
},# S. x F6 B; n$ E
2 \& |4 i+ K' q, P6 N, _" B$ a5 ^
};, V. _! x4 b; f
* c' B& D# J7 M+ H
static struct platform_device ax88796b_device = {
k6 Z0 ]# x2 H6 s2 j& |$ v .name = "ax88796b",
& J, l4 T; k# x" R$ X .dev = {
* A$ S' C( i7 }3 I0 m8 ~* k$ {* A: ]$ d2 g
},
0 s1 o) M( g. v9 _' ^ .num_resources = ARRAY_SIZE(ax88796b_resources),+ D, G3 e' Y7 H
.resource = ax88796b_resources,
# m) f" l% ]% e( p4 a% E7 H+ O8 M};
9 c# L/ W' Z( S& L
: V; C* [5 t" J1 C; ^static inline void da850_evm_setup_ax88796b(void)
9 ^0 [- [. p) k* Q* u{! b9 e, A$ J h7 @0 e$ @
void __iomem *aemif_addr;+ @! e3 s0 r6 _; G# W: y* f& {
int ret = 0; @ E1 c7 p' Y: p4 w: z# q
1 U% j4 v1 O2 G
ret = davinci_cfg_reg_list(da850_evm_ax88796b_pins);9 u' w# t& J% Z+ G y ~
( D; U; o9 K/ U
if(ret): A: R8 W& a' C7 j) M, A x
pr_warning("da850_evm_init: ax88796b mux setup failde:"2 p: s a: C! J
"%d\n", ret);
+ \* T0 _& `* ^( u9 @) p aemif_addr = ioremap(DA8XX_AEMIF_CTL_BASE, SZ_32K);" r Q/ e0 I5 d8 T8 c U' Z7 o
( L! e0 L; I, E. ? writel(readl(aemif_addr + DA8XX_AEMIF_CE5CFG_OFFSET) |1 b/ d& N3 m( N! P: p
DA8XX_AEMIF_ASIZE_16BIT,
: a7 @ o- Z- b# y8 _% r! c9 N aemif_addr + DA8XX_AEMIF_CE5CFG_OFFSET);( [- A8 Y0 `. R- v; {) w |8 t, N
iounmap(aemif_addr);3 Z# Y% \+ b4 n! Y/ j e1 h
ax88796b_resources[1].start = gpio_to_irq(DA850_AX88796B_IRQ);/ X% w; F! h4 t1 \* d
ax88796b_resources[1].end = ax88796b_resources[1].start;
( g2 k6 s2 }, `* [
: W. ~6 H0 K+ ?$ \ platform_device_register(&ax88796b_device);
! a9 I% b. W1 g6 I+ _ 9 M6 [. ] v* N# ]/ r7 P$ Y
}
: _5 _! S! k/ A9 q# ]% C& E! d1 o: y2 i7 M; M
和相关的引脚配置2 l o2 [8 H6 {* w
编译通过,3 `# C8 c2 X! v6 ~
在板子内核启动过程中:# x/ T1 n( s- R1 l+ s; a; l
INIT: version 2.88 booting
0 G5 l" p6 w5 X' Y1 c' w2 lStarting udev- c; N) @' B% y, h
Starting Bootlog daemon: bootlogd.7 f* l! p9 R1 s0 b4 u8 l, a
ALSA: Restoring mixer settings...; g2 O% [4 i4 X* X% }0 i# }9 {) t
/usr/sbin/alsactl: load_state:1686: No soundcards found...* {: m. X. C# F1 T$ C
Configuring network interfaces... [ 12.665617] davinci_mdio davinci_mdio.0: resetting idled controller
! ]! C: l: z+ }- v+ \# [[ 12.672854] net eth0: attached PHY driver [SMSC LAN8710/LAN8720] (mii_bus:phy_addr=davinci_mdio-0:00, id=7c0f1)
7 P# P5 Q6 Q. [7 x4 N) g4 X- T7 J- Judhcpc (v1.20.2) started. I( g: ]5 a, |! F
Sending discover...- n6 Y. F& ~( b9 u$ X" L
Sending discover..., i; a% L( v# a8 _6 M
Sending discover...: t* I. _0 d& l0 t3 i9 T
No lease, failing
- _) V6 y0 `& Y8 Mdone.
0 e# G" P2 y9 OWed Nov 6 04:33:00 UTC 2013
, v$ d) l8 P$ R, VINIT: Entering runlevel: 5
% \7 j: i( ~; G4 T7 xStarting system message bus: dbus.: Q: q* O8 i$ K
Starting Dropbear SSH server: [ 22.869096] ipv6: disagrees about version of symbol inet_recvmsg
2 w( \3 V* C- a[ 22.875341] ipv6: Unknown symbol inet_recvmsg (err -22)
, M; [3 g, {: r! C- P; w[ 22.880894] ipv6: disagrees about version of symbol skb_free_datagram
; c* H6 O# m( i, c8 P; b[ 22.887493] ipv6: Unknown symbol skb_free_datagram (err -22)
8 L/ l0 X0 U( g# i6 s[ 22.893560] ipv6: disagrees about version of symbol __skb_checksum_complete
( t3 R! V$ }8 k( e: c9 A% m% N) ^[ 22.900598] ipv6: Unknown symbol __skb_checksum_complete (err -22)
& [* m: {& G& z* P0 @2 [[ 22.907048] ipv6: disagrees about version of symbol register_sysctl_paths0 ] C, j/ f4 C1 w. q/ ]
7 ~. j" o! z1 U o- T
[ 22.913984] ipv6: Unknown symbol register_sysctl_paths (err -22)
5 u+ q' K. o3 e1 Q. c+ E& y& K[ 22.920203] ipv6: disagrees about version of symbol xfrm_inner_extract_output
- K" H' H0 Y# ]: Z* D; {[ 22.927486] ipv6: Unknown symbol xfrm_inner_extract_output (err -22)8 x+ K2 a; J1 ]3 ?# L- g
[ 22.934104] ipv6: disagrees about version of symbol skb_free_datagram_locked
5 v" v0 q6 ~* @! J1 n: S" A' D# u[ 22.941222] ipv6: Unknown symbol skb_free_datagram_locked (err -22), C. j/ d1 H2 S: d) M, e2 z0 O
[ 22.947739] ipv6: disagrees about version of symbol sock_i_uid
H/ [9 C( u$ P/ w+ B9 j0 K
& D/ N- {2 c& T5 Z就会出现这个问题,请问如何解决
0 Q4 @& c7 ~5 W/ T- Z. S0 T1 S! f6 }6 R) i; |: K* a! E4 l7 \
|
|