|
我在board-da850-evm.c文件增加ax88796b的板级驱动:static struct resource ax88796b_resources[] = {& H2 c! D1 i& ]' l7 j
[0] = {3 A& w7 [6 W5 q. s% b, d( B( ~! M
.start = DA8XX_AEMIF_CS5_BASE,
3 V5 g! ^- O4 y0 f/ h8 g3 T- o .end = DA8XX_AEMIF_CS5_BASE + SZ_32K - 1,
1 @, N( W+ r0 D; p0 I" ?) @- R6 I .flags = IORESOURCE_MEM,
9 J1 x$ K/ w5 ~8 N },# s' G. i; E- d+ s
[1] = {
% m' C. T6 K! ~. _ `" g" f# ^& T .start = -1, M( x5 A4 P+ N5 S" Q
.end = -1,
8 r5 e' i* t3 S .flags = IORESOURCE_IRQ | IORESOURCE_IRQ_HIGHLEVEL,
1 W8 x9 B+ B: K( ]9 V, q F },1 R4 o- l' Q! r1 o
8 ]) I# l8 P4 ^ ?$ n
};
% {- B* C6 a" x w& R7 k% {0 ?+ \+ }5 l! d4 Z
static struct platform_device ax88796b_device = {
! Q. i8 h2 T& t" \2 f6 g; M k .name = "ax88796b",
4 W' M1 m9 y$ ~ .dev = {
5 |1 Q( Z; }2 {& d+ U# X2 o# o3 v" s% U. h- R' f
},5 D; O) R) _: X y
.num_resources = ARRAY_SIZE(ax88796b_resources),' ~! W- P- N4 [; r
.resource = ax88796b_resources,
3 l' D6 \1 C# j- n* Z};, v$ ]! D' D' Y+ }3 d: ~6 K; F
* n# I2 P ~6 |! `static inline void da850_evm_setup_ax88796b(void)5 q" I5 C9 c8 [: O
{
4 W% F, u8 M0 ^% d) N; X% v6 t! |2 V void __iomem *aemif_addr;
$ a& R9 f1 v. P) k- i% o int ret = 0;
0 `* M1 X2 [" l8 p! k
+ m1 n- F# F: Q% f2 |! L ret = davinci_cfg_reg_list(da850_evm_ax88796b_pins);5 U4 S4 ?8 b B$ k
5 f6 m2 h0 y# M9 a if(ret)2 {. L: B1 ?2 l! |+ x
pr_warning("da850_evm_init: ax88796b mux setup failde:"
; p0 V8 n6 E d) j" ~ "%d\n", ret);
% F& ?& v' C. _7 ` aemif_addr = ioremap(DA8XX_AEMIF_CTL_BASE, SZ_32K);/ Z$ ?9 {& b; K" _, M5 ~& `. v- o
: Y% _8 ` B" @0 P U: t, x writel(readl(aemif_addr + DA8XX_AEMIF_CE5CFG_OFFSET) |. X2 |" I+ \, r4 j& u; \
DA8XX_AEMIF_ASIZE_16BIT,+ o) U6 R: V/ {9 e
aemif_addr + DA8XX_AEMIF_CE5CFG_OFFSET);3 ^0 [& m% A8 B. v' D2 ]
iounmap(aemif_addr);
* G4 b0 G3 z' K- F, | ax88796b_resources[1].start = gpio_to_irq(DA850_AX88796B_IRQ);
4 S/ B, Z7 i2 Q" D8 |5 H G ax88796b_resources[1].end = ax88796b_resources[1].start;
! ?: i0 R4 s& _7 i$ p9 c" g; d
+ h$ g" p; o! j* Z platform_device_register(&ax88796b_device);
* i: N* ~5 E3 Q* w& S+ f% e* W, u ) Z6 L) L6 C: }. z' B& o7 @
}0 w# s- @4 N* d5 d
& D' F x7 w" m3 a) G% v7 ~# M/ j" w和相关的引脚配置5 D9 B% } [! f
编译通过,) |" ?/ L5 }9 |2 w
在板子内核启动过程中:- i9 J% r! ]8 N7 h% G
INIT: version 2.88 booting! @6 U% _2 p& F Z' m1 r& G
Starting udev$ }* @2 i2 F6 L
Starting Bootlog daemon: bootlogd.( g. e- J! F B( o- Q: j
ALSA: Restoring mixer settings...
2 Y) {' z ]5 [0 q- z/usr/sbin/alsactl: load_state:1686: No soundcards found...: Y* k+ e2 w) m8 s
Configuring network interfaces... [ 12.665617] davinci_mdio davinci_mdio.0: resetting idled controller( z& D$ ]. \& e; e6 X. s0 [
[ 12.672854] net eth0: attached PHY driver [SMSC LAN8710/LAN8720] (mii_bus:phy_addr=davinci_mdio-0:00, id=7c0f1)
# I& L( N" c5 z* L# [/ a: ^# Xudhcpc (v1.20.2) started0 h( L7 W& L7 u, b' |- v9 f9 S
Sending discover...2 B- o) x3 f; Y- W
Sending discover...
" G: D8 _1 @* A- r0 P [Sending discover...
4 z* |8 O9 X7 I; {- R2 O; w9 `! k' h1 RNo lease, failing5 S& ^; @/ \" S( }% |9 q" B; Y
done.; U7 i4 h* ?" `8 Y' R' w& C- a4 ?
Wed Nov 6 04:33:00 UTC 2013' S* o1 [0 O% R. K
INIT: Entering runlevel: 5
1 i9 b5 e7 v& o" rStarting system message bus: dbus.
$ N1 u& g0 ]5 q3 I/ n/ H. I3 \9 K' cStarting Dropbear SSH server: [ 22.869096] ipv6: disagrees about version of symbol inet_recvmsg
# b6 w& j! T# W& w/ ^, x[ 22.875341] ipv6: Unknown symbol inet_recvmsg (err -22)% t) M- Z: ?8 Q1 |
[ 22.880894] ipv6: disagrees about version of symbol skb_free_datagram
1 b$ \" h" I# s1 w9 t' [( o' v[ 22.887493] ipv6: Unknown symbol skb_free_datagram (err -22)# c6 g: ^, t3 `1 H2 }, d: u( w
[ 22.893560] ipv6: disagrees about version of symbol __skb_checksum_complete- h& `: F/ x: }7 j/ C9 G! Y% B: h
[ 22.900598] ipv6: Unknown symbol __skb_checksum_complete (err -22)
' v0 B5 }3 g7 R$ n) L. \[ 22.907048] ipv6: disagrees about version of symbol register_sysctl_paths
L$ N& T' R7 b9 K. K) s. h; i+ b$ o& ~9 N m/ w$ ^
[ 22.913984] ipv6: Unknown symbol register_sysctl_paths (err -22) C2 R" j& F5 u% S) O/ a. l9 G- P
[ 22.920203] ipv6: disagrees about version of symbol xfrm_inner_extract_output
! r. {5 g- T7 d V9 ]) U[ 22.927486] ipv6: Unknown symbol xfrm_inner_extract_output (err -22)% _- G) f7 o6 |6 y+ P" O; X
[ 22.934104] ipv6: disagrees about version of symbol skb_free_datagram_locked4 C& Q" }9 U, C7 `) k9 S
[ 22.941222] ipv6: Unknown symbol skb_free_datagram_locked (err -22)3 y* b+ |2 E6 {3 _! s+ B* {
[ 22.947739] ipv6: disagrees about version of symbol sock_i_uid t) X. b1 e1 r
. i9 v" n: h4 r1 t3 z' @; N就会出现这个问题,请问如何解决' p0 G% f/ ^7 V
1 ?5 O* _" a Q% p# ]/ l3 W9 |& Z+ k
|
|