forked from Minki/linux
52bec4ed4e
in CSR A7DA SoC, uart6 located at BT module and it need multiple clock
sources, so for "sirf,marco-bt-uart" compatible uarts, drivers take 3
clock sources and enable them.
this patch also replaces clk_get by devm_clk_get function and fix DT
binding document in which we missed to fix when we added marco platform
in commit 909102db44
"serial: sirf: add support for Marco chip".
Signed-off-by: Qipan Li <Qipan.Li@csr.com>
Signed-off-by: Barry Song <Baohua.Song@csr.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
48 lines
1.4 KiB
Plaintext
48 lines
1.4 KiB
Plaintext
* CSR SiRFprimaII/atlasVI Universal Synchronous Asynchronous Receiver/Transmitter *
|
|
|
|
Required properties:
|
|
- compatible : Should be "sirf,prima2-uart", "sirf, prima2-usp-uart",
|
|
"sirf,marco-uart" or "sirf,marco-bt-uart" which means
|
|
uart located in BT module and used for BT.
|
|
- reg : Offset and length of the register set for the device
|
|
- interrupts : Should contain uart interrupt
|
|
- fifosize : Should define hardware rx/tx fifo size
|
|
- clocks : Should contain uart clock number
|
|
|
|
Optional properties:
|
|
- sirf,uart-has-rtscts: we have hardware flow controller pins in hardware
|
|
- rts-gpios: RTS pin for USP-based UART if sirf,uart-has-rtscts is true
|
|
- cts-gpios: CTS pin for USP-based UART if sirf,uart-has-rtscts is true
|
|
|
|
Example:
|
|
|
|
uart0: uart@b0050000 {
|
|
cell-index = <0>;
|
|
compatible = "sirf,prima2-uart";
|
|
reg = <0xb0050000 0x1000>;
|
|
interrupts = <17>;
|
|
fifosize = <128>;
|
|
clocks = <&clks 13>;
|
|
};
|
|
|
|
On the board-specific dts, we can put rts-gpios and cts-gpios like
|
|
|
|
usp@b0090000 {
|
|
compatible = "sirf,prima2-usp-uart";
|
|
sirf,uart-has-rtscts;
|
|
rts-gpios = <&gpio 15 0>;
|
|
cts-gpios = <&gpio 46 0>;
|
|
};
|
|
|
|
for uart use in BT module,
|
|
uart6: uart@11000000 {
|
|
cell-index = <6>;
|
|
compatible = "sirf,marco-bt-uart", "sirf,marco-uart";
|
|
reg = <0x11000000 0x1000>;
|
|
interrupts = <0 100 0>;
|
|
clocks = <&clks 138>, <&clks 140>, <&clks 141>;
|
|
clock-names = "uart", "general", "noc";
|
|
fifosize = <128>;
|
|
status = "disabled";
|
|
}
|