|
|
我在board-da850-evm.c文件增加ax88796b的板级驱动:static struct resource ax88796b_resources[] = {
( ]& X3 v' W3 N7 C [0] = {6 o) Z6 w* P# q) r- `
.start = DA8XX_AEMIF_CS5_BASE,# I, s$ I0 x7 J _. F0 @
.end = DA8XX_AEMIF_CS5_BASE + SZ_32K - 1,4 k0 L. I2 v$ z% M/ x
.flags = IORESOURCE_MEM,
$ Z- Q. A" A) ` a5 X! r: k T },8 t2 y8 a/ A M2 Z }& u- d
[1] = {
+ L! O8 k3 g2 I: k) _! ~3 o7 x .start = -1,1 T. f; ^& c: g0 I) `2 Z( q* o$ h
.end = -1," U/ |; e3 C9 E9 b$ p
.flags = IORESOURCE_IRQ | IORESOURCE_IRQ_HIGHLEVEL,
0 ]' B. {1 v/ D! Y6 y3 m" {( z },9 c; s- C/ w4 v" E5 o# s/ a4 P
7 E/ [/ c2 M( G4 G* @
};
2 Z% G0 v! C$ Q, Y: P: U9 i7 W# d( t9 a" F9 W T# U
static struct platform_device ax88796b_device = {
8 w3 n8 p7 R- \0 L+ _8 C+ Z1 r, D& Y .name = "ax88796b",
+ a+ k: H5 e2 ] p: W+ t( i0 O, ` .dev = {
3 C) P) m; [5 b7 |* S0 F3 _6 d. q' p1 X9 J
},& W9 n! l$ }( \* B! |) j
.num_resources = ARRAY_SIZE(ax88796b_resources)," h. S/ ]! J8 h7 Q; q* @
.resource = ax88796b_resources,
! \3 o: z- V1 q5 Y};
P$ q" |; k6 k3 L8 m. m U& ~: k8 i. F6 o) f
static inline void da850_evm_setup_ax88796b(void)- @3 j9 {: Z# A1 ?0 S4 L) b
{- |4 W' \, E% ~1 s! T3 c# B
void __iomem *aemif_addr;! j& d; J( p7 Y# {
int ret = 0;1 u$ N! Y( n0 n, E7 w. D
) B. V) [9 n' k8 r; m- x
ret = davinci_cfg_reg_list(da850_evm_ax88796b_pins);! K9 ]5 g, z' r4 @5 t& r6 }
9 _: g6 r' F+ z2 I) i
if(ret)9 Y3 Q" @ R* u3 |2 _0 B
pr_warning("da850_evm_init: ax88796b mux setup failde:"
; R+ Y/ [- B1 d5 ]. \6 [+ z3 J "%d\n", ret);
# d" d. ^8 Z- P" g aemif_addr = ioremap(DA8XX_AEMIF_CTL_BASE, SZ_32K);
" U+ Z; n: j# u/ \ m% ~' F. s$ C 4 i1 ~9 y, T- }5 W
writel(readl(aemif_addr + DA8XX_AEMIF_CE5CFG_OFFSET) |! P9 _1 J" {+ ?, U
DA8XX_AEMIF_ASIZE_16BIT,1 ^- {' w. V! u+ C. K8 ~: y
aemif_addr + DA8XX_AEMIF_CE5CFG_OFFSET);: K& M; j! a* a- ~& G2 m
iounmap(aemif_addr);/ [/ ^) A5 ?! H/ n3 Z
ax88796b_resources[1].start = gpio_to_irq(DA850_AX88796B_IRQ);. \+ k, `0 h' {7 @$ q
ax88796b_resources[1].end = ax88796b_resources[1].start;8 Y7 v" }# B$ z; M
, [! k5 D i- g- G% Z platform_device_register(&ax88796b_device);
& f& X" v& D, |: F. E3 O N % K# W( T' w: V
}
! c9 a& T' G2 I& m' C0 ]9 q9 E
( v$ I8 r$ o' Q* h和相关的引脚配置
- y1 e! |' C* H- f& s" |- h编译通过,; s" y6 N1 n0 {
在板子内核启动过程中:
. ~) m3 A) W6 a' |( s, RINIT: version 2.88 booting" W2 R C- c5 b3 y+ I9 q4 L
Starting udev
- W6 e7 x- m# \4 AStarting Bootlog daemon: bootlogd.( |1 |0 W" D7 S+ p; _; S
ALSA: Restoring mixer settings...; S! a+ w4 D6 ]# ~# G$ {3 Y( [( d
/usr/sbin/alsactl: load_state:1686: No soundcards found...& l* s4 {# B4 R: n3 b. b
Configuring network interfaces... [ 12.665617] davinci_mdio davinci_mdio.0: resetting idled controller3 `6 f7 I [% K$ ^
[ 12.672854] net eth0: attached PHY driver [SMSC LAN8710/LAN8720] (mii_bus:phy_addr=davinci_mdio-0:00, id=7c0f1); x/ x# D. |; d6 l( Y* ^" I
udhcpc (v1.20.2) started
$ ~1 r1 h4 a5 U( E7 ASending discover.... p$ B5 y3 F2 d) K- b! O) ?
Sending discover...
; S& J! V* c5 H, SSending discover...
O. E; [1 K. E# y, DNo lease, failing
+ y/ l v/ u. Q8 A- f* odone.
% p1 q) d% s. k9 T* zWed Nov 6 04:33:00 UTC 2013# d* v4 Z+ t" c5 g( e; H
INIT: Entering runlevel: 5
- Z! f2 E+ @% ~' fStarting system message bus: dbus.
' q# t& e7 {: }7 u7 Y0 K/ GStarting Dropbear SSH server: [ 22.869096] ipv6: disagrees about version of symbol inet_recvmsg |4 d* [$ R6 z
[ 22.875341] ipv6: Unknown symbol inet_recvmsg (err -22)
. r: t4 i! U3 J' ^[ 22.880894] ipv6: disagrees about version of symbol skb_free_datagram6 `8 w8 W6 c G' P; ]; G5 V$ V, j' p
[ 22.887493] ipv6: Unknown symbol skb_free_datagram (err -22)
( |/ q7 `0 z4 u; t8 |% ~% C[ 22.893560] ipv6: disagrees about version of symbol __skb_checksum_complete
* y, Z8 D$ U$ b Z3 G7 ]9 a+ r[ 22.900598] ipv6: Unknown symbol __skb_checksum_complete (err -22)* c- w8 G q: s* P& P; k% F
[ 22.907048] ipv6: disagrees about version of symbol register_sysctl_paths
) g, r4 Z5 o+ {5 Y! w5 }# ^+ f7 A D
[ 22.913984] ipv6: Unknown symbol register_sysctl_paths (err -22)/ f- \$ G# N1 W: v2 X- P
[ 22.920203] ipv6: disagrees about version of symbol xfrm_inner_extract_output3 A2 N9 c$ J, G* t% ~
[ 22.927486] ipv6: Unknown symbol xfrm_inner_extract_output (err -22)/ Z3 i$ \8 A2 Q! x
[ 22.934104] ipv6: disagrees about version of symbol skb_free_datagram_locked
# U: K+ I8 r& `1 [5 m& [$ x1 S( t; c[ 22.941222] ipv6: Unknown symbol skb_free_datagram_locked (err -22)- ]. K( W9 v8 ?- I
[ 22.947739] ipv6: disagrees about version of symbol sock_i_uid( y, H1 v# y+ J9 ^9 R. N& b
% s2 T' }- w2 B* V' B/ Z
就会出现这个问题,请问如何解决" [# Y8 c$ Q u) [4 X4 _' c; V' ^
2 f3 h* I6 X0 ]
|
|