of_spi: add generic binding support to specify cs gpio
A message that is not in the archive (sent off-list or not yet received): [email protected]
A message that is not in the archive (sent off-list or not yet received): 1349850454-21127-1-git-send-email-wenyou.yang-AIFe0yeh4nAAvxtiuMwx3w@public.gmane.org
PATCH 2/16 of_spi: add generic binding support to specify cs gpio
From: Jean-Christophe PLAGNIOL-VILLARD <plagnioj-sclMFOaUSTBWk0Htik3J/[email protected]>
This will allow to use gpio for chip select with no modification in the driver binding
When use the cs-gpios, the gpio number will be passed via the cs_gpio field and the number of chip select will automatically increased.
---
This patch based on the original patch from Jean-Christophe,
0002-of_spi-add-generic-binding-support-to-specify-cs-gpi.patch,
and merged the patch from Richard Genoud,
0016-BUG-SPI-array-out-of-bound-no-CS.patch.
which fix the BUG of spi array out of bound
Documentation/devicetree/bindings/spi/spi-bus.txt | 6 +++ drivers/spi/spi.c | 55 +++++++++++++++++++-- include/linux/spi/spi.h | 3 ++ 3 files changed, 61 insertions(+), 3 deletions(-)
Documentation/devicetree/bindings/spi/spi-bus.txt +6 -0
@@ -12,6 +12,7 @@ The SPI master node requires the following properties: - #size-cells - should be zero. - compatible - name of SPI bus controller following generic names recommended practice. +- cs-gpios - (optional) gpios chip select. No other properties are required in the SPI bus node. It is assumed that a driver for an SPI bus device will understand that it is an SPI bus. However, the binding does not attempt to define the specific method for
@@ -21,6 +22,8 @@ assumption that board specific platform code will be used to manage chip selects. Individual drivers can define additional properties to support describing the chip select layout. +If cs-gpios is used the number of chip select will automatically increased. + SPI slave nodes must be children of the SPI master node and can contain the following properties. - reg - (required) chip select address of device.
@@ -34,6 +37,9 @@ contain the following properties. - spi-cs-high - (optional) Empty property indicating device requires chip select active high +If a gpio chipselect is used for the SPI slave the gpio number will be passed +via the controller_data + SPI example for an MPC5200 SPI bus: spi@f00 { #address-cells = <1>;
drivers/spi/spi.c +52 -3
97 lines not on this page · raw message
include/linux/spi/spi.h +3 -0
@@ -90,6 +90,7 @@ struct spi_device {void *controller_state;void *controller_data;char modalias[SPI_NAME_SIZE ]; +int cs_gpio;/* chip select gpio */ /* * likely need more hooks for more protocol options affecting how
@@ -362,6 +363,8 @@ struct spi_master {int (*transfer_one_message)(struct spi_master *master,struct spi_message *mesg);int (*unprepare_transfer_hardware)(struct spi_master *master); +/* gpio chip select */ +int *cs_gpios; };static inline void *spi_master_get_devdata (struct spi_master *master)
Signature · 9 lines
1.7.9.5 ------------------------------------------------------------------------------ Don't let slow site performance ruin your business. Deploy New Relic APM Deploy New Relic app performance management and know exactly what is happening inside your Ruby, Python, PHP, Java, and .NET app Try New Relic at no cost today and get our sweet Data Nerd shirt too! http://p.sf.net/sfu/newrelic-dev2dev
A message that is not in the archive (sent off-list or not yet received): 1349850454-21127-3-git-send-email-wenyou.yang-AIFe0yeh4nAAvxtiuMwx3w@public.gmane.org
Quoted 125 lines · Wenyou Yang
From: Jean-Christophe PLAGNIOL-VILLARD <plagnioj-sclMFOaUSTBWk0Htik3J/[email protected]>
This will allow to use gpio for chip select with no modification in the driver binding
When use the cs-gpios, the gpio number will be passed via the
cs_gpiofield and the number of chip select will automatically increased.Cc devicetree-discuss-uLR06cmDAlY/[email protected]Cc spi-devel-general-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.orgSigned-off-by Richard Genoud <[email protected]>---
This patch based on the original patch from Jean-Christophe,
0002-of_spi-add-generic-binding-support-to-specify-cs-gpi.patch,
and merged the patch from Richard Genoud,0016-BUG-SPI-array-out-of-bound-no-CS.patch.which fix the BUG of spi array out of bound
Documentation/devicetree/bindings/spi/spi-bus.txt | 6 +++ drivers/spi/spi.c | 55 +++++++++++++++++++-- include/linux/spi/spi.h | 3 ++ 3 files changed, 61 insertions(+), 3 deletions(-)Documentation/devicetree/bindings/spi/spi-bus.txt +6
-0@@ -12,6 +12,7 @@ The SPI master node requires the following properties: - #size-cells - should be zero. - compatible - name of SPI bus controller following generic names recommended practice. +- cs-gpios - (optional) gpios chip select. No other properties are required in the SPI bus node. It is assumed that a driver for an SPI bus device will understand that it is an SPI bus. However, the binding does not attempt to define the specific method for@@ -21,6 +22,8 @@ assumption that board specific platform code will be used to manage chip selects. Individual drivers can define additional properties to support describing the chip select layout. +If cs-gpios is used the number of chip select will automatically increased. + SPI slave nodes must be children of the SPI master node and can contain the following properties. - reg - (required) chip select address of device.@@ -34,6 +37,9 @@ contain the following properties. - spi-cs-high - (optional) Empty property indicating device requires chip select active high +If a gpio chipselect is used for the SPI slave the gpio number will be passed +via the controller_data + SPI example for an MPC5200 SPI bus: spi@f00 { #address-cells = <1>;drivers/spi/spi.c +25
-3@@ -30,6 +30,7 @@#include <linux/slab.h> #include <linux/mod_devicetable.h> #include <linux/spi/spi.h> +#include <linux/of_gpio.h> #include <linux/pm_runtime.h> #include <linux/export.h> #include <linux/sched.h> @@ -327,6 +328,7 @@ struct spi_device *spi_alloc_device(struct spi_master *master) spi->dev.parent = &master->dev; spi->dev.bus = &spi_bus_type; spi->dev.release = spidev_release; + spi->cs_gpio = -EINVAL ;device_initialize (&spi->dev);return spi; }@@ -344,15 +346,16 @@ EXPORT_SYMBOL_GPL(spi_alloc_device);int spi_add_device (struct spi_device *spi) {static DEFINE_MUTEX (spi_add_lock); -struct device *dev = spi->master->dev.parent; +struct spi_master *master = spi->master; +struct device *dev = master->dev.parent;struct device *d;int status;/* Chipselects are numbered 0..max; validate. */ -if (spi->chip_select >= spi->master->num_chipselect) { +if (spi->chip_select >= master->num_chipselect) {dev_err (dev,"cs%d >= max %d\n" , spi->chip_select, - spi->master->num_chipselect); + master->num_chipselect);return -EINVAL ; }@@ -376,6 +379,9 @@ int spi_add_device(struct spi_device *spi) goto done; } +if (master->cs_gpios) + spi->cs_gpio = master->cs_gpios[spi->chip_select]; +/* Drivers may modify this initial i/o setup, but will * normally rely on the device being setup. Devices * using SPI_CS_HIGH can't coexist well otherwise... @@ -946,6 +952,45 @@ struct spi_master *spi_alloc_master(struct device *dev, unsigned size) }EXPORT_SYMBOL_GPL (spi_alloc_master); +#ifdef CONFIG_OF +static int of_spi_register_master (struct spi_master *master) +{ +int nb, i; +int *cs; +struct device_node *np = master->dev.of_node; + +if (!np) +return 0 ; + + nb =of_gpio_named_count (np,"cs-gpios" ); + +if (nb <1 ) +return 0 ; + + cs = devm_kzalloc(&master->dev,
drivers/spi/spi.c struct spi_master *spi_alloc_master(struct device *dev, unsigned size) · line 980
Quoted 10 lines
drivers/spi/spi.c +10
-0+sizeof (int ) * (master->num_chipselect + nb), + GFP_KERNEL); + master->cs_gpios = cs; + +if (!master->cs_gpios) +return -ENOMEM ; + +memset (cs, -EINVAL , master->num_chipselect); + cs += master->num_chipselect; + master->num_chipselect += nb;
The problem with this approach is the gpio cs get appended to the 'native' cs lines which gets really confusing. If cs-gpios is provided, then num_chipselect should become the *greater* of either the number of native chip selects or the number of gpios provided. Otherwise the user has no way to figure out how reg values will map to gpios. The first cs-gpio entry could end up getting mapped to something like cs4.
So if for example the controller has 2 CS lines, and the cs-gpios property looks like this:
cs-gpios = <&gpio1 0 0> <0> <&gpio1 1 0> <&gpio1 2 0>;
Then it should be configured so that num_chipselect = 4 with the following mapping:
cs0 : &gpio1 0 0
cs1 : native
cs2 : &gpio1 1 0
cs3 : &gpio1 2 0
Otherwise the patch looks pretty good.
g.
PATCH v2 1/1 of_spi: add generic binding support to specify cs gpio
This will allow to use gpio for chip select with no modification in the driver binding
When use the cs-gpios, the gpio number will be passed via the cs_gpio field and the number of chip select will automatically increased with max(hw cs, gpio cs).
So if for example the controller has 2 CS lines, and the cs-gpios property looks like this:
cs-gpios = <&gpio1 0 0> <0> <&gpio1 1 0> <&gpio1 2 0>;
Then it should be configured so that num_chipselect = 4 with the following mapping:
cs0 : &gpio1 0 0
cs1 : native
cs2 : &gpio1 1 0
cs3 : &gpio1 2 0
---
v2:
update to allow to overwrite hw gpio via cs-gpio as sugested by Grant
Best Regards,
J.
Documentation/devicetree/bindings/spi/spi-bus.txt | 20 ++++++++ drivers/spi/spi.c | 54 +++++++++++++++++++-- include/linux/spi/spi.h | 3 ++ 3 files changed, 74 insertions(+), 3 deletions(-)
Documentation/devicetree/bindings/spi/spi-bus.txt +20 -0
@@ -12,6 +12,7 @@ The SPI master node requires the following properties: - #size-cells - should be zero. - compatible - name of SPI bus controller following generic names recommended practice. +- cs-gpios - (optional) gpios chip select. No other properties are required in the SPI bus node. It is assumed that a driver for an SPI bus device will understand that it is an SPI bus. However, the binding does not attempt to define the specific method for
@@ -24,6 +25,22 @@ support describing the chip select layout. Optional property: - num-cs : total number of chipselects +If cs-gpios is used the number of chip select will automatically increased +with max(cs-gpios > hw cs) + +So if for example the controller has 2 CS lines, and the cs-gpios +property looks like this: + +cs-gpios = <&gpio1 0 0> <0> <&gpio1 1 0> <&gpio1 2 0>; + +Then it should be configured so that num_chipselect = 4 with the +following mapping: + +cs0 : &gpio1 0 0 +cs1 : native +cs2 : &gpio1 1 0 +cs3 : &gpio1 2 0 + SPI slave nodes must be children of the SPI master node and can contain the following properties. - reg - (required) chip select address of device.
@@ -37,6 +54,9 @@ contain the following properties. - spi-cs-high - (optional) Empty property indicating device requires chip select active high +If a gpio chipselect is used for the SPI slave the gpio number will be passed +via the cs_gpio + SPI example for an MPC5200 SPI bus: spi at f00 { #address-cells = <1>;
drivers/spi/spi.c +51 -3
96 lines not on this page · raw message
include/linux/spi/spi.h +3 -0
@@ -90,6 +90,7 @@ struct spi_device {void *controller_state;void *controller_data;char modalias[SPI_NAME_SIZE ]; +int cs_gpio;/* chip select gpio */ /* * likely need more hooks for more protocol options affecting how
@@ -362,6 +363,8 @@ struct spi_master {int (*transfer_one_message)(struct spi_master *master,struct spi_message *mesg);int (*unprepare_transfer_hardware)(struct spi_master *master); +/* gpio chip select */ +int *cs_gpios; };static inline void *spi_master_get_devdata (struct spi_master *master)
Signature · 1 line
1.7.10.4
Grant Likely
AppliedPATCH v2 1/1 of_spi: add generic binding support to specify cs gpio
Quoted 19 lines · Jean-Christophe PLAGNIOL-VILLARD
This will allow to use gpio for chip select with no modification in the driver binding
When use the cs-gpios, the gpio number will be passed via the
cs_gpiofield and the number of chip select will automatically increased withmax(hw cs, gpio cs).So if for example the controller has 2 CS lines, and the cs-gpios property looks like this:
cs-gpios = <&gpio1 0 0> <0> <&gpio1 1 0> <&gpio1 2 0>;
Then it should be configured so that
num_chipselect= 4 with the following mapping:cs0 : &gpio1 0 0
cs1 : native
cs2 : &gpio1 1 0
cs3 : &gpio1 2 0
Quoted 4 lines
Signed-off-by Jean-Christophe PLAGNIOL-VILLARD <[email protected]>Cc devicetree-discuss at lists.ozlabs.orgCc spi-devel-general at lists.sourceforge.netSigned-off-by Richard Genoud <[email protected]>
Applied, thanks.
g.
PATCH 1/1 spi/atmel: add DT support
the atmel_spi use only gpio for chip select
---
Hi Grant,
can we have this for 3.8
This patch is presetnt on the ML sing Feb 2012 and was depinding on the cs-gpio dt that you just apply
Best Regards,
J.
.../devicetree/bindings/spi/spi_atmel.txt | 26 ++++++++++++++++++++ drivers/spi/spi-atmel.c | 17 ++++++++++++- 2 files changed, 42 insertions(+), 1 deletion(-) create mode 100644 Documentation/devicetree/bindings/spi/spi_atmel.txt
Documentation/devicetree/bindings/spi/spi_atmel.txt new file +26 -0
@@ -0,0 +1,26 @@ +Atmel SPI device + +Required properties: +- compatible : should be "atmel,at91rm9200-spi". +- reg: Address and length of the register set for the device +- interrupts: Should contain spi interrupt +- cs-gpios: chipselects + +Example: + +spi1: spi at fffcc000 { + compatible = "atmel,at91rm9200-spi"; + reg = <0xfffcc000 0x4000>; + interrupts = <13 4 5>; + #address-cells = <1>; + #size-cells = <0>; + cs-gpios = <&pioB 3 0>; + status = "okay"; + + mmc-slot at 0 { + compatible = "mmc-spi-slot"; + reg = <0>; + gpios = <&pioC 4 0>; /* CD */ + spi-max-frequency = <25000000>; + }; +};
drivers/spi/spi-atmel.c +16 -1
@@ -20,6 +20,7 @@#include <linux/spi/spi.h> #include <linux/slab.h> #include <linux/platform_data/atmel.h> +#include <linux/of.h> #include <asm/io.h> #include <asm/gpio.h>
@@ -768,6 +769,10 @@ static int atmel_spi_setup(struct spi_device *spi)/* chipselect must have been muxed as GPIO (e.g. in board setup) */ npcs_pin = (unsigned int )spi->controller_data; + +if (gpio_is_valid (spi->cs_gpio)) + npcs_pin = spi->cs_gpio; + asd = spi->controller_state;if (!asd) { asd =kzalloc (sizeof (struct atmel_spi_device ),GFP_KERNEL );
@@ -937,8 +942,9 @@ static int __devinit atmel_spi_probe(struct platform_device *pdev)/* the spi->mode bits understood by this driver: */ master->mode_bits =SPI_CPOL |SPI_CPHA |SPI_CS_HIGH ; + master->dev.of_node = pdev->dev.of_node; master->bus_num = pdev->id; - master->num_chipselect =4 ; + master->num_chipselect = master->dev.of_node ?0 :4 ; master->setup = atmel_spi_setup; master->transfer = atmel_spi_transfer; master->cleanup = atmel_spi_cleanup;
@@ -1064,11 +1070,20 @@ static int atmel_spi_resume(struct platform_device *pdev)#define atmel_spi_resume NULL#endif +#if defined(CONFIG_OF ) +static const struct of_device_id atmel_spi_dt_ids[] = { + { .compatible ="atmel,at91rm9200-spi" }, + {/* sentinel */ } +}; + +MODULE_DEVICE_TABLE (of, atmel_spi_dt_ids); +#endif static struct platform_driver atmel_spi_driver = { .driver = { .name ="atmel_spi" , .owner =THIS_MODULE , + .of_match_table =of_match_ptr (atmel_spi_dt_ids), }, .suspend = atmel_spi_suspend, .resume = atmel_spi_resume,
Signature · 1 line
1.7.10.4
PATCH 1/1 spi/atmel: add DT support
On 11/23/2012 01:44 PM, Jean-Christophe PLAGNIOL-VILLARD :
Quoted 3 lines
the
atmel_spiuse only gpio for chip selectSigned-off-by Jean-Christophe PLAGNIOL-VILLARD <[email protected]>
Seems simple and nice:
Quoted 104 lines
Cc spi-devel-general at lists.sourceforge.netCc Grant Likely <[email protected]>---
Hi Grant,can we have this for 3.8
This patch is presetnt on the ML sing Feb 2012 and was depinding on the cs-gpio dt that you just applyBest Regards,
J..../devicetree/bindings/spi/spi_atmel.txt | 26 ++++++++++++++++++++ drivers/spi/spi-atmel.c | 17 ++++++++++++- 2 files changed, 42 insertions(+), 1 deletion(-) create mode 100644 Documentation/devicetree/bindings/spi/spi_atmel.txtDocumentation/devicetree/bindings/spi/spi_atmel.txt new file +26
-0@@ -0,0 +1,26 @@ +Atmel SPI device + +Required properties: +- compatible : should be "atmel,at91rm9200-spi". +- reg: Address and length of the register set for the device +- interrupts: Should contain spi interrupt +- cs-gpios: chipselects + +Example: + +spi1: spi at fffcc000 { + compatible = "atmel,at91rm9200-spi"; + reg = <0xfffcc000 0x4000>; + interrupts = <13 4 5>; + #address-cells = <1>; + #size-cells = <0>; + cs-gpios = <&pioB 3 0>; + status = "okay"; + + mmc-slot at 0 { + compatible = "mmc-spi-slot"; + reg = <0>; + gpios = <&pioC 4 0>; /* CD */ + spi-max-frequency = <25000000>; + }; +};drivers/spi/spi-atmel.c +16
-1@@ -20,6 +20,7 @@#include <linux/spi/spi.h> #include <linux/slab.h> #include <linux/platform_data/atmel.h> +#include <linux/of.h> #include <asm/io.h> #include <asm/gpio.h> @@ -768,6 +769,10 @@ static int atmel_spi_setup(struct spi_device *spi)/* chipselect must have been muxed as GPIO (e.g. in board setup) */ npcs_pin = (unsigned int )spi->controller_data; + +if (gpio_is_valid (spi->cs_gpio)) + npcs_pin = spi->cs_gpio; + asd = spi->controller_state;if (!asd) { asd =kzalloc (sizeof (struct atmel_spi_device ),GFP_KERNEL );@@ -937,8 +942,9 @@ static int __devinit atmel_spi_probe(struct platform_device *pdev)/* the spi->mode bits understood by this driver: */ master->mode_bits =SPI_CPOL |SPI_CPHA |SPI_CS_HIGH ; + master->dev.of_node = pdev->dev.of_node; master->bus_num = pdev->id; - master->num_chipselect =4 ; + master->num_chipselect = master->dev.of_node ?0 :4 ; master->setup = atmel_spi_setup; master->transfer = atmel_spi_transfer; master->cleanup = atmel_spi_cleanup;@@ -1064,11 +1070,20 @@ static int atmel_spi_resume(struct platform_device *pdev)#define atmel_spi_resume NULL#endif +#if defined(CONFIG_OF ) +static const struct of_device_id atmel_spi_dt_ids[] = { + { .compatible ="atmel,at91rm9200-spi" }, + {/* sentinel */ } +}; + +MODULE_DEVICE_TABLE (of, atmel_spi_dt_ids); +#endif static struct platform_driver atmel_spi_driver = { .driver = { .name ="atmel_spi" , .owner =THIS_MODULE , + .of_match_table =of_match_ptr (atmel_spi_dt_ids), }, .suspend = atmel_spi_suspend, .resume = atmel_spi_resume,
Signature · 1 line
Nicolas Ferre
PATCH 1/1 spi/atmel: add DT support
Quoted 8 lines · Nicolas Ferre
On 11/23/2012 01:44 PM, Jean-Christophe PLAGNIOL-VILLARD :
Quoted 3 lines
the
atmel_spiuse only gpio for chip selectSigned-off-by Jean-Christophe PLAGNIOL-VILLARD <[email protected]>Seems simple and nice:
Acked-by Nicolas Ferre <[email protected]>
grant is ok to have this for 3.8?
Best Regards,
J.
Quoted 109 lines
Quoted 105 lines
Cc spi-devel-general at lists.sourceforge.netCc Grant Likely <[email protected]>---
Hi Grant,can we have this for 3.8
This patch is presetnt on the ML sing Feb 2012 and was depinding on the cs-gpio dt that you just applyBest Regards,
J..../devicetree/bindings/spi/spi_atmel.txt | 26 ++++++++++++++++++++ drivers/spi/spi-atmel.c | 17 ++++++++++++- 2 files changed, 42 insertions(+), 1 deletion(-) create mode 100644 Documentation/devicetree/bindings/spi/spi_atmel.txtDocumentation/devicetree/bindings/spi/spi_atmel.txt new file +26
-0@@ -0,0 +1,26 @@ +Atmel SPI device + +Required properties: +- compatible : should be "atmel,at91rm9200-spi". +- reg: Address and length of the register set for the device +- interrupts: Should contain spi interrupt +- cs-gpios: chipselects + +Example: + +spi1: spi at fffcc000 { + compatible = "atmel,at91rm9200-spi"; + reg = <0xfffcc000 0x4000>; + interrupts = <13 4 5>; + #address-cells = <1>; + #size-cells = <0>; + cs-gpios = <&pioB 3 0>; + status = "okay"; + + mmc-slot at 0 { + compatible = "mmc-spi-slot"; + reg = <0>; + gpios = <&pioC 4 0>; /* CD */ + spi-max-frequency = <25000000>; + }; +};drivers/spi/spi-atmel.c +16
-1@@ -20,6 +20,7 @@#include <linux/spi/spi.h> #include <linux/slab.h> #include <linux/platform_data/atmel.h> +#include <linux/of.h> #include <asm/io.h> #include <asm/gpio.h> @@ -768,6 +769,10 @@ static int atmel_spi_setup(struct spi_device *spi)/* chipselect must have been muxed as GPIO (e.g. in board setup) */ npcs_pin = (unsigned int )spi->controller_data; + +if (gpio_is_valid (spi->cs_gpio)) + npcs_pin = spi->cs_gpio; + asd = spi->controller_state;if (!asd) { asd =kzalloc (sizeof (struct atmel_spi_device ),GFP_KERNEL );@@ -937,8 +942,9 @@ static int __devinit atmel_spi_probe(struct platform_device *pdev)/* the spi->mode bits understood by this driver: */ master->mode_bits =SPI_CPOL |SPI_CPHA |SPI_CS_HIGH ; + master->dev.of_node = pdev->dev.of_node; master->bus_num = pdev->id; - master->num_chipselect =4 ; + master->num_chipselect = master->dev.of_node ?0 :4 ; master->setup = atmel_spi_setup; master->transfer = atmel_spi_transfer; master->cleanup = atmel_spi_cleanup;@@ -1064,11 +1070,20 @@ static int atmel_spi_resume(struct platform_device *pdev)#define atmel_spi_resume NULL#endif +#if defined(CONFIG_OF ) +static const struct of_device_id atmel_spi_dt_ids[] = { + { .compatible ="atmel,at91rm9200-spi" }, + {/* sentinel */ } +}; + +MODULE_DEVICE_TABLE (of, atmel_spi_dt_ids); +#endif static struct platform_driver atmel_spi_driver = { .driver = { .name ="atmel_spi" , .owner =THIS_MODULE , + .of_match_table =of_match_ptr (atmel_spi_dt_ids), }, .suspend = atmel_spi_suspend, .resume = atmel_spi_resume,Signature · 1 line
Nicolas Ferre
PATCH 1/1 spi/atmel: add DT support
Quoted 10 lines · Jean-Christophe PLAGNIOL-VILLARD
Quoted 8 lines · Nicolas Ferre
On 11/23/2012 01:44 PM, Jean-Christophe PLAGNIOL-VILLARD :
Quoted 3 lines
the
atmel_spiuse only gpio for chip selectSigned-off-by Jean-Christophe PLAGNIOL-VILLARD <[email protected]>Seems simple and nice:
Acked-by Nicolas Ferre <[email protected]>grant is ok to have this for 3.8?
Not sure how I missed this one. It's pretty straight forward and not risky, so no problem. However;
Quoted 1 line
Quoted 1 line
Quoted 1 line
the
atmel_spiuse only gpio for chip select
I know you know how to write a proper commit message. I'll need something better than the above before I commit it. I won't make you resubmit the patch, but do send me a better description.
g.
PATCH 1/1 spi/atmel: add DT support
Quoted 12 lines · Grant Likely
Quoted 10 lines · Jean-Christophe PLAGNIOL-VILLARD
Quoted 8 lines · Nicolas Ferre
On 11/23/2012 01:44 PM, Jean-Christophe PLAGNIOL-VILLARD :
Quoted 3 lines
the
atmel_spiuse only gpio for chip selectSigned-off-by Jean-Christophe PLAGNIOL-VILLARD <[email protected]>Seems simple and nice:
Acked-by Nicolas Ferre <[email protected]>grant is ok to have this for 3.8?
Quoted 9 lines
Not sure how I missed this one. It's pretty straight forward and not risky, so no problem. However;
Quoted 1 line
Quoted 1 line
Quoted 1 line
the
atmel_spiuse only gpio for chip selectI know you know how to write a proper commit message. I'll need something better than the above before I commit it. I won't make you resubmit the patch, but do send me a better description.
ok replace with this please
spi/atmel: add DT support
Use the newly introduce cs-gpios dt support on atmel.
We do not use the hardware cs as it's wired and have buges and limitations. As the the controller's belief that only active-low devices/systems exists.
As done on non-dt system.
Best Regards,
J.
Quoted 2 lines
g.
PATCH 1/1 spi/atmel: add DT support
Quoted 24 lines · Jean-Christophe PLAGNIOL-VILLARD
Quoted 12 lines · Grant Likely
Quoted 10 lines · Jean-Christophe PLAGNIOL-VILLARD
Quoted 8 lines · Nicolas Ferre
On 11/23/2012 01:44 PM, Jean-Christophe PLAGNIOL-VILLARD :
Quoted 3 lines
the
atmel_spiuse only gpio for chip selectSigned-off-by Jean-Christophe PLAGNIOL-VILLARD <[email protected]>Seems simple and nice:
Acked-by Nicolas Ferre <[email protected]>grant is ok to have this for 3.8?
Quoted 9 lines
Not sure how I missed this one. It's pretty straight forward and not risky, so no problem. However;
Quoted 1 line
Quoted 1 line
Quoted 1 line
the
atmel_spiuse only gpio for chip selectI know you know how to write a proper commit message. I'll need something better than the above before I commit it. I won't make you resubmit the patch, but do send me a better description.
ok replace with this please
Quoted 7 lines
spi/atmel: add DT support
Use the newly introduce cs-gpios dt support on atmel.
We do not use the hardware cs as it's wired and have buges and limitations. As the the controller's belief that only active-low devices/systems exists.As done on non-dt system.
Done, thanks.
g.