diff mbox

spi: spi-xilinx: Use DT information for bits_per_word value

Message ID 51191C11.9070607@efe-gmbh.de (mailing list archive)
State Superseded, archived
Headers show

Commit Message

Jens Renner Feb. 11, 2013, 4:28 p.m. UTC
From: Jens Renner <renner@efe-gmbh.de>

This patch overrides the default value of bits_per_word with the actual value
of "xlnx,num-transfer-bits" from the DTS file to allow for 16 and 32 bit word
lengths.

Signed-off-by: Jens Renner <renner@efe-gmbh.de>
---
------------------------------------------------------------------------------
Free Next-Gen Firewall Hardware Offer
Buy your Sophos next-gen firewall before the end March 2013 
and get the hardware for free! Learn more.
http://p.sf.net/sfu/sophos-d2d-feb

Comments

Grant Likely March 2, 2013, 9:22 p.m. UTC | #1
On Mon, 11 Feb 2013 17:28:01 +0100, "Jens Renner (EFE)" <renner@efe-gmbh.de> wrote:
> From: Jens Renner <renner@efe-gmbh.de>
> 
> This patch overrides the default value of bits_per_word with the actual value
> of "xlnx,num-transfer-bits" from the DTS file to allow for 16 and 32 bit word
> lengths.
> 
> Signed-off-by: Jens Renner <renner@efe-gmbh.de>
> ---
> diff --git a/drivers/spi/spi-xilinx.c b/drivers/spi/spi-xilinx.c
> index e1d7696..03abdfa 100644
> --- a/drivers/spi/spi-xilinx.c
> +++ b/drivers/spi/spi-xilinx.c
> @@ -487,6 +487,12 @@ static int xilinx_spi_probe(struct platform_device *dev)
> 				       &len);
> 		if (prop && len >= sizeof(*prop))
> 			num_cs = __be32_to_cpup(prop);
> +
> +		/* override default number of bits per word */
> +		prop = of_get_property(dev->dev.of_node,
> +				       "xlnx,num-transfer-bits", &len);
> +		if (prop && len >= sizeof(*prop))
> +			bits_per_word = __be32_to_cpup(prop);

Hi Jens,

Please remember to update documentation when modifying a DT binding.

Also, if you use of_property_read_u32() the code will be a lot simpler.

g.

------------------------------------------------------------------------------
Everyone hates slow websites. So do we.
Make your web apps faster with AppDynamics
Download AppDynamics Lite for free today:
http://p.sf.net/sfu/appdyn_d2d_feb
diff mbox

Patch

diff --git a/drivers/spi/spi-xilinx.c b/drivers/spi/spi-xilinx.c
index e1d7696..03abdfa 100644
--- a/drivers/spi/spi-xilinx.c
+++ b/drivers/spi/spi-xilinx.c
@@ -487,6 +487,12 @@  static int xilinx_spi_probe(struct platform_device *dev)
				       &len);
		if (prop && len >= sizeof(*prop))
			num_cs = __be32_to_cpup(prop);
+
+		/* override default number of bits per word */
+		prop = of_get_property(dev->dev.of_node,
+				       "xlnx,num-transfer-bits", &len);
+		if (prop && len >= sizeof(*prop))
+			bits_per_word = __be32_to_cpup(prop);
	}
 #endif