1 #include <linux/serial_sci.h>
2 #include <linux/serial_core.h>
4 #include <cpu/serial.h>
7 static void sh7720_sci_init_pins(struct uart_port
*port
, unsigned int cflag
)
11 if (cflag
& CRTSCTS
) {
13 if (port
->mapbase
== 0xa4430000) { /* SCIF0 */
14 /* Clear PTCR bit 9-2; enable all scif pins but sck */
15 data
= __raw_readw(PORT_PTCR
);
16 __raw_writew((data
& 0xfc03), PORT_PTCR
);
17 } else if (port
->mapbase
== 0xa4438000) { /* SCIF1 */
18 /* Clear PVCR bit 9-2 */
19 data
= __raw_readw(PORT_PVCR
);
20 __raw_writew((data
& 0xfc03), PORT_PVCR
);
23 if (port
->mapbase
== 0xa4430000) { /* SCIF0 */
24 /* Clear PTCR bit 5-2; enable only tx and rx */
25 data
= __raw_readw(PORT_PTCR
);
26 __raw_writew((data
& 0xffc3), PORT_PTCR
);
27 } else if (port
->mapbase
== 0xa4438000) { /* SCIF1 */
28 /* Clear PVCR bit 5-2 */
29 data
= __raw_readw(PORT_PVCR
);
30 __raw_writew((data
& 0xffc3), PORT_PVCR
);
35 struct plat_sci_port_ops sh7720_sci_port_ops
= {
36 .init_pins
= sh7720_sci_init_pins
,