|
我在board-da850-evm.c文件增加ax88796b的板级驱动:static struct resource ax88796b_resources[] = {$ I0 q2 ~1 p9 \0 M* S: @% h+ |6 F
[0] = {
$ ]: y( ?7 r% ^) u: ]# t T _2 A .start = DA8XX_AEMIF_CS5_BASE,
; b6 ^( a( S4 F6 x: q8 X8 w+ c .end = DA8XX_AEMIF_CS5_BASE + SZ_32K - 1,
" ?5 y5 n; `! C6 T .flags = IORESOURCE_MEM,
: Y+ h4 d3 M3 i$ _. I },6 A7 c' j& i2 B' R4 q2 M
[1] = {
9 l- \/ c5 l0 G8 I .start = -1,+ s: x; f8 S- f- D/ O: c6 `4 `
.end = -1,( S9 `, Q' M/ i
.flags = IORESOURCE_IRQ | IORESOURCE_IRQ_HIGHLEVEL,
' b( x5 C, s2 M$ k2 r5 _ },9 y! s: [; W$ x: V7 ?
& M- e" I: u! ^3 S2 H; R};
5 u7 J1 e% |* Y; _# R& e( r3 Q& i+ L" n; n& ]/ r
static struct platform_device ax88796b_device = {
' }# g0 @+ K! F9 x7 Z t .name = "ax88796b",. o; m0 z [& G% _, ^
.dev = {
( |/ {, N4 e! z! ?
4 \/ n$ Z1 W. O! w, Y },8 S9 `; \- C3 k" F7 H0 q
.num_resources = ARRAY_SIZE(ax88796b_resources),
7 M4 R: N R9 v% f .resource = ax88796b_resources,% K( U! `) C6 R A# u' a
};7 K' l8 j6 m7 [% S* x
' e# R; X+ ~) }! e) `
static inline void da850_evm_setup_ax88796b(void)
) x/ B8 w1 ]' W$ C: W) d{% N$ }% H0 x0 {/ z$ k1 E
void __iomem *aemif_addr;
8 s( H$ z n. @+ {* { int ret = 0;
2 b: P* v2 P5 q, k
1 ~0 x3 M0 C( U ret = davinci_cfg_reg_list(da850_evm_ax88796b_pins);. V) h8 F( x1 b! B0 q4 C. q4 Q% B0 p
. T, h! Y0 m& N# A: k
if(ret)
, y3 O, L% G4 n$ e4 ^/ t$ |! K1 |$ k! Y pr_warning("da850_evm_init: ax88796b mux setup failde:"8 j% }' O9 ?+ M9 K9 {- q
"%d\n", ret);" Q+ m" ?$ r3 }
aemif_addr = ioremap(DA8XX_AEMIF_CTL_BASE, SZ_32K);! Q+ x! T' `, W2 V4 d
6 M) _* p5 W1 ~/ d6 W1 O1 Z3 j
writel(readl(aemif_addr + DA8XX_AEMIF_CE5CFG_OFFSET) |
9 P1 `7 a! o: \. \ DA8XX_AEMIF_ASIZE_16BIT, q& R, z# s% E9 h
aemif_addr + DA8XX_AEMIF_CE5CFG_OFFSET);
% D4 u) x0 O- ?% p" k0 R iounmap(aemif_addr);
/ A. h4 \# d% n j9 O$ Z2 i ax88796b_resources[1].start = gpio_to_irq(DA850_AX88796B_IRQ);
7 q* q8 u6 y7 Q0 w6 T: `( y ax88796b_resources[1].end = ax88796b_resources[1].start;
/ ?5 p) J# ]. U" v8 P. K
/ R" |; a/ u3 J6 D7 z# @' v4 I$ ^4 G platform_device_register(&ax88796b_device);; T" W) o% H/ ?3 c5 B
* \) Q& {# A( q4 h* ~5 G9 [1 x}: ]+ H% j. z8 i% O! e J
8 `* I8 R z! T ~和相关的引脚配置! ~2 x# L! h" S& r0 J
编译通过,
3 i t, z0 f; h5 S在板子内核启动过程中:3 g, }- M6 a! j6 r- Y
INIT: version 2.88 booting; M" I! m( _, F% H
Starting udev
, i2 \+ e1 _6 y( f! i5 J2 u0 s! M# iStarting Bootlog daemon: bootlogd.
8 K5 k& j0 l* U1 D& CALSA: Restoring mixer settings...& O- O7 R9 C: F: b+ ]2 v$ y ~- p# D" d
/usr/sbin/alsactl: load_state:1686: No soundcards found...
G7 k l2 ^& x2 {( A! SConfiguring network interfaces... [ 12.665617] davinci_mdio davinci_mdio.0: resetting idled controller
c( E4 z# e, i$ E- a. m# M[ 12.672854] net eth0: attached PHY driver [SMSC LAN8710/LAN8720] (mii_bus:phy_addr=davinci_mdio-0:00, id=7c0f1)
$ g3 @) \9 y& B7 n: nudhcpc (v1.20.2) started! n3 Y1 e/ g$ K, o, C* e& w0 T
Sending discover...3 j0 w6 }: x: J& ^
Sending discover...5 q7 b, Z: {+ {6 H) K, t E4 H
Sending discover...7 H- l7 O0 N( u- x
No lease, failing; Q9 L3 a K3 U \
done./ ~8 H7 A9 O' X5 n7 P- }
Wed Nov 6 04:33:00 UTC 2013
" |. t5 B- N* p8 C* Q7 M& IINIT: Entering runlevel: 5
* \, B9 B# B9 v2 ^( \Starting system message bus: dbus. z n3 y6 W2 F) P' J
Starting Dropbear SSH server: [ 22.869096] ipv6: disagrees about version of symbol inet_recvmsg0 o; _( J9 l+ f* h
[ 22.875341] ipv6: Unknown symbol inet_recvmsg (err -22)
7 d: X) \0 v* K[ 22.880894] ipv6: disagrees about version of symbol skb_free_datagram
, l3 P% G1 q) _" q2 n- }; r7 K[ 22.887493] ipv6: Unknown symbol skb_free_datagram (err -22)
& E5 j1 L d, S0 i, m( @# D& i. G[ 22.893560] ipv6: disagrees about version of symbol __skb_checksum_complete
, z& Z U% |5 o! `) M[ 22.900598] ipv6: Unknown symbol __skb_checksum_complete (err -22)
2 \- t& H- {+ T- L[ 22.907048] ipv6: disagrees about version of symbol register_sysctl_paths
2 e* b$ x& y* d }/ Q- a. f" R4 m% G& z: J7 G5 e
[ 22.913984] ipv6: Unknown symbol register_sysctl_paths (err -22)
! ?9 ?6 L* h, M3 z[ 22.920203] ipv6: disagrees about version of symbol xfrm_inner_extract_output
6 U& }& f" c2 _/ B% @[ 22.927486] ipv6: Unknown symbol xfrm_inner_extract_output (err -22)# S! y5 _! x; w9 T5 Q3 w% r e
[ 22.934104] ipv6: disagrees about version of symbol skb_free_datagram_locked
5 H1 D0 R0 N- J" V( _, `! D[ 22.941222] ipv6: Unknown symbol skb_free_datagram_locked (err -22)4 ] T8 S: O/ d! K0 Y
[ 22.947739] ipv6: disagrees about version of symbol sock_i_uid
/ x3 }0 ]! c7 l2 d" i, t# X5 d I) {8 |9 f% H6 R* L
就会出现这个问题,请问如何解决
: x5 d; h8 u7 C8 P, \& w# e; {& U) F* T1 M- V( Z& ~& Z
|
|