[PATCH 1/3 v4] spi: s3c64xx: fix broken "cs_gpios" usage in the driver
From: dianders@chromium.org (Doug Anderson)
Date: 2014-06-12 23:25:59
Also in:
linux-devicetree, linux-samsung-soc
Naveen, On Thu, Jun 12, 2014 at 6:13 AM, Naveen Krishna Chatradhi [off-list ref] wrote:
Since, (3146bee spi: s3c64xx: Added provision for dedicated cs pin)
spi-s3c64xx.c driver expects
1. chip select gpios from "cs-gpio"(singular) under the
"controller-data" node of the client/slave device of the SPI.
2. "cs-gpio"(singular) entry to be present in the SPI device node.
Eg of current broken usage:
&spi_1 {
cs-gpio <>; /* this entry is checked during probe */
...
slave_node {
controller-data {
cs-gpio <&gpioa2 5 0>;
/* This field is parsed during .setup() */
}
};
};
The following dts files which were using this driver. But,
din't have the "cs-gpio" entry under SPI node.
-- arch/arm/boot/dts/exynos4210-smdkv310.dts
-- arch/arm/boot/dts/exynos4412-trats2.dts
-- arch/arm/boot/dts/exynos5250-smdk5250.dts
Also, the SPI core and many drivers moved on to using "cs-gpios"
from SPI node and removed the gpio handling code from drivers
(including spi-s3c64xx.c).
Hence, spi-s3c64xx.c is broken since "Jun 21 11:26:12 2013" and
considering the time with no compliants about the breakage.
We are assuming it is safe to remove the "cs-gpio"(singular) usage
from device tree binding of spi-samsung.txt and makes appropriate
changes in the driver to use "cs-gpios"(plural) from
SPI device node.
Signed-off-by: Naveen Krishna Chatradhi <redacted>
Acked-by: Rob Herring <robh@kernel.org>
Cc: Javier Martinez Canillas <redacted>
Cc: Doug Anderson <dianders@chromium.org>
Cc: Tomasz Figa <redacted>
---
.../devicetree/bindings/spi/spi-samsung.txt | 8 ++--
drivers/spi/spi-s3c64xx.c | 41 ++++++++------------
2 files changed, 20 insertions(+), 29 deletions(-)I'm not planning to do an in-depth review of this patch since it seems that others are on top of it, but I've tested it. With it (and some patches that haven't been sent up yet) I can talk to the EC on exynos5420-pit. Tested-by: Doug Anderson <dianders@chromium.org>