RE: [PATCH v2] watchdog: imx2_wdt: adds big endianness support.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,

I'd like to know the state of this patch.
:)

Thanks,

BRs
Xiubo


> -----Original Message-----
> From: Xiubo Li [mailto:Li.Xiubo@xxxxxxxxxxxxx]
> Sent: Tuesday, June 03, 2014 10:45 AM
> To: wim@xxxxxxxxx; linux-watchdog@xxxxxxxxxxxxxxx
> Cc: robh+dt@xxxxxxxxxx; pawel.moll@xxxxxxx; mark.rutland@xxxxxxx;
> ijc+devicetree@xxxxxxxxxxxxxx; galak@xxxxxxxxxxxxxx; Xiubo Li-B47053
> Subject: [PATCH v2] watchdog: imx2_wdt: adds big endianness support.
> 
> This watchdog driver will be working on IMX2+, Vybrid, LS1, LS2+
> platforms, and will be in different endianness mode in those SoCs:
> 
>     SoCs       WDT endian mode
> ------------------------------------
>     IMX2+           LE
>     Vybird          LE
>     LS1             BE
>     LS2             LE
> 
> Signed-off-by: Xiubo Li <Li.Xiubo@xxxxxxxxxxxxx>
> ---
> 
> 
> Changes in V2:
> - Document the use of the 'big-endian' property.
> 
> 
> 
> 
>  Documentation/devicetree/bindings/watchdog/fsl-imx-wdt.txt | 5 +++++
>  drivers/watchdog/imx2_wdt.c                                | 7 +++++++
>  2 files changed, 12 insertions(+)
> 
> diff --git a/Documentation/devicetree/bindings/watchdog/fsl-imx-wdt.txt
> b/Documentation/devicetree/bindings/watchdog/fsl-imx-wdt.txt
> index 2144af1..e52ba2d 100644
> --- a/Documentation/devicetree/bindings/watchdog/fsl-imx-wdt.txt
> +++ b/Documentation/devicetree/bindings/watchdog/fsl-imx-wdt.txt
> @@ -5,10 +5,15 @@ Required properties:
>  - reg : Should contain WDT registers location and length
>  - interrupts : Should contain WDT interrupt
> 
> +Optional property:
> +- big-endian: If present the watchdog device's registers are implemented
> +  in big endian mode, otherwise in little mode.
> +
>  Examples:
> 
>  wdt@73f98000 {
>  	compatible = "fsl,imx51-wdt", "fsl,imx21-wdt";
>  	reg = <0x73f98000 0x4000>;
>  	interrupts = <58>;
> +	big-endian;
>  };
> diff --git a/drivers/watchdog/imx2_wdt.c b/drivers/watchdog/imx2_wdt.c
> index 9d4874f..68c3d37 100644
> --- a/drivers/watchdog/imx2_wdt.c
> +++ b/drivers/watchdog/imx2_wdt.c
> @@ -28,6 +28,7 @@
>  #include <linux/kernel.h>
>  #include <linux/module.h>
>  #include <linux/moduleparam.h>
> +#include <linux/of_address.h>
>  #include <linux/platform_device.h>
>  #include <linux/regmap.h>
>  #include <linux/timer.h>
> @@ -190,10 +191,12 @@ static struct regmap_config imx2_wdt_regmap_config = {
> 
>  static int __init imx2_wdt_probe(struct platform_device *pdev)
>  {
> +	struct device_node *np = pdev->dev.of_node;
>  	struct imx2_wdt_device *wdev;
>  	struct watchdog_device *wdog;
>  	struct resource *res;
>  	void __iomem *base;
> +	bool big_endian;
>  	int ret;
>  	u32 val;
> 
> @@ -201,6 +204,10 @@ static int __init imx2_wdt_probe(struct platform_device
> *pdev)
>  	if (!wdev)
>  		return -ENOMEM;
> 
> +	big_endian = of_property_read_bool(np, "big-endian");
> +	if (big_endian)
> +		imx2_wdt_regmap_config.val_format_endian = REGMAP_ENDIAN_BIG;
> +
>  	res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
>  	base = devm_ioremap_resource(&pdev->dev, res);
>  	if (IS_ERR(base))
> --
> 1.8.4

--
To unsubscribe from this list: send the line "unsubscribe linux-watchdog" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [eCos]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux