On Mon, Feb 22, 2016 at 04:47:06AM +0300, Sergei Ianovich wrote:
> ICP DAS LP-8841 contains a DS-1302 RTC. This driver provides an SPI
> master which makes the RTC usable. The driver is not supposed to work
> with anything else.
> 
> The driver uses the standard MicroWire half-duplex transfer timing.
> Master output is set on low clock and sensed by the RTC on the rising
> edge. Master input is set by the RTC on the trailing edge and is sensed
> by the master on low clock.
> 
> Signed-off-by: Sergei Ianovich <[email protected]>
> ---
>  .../devicetree/bindings/spi/spi-lp8841-rtc.txt     |  55 +++++
>  drivers/spi/Kconfig                                |  10 +
>  drivers/spi/Makefile                               |   1 +
>  drivers/spi/spi-lp8841-rtc.c                       | 272 
> +++++++++++++++++++++
>  4 files changed, 338 insertions(+)
>  create mode 100644 Documentation/devicetree/bindings/spi/spi-lp8841-rtc.txt
>  create mode 100644 drivers/spi/spi-lp8841-rtc.c
> 
> diff --git a/Documentation/devicetree/bindings/spi/spi-lp8841-rtc.txt 
> b/Documentation/devicetree/bindings/spi/spi-lp8841-rtc.txt
> new file mode 100644
> index 0000000..f191aef
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/spi/spi-lp8841-rtc.txt
> @@ -0,0 +1,55 @@
> +* ICP DAS LP-8841 SPI Controller for RTC
> +
> +ICP DAS LP-8841 contains a DS-1302 RTC. This driver provides an SPI
> +master which makes the RTC usable. The driver is not supposed to work
> +with anything else.

Bindings describe h/w not drivers.

> +The driver uses the standard MicroWire half-duplex transfer timing.
> +Master output is set on low clock and sensed by the RTC on the rising
> +edge. Master input is set by the RTC on the trailing edge and is sensed
> +by the master on low clock.
> +
> +Required properties:
> +
> +- #address-cells: should be 1
> +
> +- #size-cells: should be 0
> +
> +- compatible: should be "icpdas,spi-lp8841-rtc"

icpdas,lp8841-spi-rtc would be more inline with naming conventions.

> +
> +- reg: should provide IO memory address
> +
> +Requirements to SPI slave nodes:
> +
> +- There can be only one slave device.
> +
> +- The spi slave node should claim the following flags which are
> +  required by the spi controller.
> +
> +  - spi-3wire: The master itself has only 3 wire. It cannor work in

s/cannor/cannot/

> +    full duplex mode.
> +
> +  - spi-cs-high: DS-1302 has active high chip select line. The master
> +    doesn't support active low.
> +
> +  - spi-lsb-first: DS-1302 requires least significant bit first
> +    transfers. The master only support this type of bit ordering.
> +
> +
> +Example:
> +
> +spi0@901c {

spi@901c

> +     #address-cells = <1>;
> +     #size-cells = <0>;
> +     compatible = "icpdas,spi-lp8841-rtc";
> +     reg = <0x901c 0x1>;
> +
> +     rtc@0 {
> +             compatible = "maxim,rtc-ds1302";
> +             reg = <0>;
> +             spi-max-frequency = <500000>;
> +             spi-3wire;
> +             spi-lsb-first;
> +             spi-cs-high;
> +     };
> +};

Reply via email to