Re: [PATCH v2 5/8] mfd: exynos-lpass: Remove pad retention control

2017-02-08 Thread Lee Jones
On Thu, 26 Jan 2017, Marek Szyprowski wrote:

> Pad retention should be controlled from pin control driver, so remove it
> from Exynos LPASS driver. After this change, no more access to PMU regmap
> is needed, so remove also the code for handling PMU regmap.
> 
> Signed-off-by: Marek Szyprowski 
> Acked-by: Krzysztof Kozlowski 
> ---
>  .../bindings/mfd/samsung,exynos5433-lpass.txt   |  2 --
>  drivers/mfd/exynos-lpass.c  | 17 
> -
>  include/linux/mfd/syscon/exynos5-pmu.h  |  3 ---
>  3 files changed, 22 deletions(-)

Love the diff! :)

For my own reference:
  Acked-for-MFD-by: Lee Jones 
  
> diff --git 
> a/Documentation/devicetree/bindings/mfd/samsung,exynos5433-lpass.txt 
> b/Documentation/devicetree/bindings/mfd/samsung,exynos5433-lpass.txt
> index c110e118b79f..a8deaee82c44 100644
> --- a/Documentation/devicetree/bindings/mfd/samsung,exynos5433-lpass.txt
> +++ b/Documentation/devicetree/bindings/mfd/samsung,exynos5433-lpass.txt
> @@ -5,7 +5,6 @@ Required properties:
>   - compatible: "samsung,exynos5433-lpass"
>   - reg   : should contain the LPASS top SFR region 
> location
> and size
> - - samsung,pmu-syscon: the phandle to the Power Management Unit node
>   - #address-cells: should be 1
>   - #size-cells   : should be 1
>   - ranges: must be present
> @@ -25,7 +24,6 @@ Example:
>  audio-subsystem {
>   compatible = "samsung,exynos5433-lpass";
>   reg = <0x1140 0x100>, <0x1150 0x08>;
> - samsung,pmu-syscon = <_system_controller>;
>   #address-cells = <1>;
>   #size-cells = <1>;
>   ranges;
> diff --git a/drivers/mfd/exynos-lpass.c b/drivers/mfd/exynos-lpass.c
> index 2e064fb8826f..17915daa2e80 100644
> --- a/drivers/mfd/exynos-lpass.c
> +++ b/drivers/mfd/exynos-lpass.c
> @@ -18,7 +18,6 @@
>  #include 
>  #include 
>  #include 
> -#include 
>  #include 
>  #include 
>  #include 
> @@ -51,8 +50,6 @@
>  #define  LPASS_INTR_SFR  BIT(0)
>  
>  struct exynos_lpass {
> - /* pointer to the Power Management Unit regmap */
> - struct regmap *pmu;
>   /* pointer to the LPASS TOP regmap */
>   struct regmap *top;
>  };
> @@ -81,10 +78,6 @@ static void exynos_lpass_enable(struct exynos_lpass *lpass)
>   regmap_write(lpass->top, SFR_LPASS_INTR_CPU_MASK,
>LPASS_INTR_SFR | LPASS_INTR_DMA | LPASS_INTR_I2S);
>  
> - /* Activate related PADs from retention state */
> - regmap_write(lpass->pmu, EXYNOS5433_PAD_RETENTION_AUD_OPTION,
> -  EXYNOS5433_PAD_INITIATE_WAKEUP_FROM_LOWPWR);
> -
>   exynos_lpass_core_sw_reset(lpass, LPASS_I2S_SW_RESET);
>   exynos_lpass_core_sw_reset(lpass, LPASS_DMA_SW_RESET);
>   exynos_lpass_core_sw_reset(lpass, LPASS_MEM_SW_RESET);
> @@ -95,9 +88,6 @@ static void exynos_lpass_disable(struct exynos_lpass *lpass)
>   /* Mask any unmasked IP interrupt sources */
>   regmap_write(lpass->top, SFR_LPASS_INTR_CPU_MASK, 0);
>   regmap_write(lpass->top, SFR_LPASS_INTR_CA5_MASK, 0);
> -
> - /* Deactivate related PADs from retention state */
> - regmap_write(lpass->pmu, EXYNOS5433_PAD_RETENTION_AUD_OPTION, 0);
>  }
>  
>  static const struct regmap_config exynos_lpass_reg_conf = {
> @@ -131,13 +121,6 @@ static int exynos_lpass_probe(struct platform_device 
> *pdev)
>   return PTR_ERR(lpass->top);
>   }
>  
> - lpass->pmu = syscon_regmap_lookup_by_phandle(dev->of_node,
> - "samsung,pmu-syscon");
> - if (IS_ERR(lpass->pmu)) {
> - dev_err(dev, "Failed to lookup PMU regmap\n");
> - return PTR_ERR(lpass->pmu);
> - }
> -
>   platform_set_drvdata(pdev, lpass);
>   exynos_lpass_enable(lpass);
>  
> diff --git a/include/linux/mfd/syscon/exynos5-pmu.h 
> b/include/linux/mfd/syscon/exynos5-pmu.h
> index c28ff21ca4d2..0622ae86f9db 100644
> --- a/include/linux/mfd/syscon/exynos5-pmu.h
> +++ b/include/linux/mfd/syscon/exynos5-pmu.h
> @@ -46,7 +46,4 @@
>  #define EXYNOS5_MIPI_PHY_S_RESETNBIT(1)
>  #define EXYNOS5_MIPI_PHY_M_RESETNBIT(2)
>  
> -#define EXYNOS5433_PAD_RETENTION_AUD_OPTION  (0x3028)
> -#define EXYNOS5433_PAD_INITIATE_WAKEUP_FROM_LOWPWR   BIT(28)
> -
>  #endif /* _LINUX_MFD_SYSCON_PMU_EXYNOS5_H_ */

-- 
Lee Jones
Linaro STMicroelectronics Landing Team Lead
Linaro.org │ Open source software for ARM SoCs
Follow Linaro: Facebook | Twitter | Blog


Re: [PATCH v2 5/8] mfd: exynos-lpass: Remove pad retention control

2017-02-08 Thread Lee Jones
On Thu, 26 Jan 2017, Marek Szyprowski wrote:

> Pad retention should be controlled from pin control driver, so remove it
> from Exynos LPASS driver. After this change, no more access to PMU regmap
> is needed, so remove also the code for handling PMU regmap.
> 
> Signed-off-by: Marek Szyprowski 
> Acked-by: Krzysztof Kozlowski 
> ---
>  .../bindings/mfd/samsung,exynos5433-lpass.txt   |  2 --
>  drivers/mfd/exynos-lpass.c  | 17 
> -
>  include/linux/mfd/syscon/exynos5-pmu.h  |  3 ---
>  3 files changed, 22 deletions(-)

Love the diff! :)

For my own reference:
  Acked-for-MFD-by: Lee Jones 
  
> diff --git 
> a/Documentation/devicetree/bindings/mfd/samsung,exynos5433-lpass.txt 
> b/Documentation/devicetree/bindings/mfd/samsung,exynos5433-lpass.txt
> index c110e118b79f..a8deaee82c44 100644
> --- a/Documentation/devicetree/bindings/mfd/samsung,exynos5433-lpass.txt
> +++ b/Documentation/devicetree/bindings/mfd/samsung,exynos5433-lpass.txt
> @@ -5,7 +5,6 @@ Required properties:
>   - compatible: "samsung,exynos5433-lpass"
>   - reg   : should contain the LPASS top SFR region 
> location
> and size
> - - samsung,pmu-syscon: the phandle to the Power Management Unit node
>   - #address-cells: should be 1
>   - #size-cells   : should be 1
>   - ranges: must be present
> @@ -25,7 +24,6 @@ Example:
>  audio-subsystem {
>   compatible = "samsung,exynos5433-lpass";
>   reg = <0x1140 0x100>, <0x1150 0x08>;
> - samsung,pmu-syscon = <_system_controller>;
>   #address-cells = <1>;
>   #size-cells = <1>;
>   ranges;
> diff --git a/drivers/mfd/exynos-lpass.c b/drivers/mfd/exynos-lpass.c
> index 2e064fb8826f..17915daa2e80 100644
> --- a/drivers/mfd/exynos-lpass.c
> +++ b/drivers/mfd/exynos-lpass.c
> @@ -18,7 +18,6 @@
>  #include 
>  #include 
>  #include 
> -#include 
>  #include 
>  #include 
>  #include 
> @@ -51,8 +50,6 @@
>  #define  LPASS_INTR_SFR  BIT(0)
>  
>  struct exynos_lpass {
> - /* pointer to the Power Management Unit regmap */
> - struct regmap *pmu;
>   /* pointer to the LPASS TOP regmap */
>   struct regmap *top;
>  };
> @@ -81,10 +78,6 @@ static void exynos_lpass_enable(struct exynos_lpass *lpass)
>   regmap_write(lpass->top, SFR_LPASS_INTR_CPU_MASK,
>LPASS_INTR_SFR | LPASS_INTR_DMA | LPASS_INTR_I2S);
>  
> - /* Activate related PADs from retention state */
> - regmap_write(lpass->pmu, EXYNOS5433_PAD_RETENTION_AUD_OPTION,
> -  EXYNOS5433_PAD_INITIATE_WAKEUP_FROM_LOWPWR);
> -
>   exynos_lpass_core_sw_reset(lpass, LPASS_I2S_SW_RESET);
>   exynos_lpass_core_sw_reset(lpass, LPASS_DMA_SW_RESET);
>   exynos_lpass_core_sw_reset(lpass, LPASS_MEM_SW_RESET);
> @@ -95,9 +88,6 @@ static void exynos_lpass_disable(struct exynos_lpass *lpass)
>   /* Mask any unmasked IP interrupt sources */
>   regmap_write(lpass->top, SFR_LPASS_INTR_CPU_MASK, 0);
>   regmap_write(lpass->top, SFR_LPASS_INTR_CA5_MASK, 0);
> -
> - /* Deactivate related PADs from retention state */
> - regmap_write(lpass->pmu, EXYNOS5433_PAD_RETENTION_AUD_OPTION, 0);
>  }
>  
>  static const struct regmap_config exynos_lpass_reg_conf = {
> @@ -131,13 +121,6 @@ static int exynos_lpass_probe(struct platform_device 
> *pdev)
>   return PTR_ERR(lpass->top);
>   }
>  
> - lpass->pmu = syscon_regmap_lookup_by_phandle(dev->of_node,
> - "samsung,pmu-syscon");
> - if (IS_ERR(lpass->pmu)) {
> - dev_err(dev, "Failed to lookup PMU regmap\n");
> - return PTR_ERR(lpass->pmu);
> - }
> -
>   platform_set_drvdata(pdev, lpass);
>   exynos_lpass_enable(lpass);
>  
> diff --git a/include/linux/mfd/syscon/exynos5-pmu.h 
> b/include/linux/mfd/syscon/exynos5-pmu.h
> index c28ff21ca4d2..0622ae86f9db 100644
> --- a/include/linux/mfd/syscon/exynos5-pmu.h
> +++ b/include/linux/mfd/syscon/exynos5-pmu.h
> @@ -46,7 +46,4 @@
>  #define EXYNOS5_MIPI_PHY_S_RESETNBIT(1)
>  #define EXYNOS5_MIPI_PHY_M_RESETNBIT(2)
>  
> -#define EXYNOS5433_PAD_RETENTION_AUD_OPTION  (0x3028)
> -#define EXYNOS5433_PAD_INITIATE_WAKEUP_FROM_LOWPWR   BIT(28)
> -
>  #endif /* _LINUX_MFD_SYSCON_PMU_EXYNOS5_H_ */

-- 
Lee Jones
Linaro STMicroelectronics Landing Team Lead
Linaro.org │ Open source software for ARM SoCs
Follow Linaro: Facebook | Twitter | Blog


Re: [PATCH v2 5/8] mfd: exynos-lpass: Remove pad retention control

2017-02-01 Thread Rob Herring
On Thu, Jan 26, 2017 at 09:33:51AM +0100, Marek Szyprowski wrote:
> Pad retention should be controlled from pin control driver, so remove it
> from Exynos LPASS driver. After this change, no more access to PMU regmap
> is needed, so remove also the code for handling PMU regmap.
> 
> Signed-off-by: Marek Szyprowski 
> Acked-by: Krzysztof Kozlowski 
> ---
>  .../bindings/mfd/samsung,exynos5433-lpass.txt   |  2 --

Acked-by: Rob Herring 

>  drivers/mfd/exynos-lpass.c  | 17 
> -
>  include/linux/mfd/syscon/exynos5-pmu.h  |  3 ---
>  3 files changed, 22 deletions(-)


Re: [PATCH v2 5/8] mfd: exynos-lpass: Remove pad retention control

2017-02-01 Thread Rob Herring
On Thu, Jan 26, 2017 at 09:33:51AM +0100, Marek Szyprowski wrote:
> Pad retention should be controlled from pin control driver, so remove it
> from Exynos LPASS driver. After this change, no more access to PMU regmap
> is needed, so remove also the code for handling PMU regmap.
> 
> Signed-off-by: Marek Szyprowski 
> Acked-by: Krzysztof Kozlowski 
> ---
>  .../bindings/mfd/samsung,exynos5433-lpass.txt   |  2 --

Acked-by: Rob Herring 

>  drivers/mfd/exynos-lpass.c  | 17 
> -
>  include/linux/mfd/syscon/exynos5-pmu.h  |  3 ---
>  3 files changed, 22 deletions(-)


Re: [PATCH v2 5/8] mfd: exynos-lpass: Remove pad retention control

2017-01-26 Thread Sylwester Nawrocki
On 01/26/2017 09:33 AM, Marek Szyprowski wrote:
> Pad retention should be controlled from pin control driver, so remove it
> from Exynos LPASS driver. After this change, no more access to PMU regmap
> is needed, so remove also the code for handling PMU regmap.
> 
> Signed-off-by: Marek Szyprowski 
> Acked-by: Krzysztof Kozlowski 

Patches 5/8...8/8:

Acked-by: Sylwester Nawrocki 



Re: [PATCH v2 5/8] mfd: exynos-lpass: Remove pad retention control

2017-01-26 Thread Sylwester Nawrocki
On 01/26/2017 09:33 AM, Marek Szyprowski wrote:
> Pad retention should be controlled from pin control driver, so remove it
> from Exynos LPASS driver. After this change, no more access to PMU regmap
> is needed, so remove also the code for handling PMU regmap.
> 
> Signed-off-by: Marek Szyprowski 
> Acked-by: Krzysztof Kozlowski 

Patches 5/8...8/8:

Acked-by: Sylwester Nawrocki 



[PATCH v2 5/8] mfd: exynos-lpass: Remove pad retention control

2017-01-26 Thread Marek Szyprowski
Pad retention should be controlled from pin control driver, so remove it
from Exynos LPASS driver. After this change, no more access to PMU regmap
is needed, so remove also the code for handling PMU regmap.

Signed-off-by: Marek Szyprowski 
Acked-by: Krzysztof Kozlowski 
---
 .../bindings/mfd/samsung,exynos5433-lpass.txt   |  2 --
 drivers/mfd/exynos-lpass.c  | 17 -
 include/linux/mfd/syscon/exynos5-pmu.h  |  3 ---
 3 files changed, 22 deletions(-)

diff --git a/Documentation/devicetree/bindings/mfd/samsung,exynos5433-lpass.txt 
b/Documentation/devicetree/bindings/mfd/samsung,exynos5433-lpass.txt
index c110e118b79f..a8deaee82c44 100644
--- a/Documentation/devicetree/bindings/mfd/samsung,exynos5433-lpass.txt
+++ b/Documentation/devicetree/bindings/mfd/samsung,exynos5433-lpass.txt
@@ -5,7 +5,6 @@ Required properties:
  - compatible  : "samsung,exynos5433-lpass"
  - reg : should contain the LPASS top SFR region location
  and size
- - samsung,pmu-syscon  : the phandle to the Power Management Unit node
  - #address-cells  : should be 1
  - #size-cells : should be 1
  - ranges  : must be present
@@ -25,7 +24,6 @@ Example:
 audio-subsystem {
compatible = "samsung,exynos5433-lpass";
reg = <0x1140 0x100>, <0x1150 0x08>;
-   samsung,pmu-syscon = <_system_controller>;
#address-cells = <1>;
#size-cells = <1>;
ranges;
diff --git a/drivers/mfd/exynos-lpass.c b/drivers/mfd/exynos-lpass.c
index 2e064fb8826f..17915daa2e80 100644
--- a/drivers/mfd/exynos-lpass.c
+++ b/drivers/mfd/exynos-lpass.c
@@ -18,7 +18,6 @@
 #include 
 #include 
 #include 
-#include 
 #include 
 #include 
 #include 
@@ -51,8 +50,6 @@
 #define  LPASS_INTR_SFRBIT(0)
 
 struct exynos_lpass {
-   /* pointer to the Power Management Unit regmap */
-   struct regmap *pmu;
/* pointer to the LPASS TOP regmap */
struct regmap *top;
 };
@@ -81,10 +78,6 @@ static void exynos_lpass_enable(struct exynos_lpass *lpass)
regmap_write(lpass->top, SFR_LPASS_INTR_CPU_MASK,
 LPASS_INTR_SFR | LPASS_INTR_DMA | LPASS_INTR_I2S);
 
-   /* Activate related PADs from retention state */
-   regmap_write(lpass->pmu, EXYNOS5433_PAD_RETENTION_AUD_OPTION,
-EXYNOS5433_PAD_INITIATE_WAKEUP_FROM_LOWPWR);
-
exynos_lpass_core_sw_reset(lpass, LPASS_I2S_SW_RESET);
exynos_lpass_core_sw_reset(lpass, LPASS_DMA_SW_RESET);
exynos_lpass_core_sw_reset(lpass, LPASS_MEM_SW_RESET);
@@ -95,9 +88,6 @@ static void exynos_lpass_disable(struct exynos_lpass *lpass)
/* Mask any unmasked IP interrupt sources */
regmap_write(lpass->top, SFR_LPASS_INTR_CPU_MASK, 0);
regmap_write(lpass->top, SFR_LPASS_INTR_CA5_MASK, 0);
-
-   /* Deactivate related PADs from retention state */
-   regmap_write(lpass->pmu, EXYNOS5433_PAD_RETENTION_AUD_OPTION, 0);
 }
 
 static const struct regmap_config exynos_lpass_reg_conf = {
@@ -131,13 +121,6 @@ static int exynos_lpass_probe(struct platform_device *pdev)
return PTR_ERR(lpass->top);
}
 
-   lpass->pmu = syscon_regmap_lookup_by_phandle(dev->of_node,
-   "samsung,pmu-syscon");
-   if (IS_ERR(lpass->pmu)) {
-   dev_err(dev, "Failed to lookup PMU regmap\n");
-   return PTR_ERR(lpass->pmu);
-   }
-
platform_set_drvdata(pdev, lpass);
exynos_lpass_enable(lpass);
 
diff --git a/include/linux/mfd/syscon/exynos5-pmu.h 
b/include/linux/mfd/syscon/exynos5-pmu.h
index c28ff21ca4d2..0622ae86f9db 100644
--- a/include/linux/mfd/syscon/exynos5-pmu.h
+++ b/include/linux/mfd/syscon/exynos5-pmu.h
@@ -46,7 +46,4 @@
 #define EXYNOS5_MIPI_PHY_S_RESETN  BIT(1)
 #define EXYNOS5_MIPI_PHY_M_RESETN  BIT(2)
 
-#define EXYNOS5433_PAD_RETENTION_AUD_OPTION(0x3028)
-#define EXYNOS5433_PAD_INITIATE_WAKEUP_FROM_LOWPWR BIT(28)
-
 #endif /* _LINUX_MFD_SYSCON_PMU_EXYNOS5_H_ */
-- 
1.9.1



[PATCH v2 5/8] mfd: exynos-lpass: Remove pad retention control

2017-01-26 Thread Marek Szyprowski
Pad retention should be controlled from pin control driver, so remove it
from Exynos LPASS driver. After this change, no more access to PMU regmap
is needed, so remove also the code for handling PMU regmap.

Signed-off-by: Marek Szyprowski 
Acked-by: Krzysztof Kozlowski 
---
 .../bindings/mfd/samsung,exynos5433-lpass.txt   |  2 --
 drivers/mfd/exynos-lpass.c  | 17 -
 include/linux/mfd/syscon/exynos5-pmu.h  |  3 ---
 3 files changed, 22 deletions(-)

diff --git a/Documentation/devicetree/bindings/mfd/samsung,exynos5433-lpass.txt 
b/Documentation/devicetree/bindings/mfd/samsung,exynos5433-lpass.txt
index c110e118b79f..a8deaee82c44 100644
--- a/Documentation/devicetree/bindings/mfd/samsung,exynos5433-lpass.txt
+++ b/Documentation/devicetree/bindings/mfd/samsung,exynos5433-lpass.txt
@@ -5,7 +5,6 @@ Required properties:
  - compatible  : "samsung,exynos5433-lpass"
  - reg : should contain the LPASS top SFR region location
  and size
- - samsung,pmu-syscon  : the phandle to the Power Management Unit node
  - #address-cells  : should be 1
  - #size-cells : should be 1
  - ranges  : must be present
@@ -25,7 +24,6 @@ Example:
 audio-subsystem {
compatible = "samsung,exynos5433-lpass";
reg = <0x1140 0x100>, <0x1150 0x08>;
-   samsung,pmu-syscon = <_system_controller>;
#address-cells = <1>;
#size-cells = <1>;
ranges;
diff --git a/drivers/mfd/exynos-lpass.c b/drivers/mfd/exynos-lpass.c
index 2e064fb8826f..17915daa2e80 100644
--- a/drivers/mfd/exynos-lpass.c
+++ b/drivers/mfd/exynos-lpass.c
@@ -18,7 +18,6 @@
 #include 
 #include 
 #include 
-#include 
 #include 
 #include 
 #include 
@@ -51,8 +50,6 @@
 #define  LPASS_INTR_SFRBIT(0)
 
 struct exynos_lpass {
-   /* pointer to the Power Management Unit regmap */
-   struct regmap *pmu;
/* pointer to the LPASS TOP regmap */
struct regmap *top;
 };
@@ -81,10 +78,6 @@ static void exynos_lpass_enable(struct exynos_lpass *lpass)
regmap_write(lpass->top, SFR_LPASS_INTR_CPU_MASK,
 LPASS_INTR_SFR | LPASS_INTR_DMA | LPASS_INTR_I2S);
 
-   /* Activate related PADs from retention state */
-   regmap_write(lpass->pmu, EXYNOS5433_PAD_RETENTION_AUD_OPTION,
-EXYNOS5433_PAD_INITIATE_WAKEUP_FROM_LOWPWR);
-
exynos_lpass_core_sw_reset(lpass, LPASS_I2S_SW_RESET);
exynos_lpass_core_sw_reset(lpass, LPASS_DMA_SW_RESET);
exynos_lpass_core_sw_reset(lpass, LPASS_MEM_SW_RESET);
@@ -95,9 +88,6 @@ static void exynos_lpass_disable(struct exynos_lpass *lpass)
/* Mask any unmasked IP interrupt sources */
regmap_write(lpass->top, SFR_LPASS_INTR_CPU_MASK, 0);
regmap_write(lpass->top, SFR_LPASS_INTR_CA5_MASK, 0);
-
-   /* Deactivate related PADs from retention state */
-   regmap_write(lpass->pmu, EXYNOS5433_PAD_RETENTION_AUD_OPTION, 0);
 }
 
 static const struct regmap_config exynos_lpass_reg_conf = {
@@ -131,13 +121,6 @@ static int exynos_lpass_probe(struct platform_device *pdev)
return PTR_ERR(lpass->top);
}
 
-   lpass->pmu = syscon_regmap_lookup_by_phandle(dev->of_node,
-   "samsung,pmu-syscon");
-   if (IS_ERR(lpass->pmu)) {
-   dev_err(dev, "Failed to lookup PMU regmap\n");
-   return PTR_ERR(lpass->pmu);
-   }
-
platform_set_drvdata(pdev, lpass);
exynos_lpass_enable(lpass);
 
diff --git a/include/linux/mfd/syscon/exynos5-pmu.h 
b/include/linux/mfd/syscon/exynos5-pmu.h
index c28ff21ca4d2..0622ae86f9db 100644
--- a/include/linux/mfd/syscon/exynos5-pmu.h
+++ b/include/linux/mfd/syscon/exynos5-pmu.h
@@ -46,7 +46,4 @@
 #define EXYNOS5_MIPI_PHY_S_RESETN  BIT(1)
 #define EXYNOS5_MIPI_PHY_M_RESETN  BIT(2)
 
-#define EXYNOS5433_PAD_RETENTION_AUD_OPTION(0x3028)
-#define EXYNOS5433_PAD_INITIATE_WAKEUP_FROM_LOWPWR BIT(28)
-
 #endif /* _LINUX_MFD_SYSCON_PMU_EXYNOS5_H_ */
-- 
1.9.1