|
您好!tronlong提供的最新的linux3.3内核已经对uart0和uart1做了rs485功能的支持,uart2默认为启动串口。如何想使能uart0和uart1 rs485的功能,只需在menuconfig将485使能。/ r" }9 X+ ]- ~" S
*** DaVinci Core Type *** | |
( Q! F/ A% z" x% ?; Q4 x( v | | [ ] DaVinci 644x based system | |1 D. O- k& W5 v5 ~
| | [ ] DaVinci 355 based system | |
6 a6 Y# c7 [3 F& A1 w4 L | | [ ] DaVinci 646x based system | |" a2 J5 t6 |, F" S) @" e% ]" a
| | [ ] DA830/OMAP-L137/AM17x based system | |/ f* T0 ]& f8 }$ z
| | [*] DA850/OMAP-L138/AM18x based system | |
, V0 T1 d) ~' i0 t( ? f3 d- \ | | [ ] Enable UART1 flow control | |
$ s+ t2 X4 J; Z& j* r/ K | | [ ] Enable UART0 RS485 funcation | |
9 k2 M5 h T/ G; k% N& m | | [*] Enable UART1 RS485 funcation / r% N, O2 R% Z3 e, C5 C
8 J' q2 t- ^# S. q/ o+ X想了解详细的功能实现,也可以查看8250.c文件里面的;* j! r# }+ }6 W H
void serial8250_tx_chars(struct uart_8250_port *up)
2 a/ |5 _+ z7 e% u1 o+ ~ J! q return;1 y- a- r) {8 ^9 c/ s
}
0 @, m% Y0 m) Y/ X* h; q* O& ] s4 {/ |- [5 b; d
+#if 1
" A# D; N: v7 ~& t! R: z, e4 [+ /* The funcation with RS485 flow control */
; A2 a/ l* c! j" W6 Q0 G; z+ if (up->port.private_data) {
5 R5 {) ^! W* N5 F2 m1 M: R+ struct serial8250_flow_ctrl *flow_ctrl_p;
! E4 \1 u8 B$ G( c' I" s+ flow_ctrl_p = up->port.private_data;
: Q3 D9 }7 C2 m% I6 W1 n% a1 S+
1 O/ G# A3 T9 H+ x6 \. }5 `+ if (flow_ctrl_p->gpio) {
8 m. F8 C$ L( G1 e6 T4 _: T+ gpio_set_value(flow_ctrl_p->gpio, 1);* t# }2 ]. _& d% q" c. F
+ ndelay(50); /* Propagation delay >= 50ns */ g8 m1 j/ P! q4 {
+ }
' e! ~0 T! V% R R) z+ }
" }' y. r5 K* z2 j. F- x3 U8 @+#endif% x8 \( f/ C! P% ?3 L
希望对您有帮助。6 {6 S: V) d7 Q+ r/ F
|
|