|
|
我在board-da850-evm.c文件增加ax88796b的板级驱动:static struct resource ax88796b_resources[] = {3 T4 G% x7 H1 C x! R$ C3 k! ^
[0] = {; s! k; ?, q" w6 F% L* x
.start = DA8XX_AEMIF_CS5_BASE,1 Y) a' i }* L5 Z
.end = DA8XX_AEMIF_CS5_BASE + SZ_32K - 1,
1 o8 h E; O' X( ~5 X$ U. t. A .flags = IORESOURCE_MEM,
: u. _, [6 Y. [/ ^( i },9 c) m9 E+ a+ k9 a& F
[1] = {
! C P: O' M: [( l, e. M* I* d .start = -1,
1 C" z8 U1 z3 @' w% R+ @ .end = -1,& Z8 R1 X$ f! g; r$ \
.flags = IORESOURCE_IRQ | IORESOURCE_IRQ_HIGHLEVEL,& M5 X' m& Y+ X6 G/ V/ U! q2 H h
},/ z& _, R' J% z r @
- x [( P, `) v2 G$ p};- B0 r$ z( V1 d$ g$ O( M" ^
+ z" o; M& [ {, w: Mstatic struct platform_device ax88796b_device = {) R- \7 g8 I- b! f
.name = "ax88796b",
5 i" l' r4 {# v# |/ Z .dev = {3 a* T+ C' r, l6 x. w1 i
8 I( F5 t5 H u0 q" z- ? },/ L9 v" p& E+ |5 q& z8 P
.num_resources = ARRAY_SIZE(ax88796b_resources),
$ m) U% m1 X7 S& |3 V( m/ F6 f' q .resource = ax88796b_resources,9 f: C$ j5 W: S3 K0 k
};' W2 U8 ?7 h* D! q0 e& W
8 @% E$ \3 C. {. A. ]
static inline void da850_evm_setup_ax88796b(void)
. K% f, e3 _/ y# W( _1 C" l" A6 c{5 h( n7 h& l/ z5 d! }) ]' W
void __iomem *aemif_addr;9 r6 f% n2 {3 y$ N) k
int ret = 0;
1 e' H. f8 i" h4 a
# c* @0 g3 E) e5 g ret = davinci_cfg_reg_list(da850_evm_ax88796b_pins);/ ?9 ~& h% h* A. h& c# ?
% g' x. q0 b8 ~9 C
if(ret) G5 B+ X1 D( p- l4 u
pr_warning("da850_evm_init: ax88796b mux setup failde:"
6 H- f/ A7 V7 C' {- c x "%d\n", ret);
, j; G. Y* o! P8 J aemif_addr = ioremap(DA8XX_AEMIF_CTL_BASE, SZ_32K);
# N5 R2 ?6 z) }
) e$ U \' @& I; o writel(readl(aemif_addr + DA8XX_AEMIF_CE5CFG_OFFSET) |
) G7 R6 W& Y+ ^6 e DA8XX_AEMIF_ASIZE_16BIT,
# L: ^/ u. z, W1 _) T aemif_addr + DA8XX_AEMIF_CE5CFG_OFFSET);+ Z2 n9 S. y( V& v* o0 g
iounmap(aemif_addr);
3 {; e# h: [- [0 `' X) o ax88796b_resources[1].start = gpio_to_irq(DA850_AX88796B_IRQ);
, a; T6 b. f: R% r ax88796b_resources[1].end = ax88796b_resources[1].start;
1 }/ t) ~; Z b
/ ]# D4 Z6 @8 R) ~. l* e platform_device_register(&ax88796b_device);1 c' D. L* M$ Q% y
3 X9 y$ |' O( i- Q& p/ I3 q$ L}) z5 ^1 Y: r$ d" k' o3 U
" Y5 m/ Q! p' ?0 S% m9 J9 O' h
和相关的引脚配置
' p6 v! v# a c8 A7 S' M$ h6 Z编译通过,
5 d5 ~! K% H0 `& ]. j在板子内核启动过程中:6 b4 ^+ q/ f- g, ^5 E
INIT: version 2.88 booting) A; j! Q. _/ S3 b) s; }
Starting udev
* Q; a; @2 o7 y( f* P( |3 OStarting Bootlog daemon: bootlogd. V/ X4 t& t, N/ g; {
ALSA: Restoring mixer settings...) E' C* P5 O, \ F. k/ z! e" f8 A
/usr/sbin/alsactl: load_state:1686: No soundcards found...) W3 U' }$ _) S# M" Z! ]) d/ k
Configuring network interfaces... [ 12.665617] davinci_mdio davinci_mdio.0: resetting idled controller6 w# @' M8 o: ]& K1 s+ o
[ 12.672854] net eth0: attached PHY driver [SMSC LAN8710/LAN8720] (mii_bus:phy_addr=davinci_mdio-0:00, id=7c0f1)9 W4 ]" o' y# `& O0 G4 M
udhcpc (v1.20.2) started2 o9 `+ l$ W' ^, O3 b
Sending discover..., @4 O4 u6 K. r" f3 N; z0 y
Sending discover...
/ s3 ]% h% _' Q( GSending discover...
6 B1 C8 X7 f# Q2 s3 Y" t- TNo lease, failing
' U4 N* ?8 u6 k9 r5 Ldone.
/ ~8 v" d4 q) {9 f; u' b6 MWed Nov 6 04:33:00 UTC 20134 N8 ]4 c# { B. s0 q/ N0 C
INIT: Entering runlevel: 5
+ h: t) X9 L; XStarting system message bus: dbus.
T- e! e/ P! ^, AStarting Dropbear SSH server: [ 22.869096] ipv6: disagrees about version of symbol inet_recvmsg% w* C% v! ?! H" z: a0 A% h
[ 22.875341] ipv6: Unknown symbol inet_recvmsg (err -22)7 r/ _5 N5 c4 c7 K) e- n
[ 22.880894] ipv6: disagrees about version of symbol skb_free_datagram" c' U+ A" x( N2 a+ M( [; }
[ 22.887493] ipv6: Unknown symbol skb_free_datagram (err -22)
/ j: l! ~& ]8 {0 B5 n5 k! D# Z[ 22.893560] ipv6: disagrees about version of symbol __skb_checksum_complete% T8 m0 i0 H }7 @" C
[ 22.900598] ipv6: Unknown symbol __skb_checksum_complete (err -22)0 i: S& C, Y* M) \& D" Z8 c
[ 22.907048] ipv6: disagrees about version of symbol register_sysctl_paths) B9 k+ W( h! q9 j) U
) m- S1 X0 \4 O7 n4 {' W3 {[ 22.913984] ipv6: Unknown symbol register_sysctl_paths (err -22)2 ]+ T2 ~' t. e2 B& J' y- x- u( L
[ 22.920203] ipv6: disagrees about version of symbol xfrm_inner_extract_output, m2 L! [, ?2 [- o( u5 W& R3 U! h
[ 22.927486] ipv6: Unknown symbol xfrm_inner_extract_output (err -22)7 H' z2 O* W" z0 X9 p4 E9 N
[ 22.934104] ipv6: disagrees about version of symbol skb_free_datagram_locked
; R. u. J2 {- p7 w$ o7 A" e( D- ]$ m[ 22.941222] ipv6: Unknown symbol skb_free_datagram_locked (err -22)7 x0 x0 D$ F1 t2 @3 F! \
[ 22.947739] ipv6: disagrees about version of symbol sock_i_uid2 x( a% M, o$ T! }0 _2 d
$ E, s; Q6 A1 j! u- K' `
就会出现这个问题,请问如何解决1 T* g; p! b# l7 M/ ~7 o7 m- j
, X3 P; T- E9 I |
|