From: http://cid-5a683f65a7e43dff.spaces.live.com/blog/cns! 5a683f65a7e43dff! 254. entrydm355 EVM (M linux4.0, dvsdk1.30) uart1, 2 Use
First, you need to modify the bug of the serial port driver in dvsdk1.30.
File: ARCH/ARM/Mach-DaVinci/serial. c
Static inline unsigned int davinci_serial_in (struct plat_serial8250_port * Up, <br/> int offset) {<br/> offset <= up-> regshift; <br/> return (unsigned INT) _ raw_readw (up-> membase + offset); <br/>}< br/> static inline void davinci_serial_outp (struct plat_serial8250_port * P, <br/> int offset, int value) {<br/> offset <= p-> regshift; <br/>__ raw_writew (value, p-> membase + offset); <br/>}
After modification, recompile the kernel.
Hardware Io multiplexing.
If you want to use uart1 and uart2, make sure that the corresponding Io is not used as other functions.
Uart1, 2 Multiplexing Control Register is pinmux3, address offset 0x0c
However, uart1 and 2 are used as the default functions. If the pinmux3 setting is not changed, uart1 and 2 can be used directly.
The device name is "/dev/TTS/[0-3]". However, only [0-2] is available, and/dev/TTS/0 is used as the console.
Generally, the serial port device file is "/dev/TTYs [0-9]". If necessary, you can manually add the device node name in the current system. The method is as follows:
Mknod-M 666/dev/ttys1 C 4 65
-M 666 is used to set access permissions/dev/ttys1 is the name of the node to be created c Represents character device 4 master device number 65 slave device number
Specific use:
Use the standard open read, write, and IOCTL file system interfaces to use serial devices.
References:
1. http://e2e.ti.com/support/dsp/davinci_digital_media_processors/f/99/p/6067/22685.aspx#22685
2. tms320dm35x Digital Media System-on-chip (dmsoc) arm subsystem Reference Guide (literature) number sprufb3.