[PATCH 0/3] Add device tree based discovery support for drm-fimd

STALE5069d

Revision v1 of 6 in this series.

9 messages, 2 authors, 2012-09-20 · open the first message on its own page

[PATCH 0/3] Add device tree based discovery support for drm-fimd

From: Leela Krishna Amudala <hidden>
Date: 2012-09-18 18:22:08

This patch set adds arch side support for device tree based discovery
for drm-fimd.

The patches are created against "for-next" branch of Kukjin Kim's tree on 3.6-rc6 at:
 git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung.git

This patchset has been tested on smdk5250 board and seen the bootup logo on LCD
using the patchset http://www.spinics.net/lists/arm-kernel/msg193348.html which was 
applied on inki-dae's next branch

Leela Krishna Amudala (3):
  ARM: EXYNOS5: Add fimd node to the exynos5250 dtsi file
  ARM: EXYNOS: add device tree based discovery support for FIMD
  ARM: EXYNOS: Add drm-device node to the dtsi file

 arch/arm/boot/dts/exynos5250-smdk5250.dts |   16 ++++++++++++++++
 arch/arm/boot/dts/exynos5250.dtsi         |   11 +++++++++++
 arch/arm/mach-exynos/include/mach/map.h   |    1 +
 arch/arm/mach-exynos/mach-exynos5-dt.c    |    2 ++
 4 files changed, 30 insertions(+), 0 deletions(-)

[PATCH 1/3] ARM: EXYNOS5: Add fimd node to the exynos5250 dtsi file

From: Leela Krishna Amudala <hidden>
Date: 2012-09-18 18:22:09

This patch adds the fimd node with compatibility string, hardware address,
interrupt line numbers to the exynos5250 dtsi file.

Signed-off-by: Leela Krishna Amudala <redacted>
---
 arch/arm/boot/dts/exynos5250.dtsi |    7 +++++++
 1 files changed, 7 insertions(+), 0 deletions(-)
diff --git a/arch/arm/boot/dts/exynos5250.dtsi b/arch/arm/boot/dts/exynos5250.dtsi
index b55794b..6d27ca4 100644
--- a/arch/arm/boot/dts/exynos5250.dtsi
+++ b/arch/arm/boot/dts/exynos5250.dtsi
@@ -488,4 +488,11 @@
 		reg = <0x13e30000 0x1000>;
 		interrupts = <0 88 0>;
 	};
+
+	fimd {
+		compatible = "samsung,exynos5-drm";
+		interrupt-parent = <&combiner>;
+		reg = <0x14400000 0x40000>;
+		interrupts = <18 5>, <18 4>, <18 6>;
+	};
 };
-- 
1.7.0.4

[PATCH 2/3] ARM: EXYNOS: add device tree based discovery support for FIMD

From: Leela Krishna Amudala <hidden>
Date: 2012-09-18 18:22:10

This patch adds support for device tree based discovery for Samsung's
display controller. Adds DRM-Fimd plat data for smdk5250
evt1 to the corresponding dts file

Signed-off-by: Leela Krishna Amudala <redacted>
---
 arch/arm/boot/dts/exynos5250-smdk5250.dts |   16 ++++++++++++++++
 arch/arm/mach-exynos/include/mach/map.h   |    1 +
 arch/arm/mach-exynos/mach-exynos5-dt.c    |    2 ++
 3 files changed, 19 insertions(+), 0 deletions(-)
diff --git a/arch/arm/boot/dts/exynos5250-smdk5250.dts b/arch/arm/boot/dts/exynos5250-smdk5250.dts
index 8a5e348..c8d32f5 100644
--- a/arch/arm/boot/dts/exynos5250-smdk5250.dts
+++ b/arch/arm/boot/dts/exynos5250-smdk5250.dts
@@ -109,4 +109,20 @@
 	spi_2: spi at 12d40000 {
 		status = "disabled";
 	};
+
+	lcd_fimd0: lcd_panel0 {
+			lcd-htiming = <4 4 4 1280>;
+			lcd-vtiming = <4 4 4 800>;
+			supports-mipi-panel;
+	};
+
+	fimd {
+		samsung,fimd-display = <&lcd_fimd0>;
+		samsung,fimd-vidout-rgb;
+		samsung,fimd-inv-vclk;
+		samsung,fimd-frame-rate = <60>;
+		samsung,default-window = <0>;
+		samsung,fimd-win-bpp = <32>;
+	};
+
 };
diff --git a/arch/arm/mach-exynos/include/mach/map.h b/arch/arm/mach-exynos/include/mach/map.h
index b2021bd..dd9cea3 100644
--- a/arch/arm/mach-exynos/include/mach/map.h
+++ b/arch/arm/mach-exynos/include/mach/map.h
@@ -174,6 +174,7 @@
 #define EXYNOS4_PA_MIPI_CSIS1		0x11890000
 
 #define EXYNOS4_PA_FIMD0		0x11C00000
+#define EXYNOS5_PA_FIMD			0x14400000
 
 #define EXYNOS4_PA_HSMMC(x)		(0x12510000 + ((x) * 0x10000))
 #define EXYNOS4_PA_DWMCI		0x12550000
diff --git a/arch/arm/mach-exynos/mach-exynos5-dt.c b/arch/arm/mach-exynos/mach-exynos5-dt.c
index e707eb1..0d35d31 100644
--- a/arch/arm/mach-exynos/mach-exynos5-dt.c
+++ b/arch/arm/mach-exynos/mach-exynos5-dt.c
@@ -64,6 +64,8 @@ static const struct of_dev_auxdata exynos5250_auxdata_lookup[] __initconst = {
 				"exynos-gsc.2", NULL),
 	OF_DEV_AUXDATA("samsung,exynos5-gsc", EXYNOS5_PA_GSC3,
 				"exynos-gsc.3", NULL),
+	OF_DEV_AUXDATA("samsung,exynos5-fimd", EXYNOS5_PA_FIMD,
+				"exynos5-fb.1", NULL),
 	{},
 };
 
-- 
1.7.0.4

[PATCH 3/3] ARM: EXYNOS: Add drm-device node to the dtsi file

From: Leela Krishna Amudala <hidden>
Date: 2012-09-18 18:22:11

This patch adds platform drm-device node to the dtsi file

Signed-off-by: Leela Krishna Amudala <redacted>
---
 arch/arm/boot/dts/exynos5250.dtsi |    4 ++++
 1 files changed, 4 insertions(+), 0 deletions(-)
diff --git a/arch/arm/boot/dts/exynos5250.dtsi b/arch/arm/boot/dts/exynos5250.dtsi
index 6d27ca4..b1fa93e 100644
--- a/arch/arm/boot/dts/exynos5250.dtsi
+++ b/arch/arm/boot/dts/exynos5250.dtsi
@@ -495,4 +495,8 @@
 		reg = <0x14400000 0x40000>;
 		interrupts = <18 5>, <18 4>, <18 6>;
 	};
+
+	drm-device {
+		compatible = "samsung,exynos-drm-device";
+	};
 };
-- 
1.7.0.4

[PATCH 2/3] ARM: EXYNOS: add device tree based discovery support for FIMD

From: Jingoo Han <hidden>
Date: 2012-09-20 05:02:17

On Wednesday, September 19, 2012 3:22 AM Leela Krishna Amudala wrote
quoted hunk
This patch adds support for device tree based discovery for Samsung's
display controller. Adds DRM-Fimd plat data for smdk5250
evt1 to the corresponding dts file

Signed-off-by: Leela Krishna Amudala <redacted>
---
 arch/arm/boot/dts/exynos5250-smdk5250.dts |   16 ++++++++++++++++
 arch/arm/mach-exynos/include/mach/map.h   |    1 +
 arch/arm/mach-exynos/mach-exynos5-dt.c    |    2 ++
 3 files changed, 19 insertions(+), 0 deletions(-)
diff --git a/arch/arm/boot/dts/exynos5250-smdk5250.dts b/arch/arm/boot/dts/exynos5250-smdk5250.dts
index 8a5e348..c8d32f5 100644
--- a/arch/arm/boot/dts/exynos5250-smdk5250.dts
+++ b/arch/arm/boot/dts/exynos5250-smdk5250.dts
@@ -109,4 +109,20 @@
 	spi_2: spi at 12d40000 {
 		status = "disabled";
 	};
+
+	lcd_fimd0: lcd_panel0 {
+			lcd-htiming = <4 4 4 1280>;
+			lcd-vtiming = <4 4 4 800>;
+			supports-mipi-panel;
+	};
+
+	fimd {
+		samsung,fimd-display = <&lcd_fimd0>;
+		samsung,fimd-vidout-rgb;
+		samsung,fimd-inv-vclk;
+		samsung,fimd-frame-rate = <60>;
+		samsung,default-window = <0>;
+		samsung,fimd-win-bpp = <32>;
+	};
+
 };
diff --git a/arch/arm/mach-exynos/include/mach/map.h b/arch/arm/mach-exynos/include/mach/map.h
index b2021bd..dd9cea3 100644
--- a/arch/arm/mach-exynos/include/mach/map.h
+++ b/arch/arm/mach-exynos/include/mach/map.h
@@ -174,6 +174,7 @@
 #define EXYNOS4_PA_MIPI_CSIS1		0x11890000

 #define EXYNOS4_PA_FIMD0		0x11C00000
+#define EXYNOS5_PA_FIMD			0x14400000
CC'ed Thomas Abraham

Please, replace EXYNOS5_PA_FIMD with EXYNOS5_PA_FIMD1.

As I mentioned before, Other Exynos5 SoCs can have 2 FIMD IPs.
Also, Exynos5250 uses FIMD1.

quoted hunk
 #define EXYNOS4_PA_HSMMC(x)		(0x12510000 + ((x) * 0x10000))
 #define EXYNOS4_PA_DWMCI		0x12550000
diff --git a/arch/arm/mach-exynos/mach-exynos5-dt.c b/arch/arm/mach-exynos/mach-exynos5-dt.c
index e707eb1..0d35d31 100644
--- a/arch/arm/mach-exynos/mach-exynos5-dt.c
+++ b/arch/arm/mach-exynos/mach-exynos5-dt.c
@@ -64,6 +64,8 @@ static const struct of_dev_auxdata exynos5250_auxdata_lookup[] __initconst = {
 				"exynos-gsc.2", NULL),
 	OF_DEV_AUXDATA("samsung,exynos5-gsc", EXYNOS5_PA_GSC3,
 				"exynos-gsc.3", NULL),
+	OF_DEV_AUXDATA("samsung,exynos5-fimd", EXYNOS5_PA_FIMD,
+				"exynos5-fb.1", NULL),
 	{},
 };

--
1.7.0.4

[PATCH 2/3] ARM: EXYNOS: add device tree based discovery support for FIMD

From: Leela Krishna Amudala <hidden>
Date: 2012-09-20 05:53:40

Hi Jingoo Han,

On Thu, Sep 20, 2012 at 10:32 AM, Jingoo Han [off-list ref] wrote:
On Wednesday, September 19, 2012 3:22 AM Leela Krishna Amudala wrote
quoted
This patch adds support for device tree based discovery for Samsung's
display controller. Adds DRM-Fimd plat data for smdk5250
evt1 to the corresponding dts file

Signed-off-by: Leela Krishna Amudala <redacted>
---
 arch/arm/boot/dts/exynos5250-smdk5250.dts |   16 ++++++++++++++++
 arch/arm/mach-exynos/include/mach/map.h   |    1 +
 arch/arm/mach-exynos/mach-exynos5-dt.c    |    2 ++
 3 files changed, 19 insertions(+), 0 deletions(-)
diff --git a/arch/arm/boot/dts/exynos5250-smdk5250.dts b/arch/arm/boot/dts/exynos5250-smdk5250.dts
index 8a5e348..c8d32f5 100644
--- a/arch/arm/boot/dts/exynos5250-smdk5250.dts
+++ b/arch/arm/boot/dts/exynos5250-smdk5250.dts
@@ -109,4 +109,20 @@
      spi_2: spi at 12d40000 {
              status = "disabled";
      };
+
+     lcd_fimd0: lcd_panel0 {
+                     lcd-htiming = <4 4 4 1280>;
+                     lcd-vtiming = <4 4 4 800>;
+                     supports-mipi-panel;
+     };
+
+     fimd {
+             samsung,fimd-display = <&lcd_fimd0>;
+             samsung,fimd-vidout-rgb;
+             samsung,fimd-inv-vclk;
+             samsung,fimd-frame-rate = <60>;
+             samsung,default-window = <0>;
+             samsung,fimd-win-bpp = <32>;
+     };
+
 };
diff --git a/arch/arm/mach-exynos/include/mach/map.h b/arch/arm/mach-exynos/include/mach/map.h
index b2021bd..dd9cea3 100644
--- a/arch/arm/mach-exynos/include/mach/map.h
+++ b/arch/arm/mach-exynos/include/mach/map.h
@@ -174,6 +174,7 @@
 #define EXYNOS4_PA_MIPI_CSIS1                0x11890000

 #define EXYNOS4_PA_FIMD0             0x11C00000
+#define EXYNOS5_PA_FIMD                      0x14400000
CC'ed Thomas Abraham

Please, replace EXYNOS5_PA_FIMD with EXYNOS5_PA_FIMD1.

As I mentioned before, Other Exynos5 SoCs can have 2 FIMD IPs.
Also, Exynos5250 uses FIMD1.
As per Joonyoung Shim's comment on my previous patches I renamed it
from EXYNOS5_PA_FIMD1 to EXYNOS5_PA_FIMD. Will change it in next
version.
Thanks for reviewing the patch set.

Best Wishes,
Leela Krishna Amudala.
quoted
 #define EXYNOS4_PA_HSMMC(x)          (0x12510000 + ((x) * 0x10000))
 #define EXYNOS4_PA_DWMCI             0x12550000
diff --git a/arch/arm/mach-exynos/mach-exynos5-dt.c b/arch/arm/mach-exynos/mach-exynos5-dt.c
index e707eb1..0d35d31 100644
--- a/arch/arm/mach-exynos/mach-exynos5-dt.c
+++ b/arch/arm/mach-exynos/mach-exynos5-dt.c
@@ -64,6 +64,8 @@ static const struct of_dev_auxdata exynos5250_auxdata_lookup[] __initconst = {
                              "exynos-gsc.2", NULL),
      OF_DEV_AUXDATA("samsung,exynos5-gsc", EXYNOS5_PA_GSC3,
                              "exynos-gsc.3", NULL),
+     OF_DEV_AUXDATA("samsung,exynos5-fimd", EXYNOS5_PA_FIMD,
+                             "exynos5-fb.1", NULL),
      {},
 };

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

[PATCH 1/3] ARM: EXYNOS5: Add fimd node to the exynos5250 dtsi file

From: Jingoo Han <hidden>
Date: 2012-09-20 08:03:11

On Wednesday, September 19, 2012 3:22 AM Leela Krishna Amudala wrote
quoted hunk
This patch adds the fimd node with compatibility string, hardware address,
interrupt line numbers to the exynos5250 dtsi file.

Signed-off-by: Leela Krishna Amudala <redacted>
---
 arch/arm/boot/dts/exynos5250.dtsi |    7 +++++++
 1 files changed, 7 insertions(+), 0 deletions(-)
diff --git a/arch/arm/boot/dts/exynos5250.dtsi b/arch/arm/boot/dts/exynos5250.dtsi
index b55794b..6d27ca4 100644
--- a/arch/arm/boot/dts/exynos5250.dtsi
+++ b/arch/arm/boot/dts/exynos5250.dtsi
@@ -488,4 +488,11 @@
 		reg = <0x13e30000 0x1000>;
 		interrupts = <0 88 0>;
 	};
+
+	fimd {
+		compatible = "samsung,exynos5-drm";
Should it be "samsung,exynos5-fimd"?

+		interrupt-parent = <&combiner>;
+		reg = <0x14400000 0x40000>;
+		interrupts = <18 5>, <18 4>, <18 6>;
+	};
 };
--
1.7.0.4

[PATCH 2/3] ARM: EXYNOS: add device tree based discovery support for FIMD

From: Jingoo Han <hidden>
Date: 2012-09-20 08:23:12

On Thursday, September 20, 2012 2:54 PM Leela Krishna Amudala wrote
Hi Jingoo Han,

On Thu, Sep 20, 2012 at 10:32 AM, Jingoo Han [off-list ref] wrote:
quoted
On Wednesday, September 19, 2012 3:22 AM Leela Krishna Amudala wrote
quoted
This patch adds support for device tree based discovery for Samsung's
display controller. Adds DRM-Fimd plat data for smdk5250
evt1 to the corresponding dts file

Signed-off-by: Leela Krishna Amudala <redacted>
---
 arch/arm/boot/dts/exynos5250-smdk5250.dts |   16 ++++++++++++++++
 arch/arm/mach-exynos/include/mach/map.h   |    1 +
 arch/arm/mach-exynos/mach-exynos5-dt.c    |    2 ++
 3 files changed, 19 insertions(+), 0 deletions(-)
diff --git a/arch/arm/boot/dts/exynos5250-smdk5250.dts b/arch/arm/boot/dts/exynos5250-smdk5250.dts
index 8a5e348..c8d32f5 100644
--- a/arch/arm/boot/dts/exynos5250-smdk5250.dts
+++ b/arch/arm/boot/dts/exynos5250-smdk5250.dts
@@ -109,4 +109,20 @@
      spi_2: spi at 12d40000 {
              status = "disabled";
      };
+
+     lcd_fimd0: lcd_panel0 {
+                     lcd-htiming = <4 4 4 1280>;
+                     lcd-vtiming = <4 4 4 800>;
+                     supports-mipi-panel;
+     };
+
+     fimd {
+             samsung,fimd-display = <&lcd_fimd0>;
+             samsung,fimd-vidout-rgb;
+             samsung,fimd-inv-vclk;
+             samsung,fimd-frame-rate = <60>;
+             samsung,default-window = <0>;
+             samsung,fimd-win-bpp = <32>;
+     };
+
 };
diff --git a/arch/arm/mach-exynos/include/mach/map.h b/arch/arm/mach-exynos/include/mach/map.h
index b2021bd..dd9cea3 100644
--- a/arch/arm/mach-exynos/include/mach/map.h
+++ b/arch/arm/mach-exynos/include/mach/map.h
@@ -174,6 +174,7 @@
 #define EXYNOS4_PA_MIPI_CSIS1                0x11890000

 #define EXYNOS4_PA_FIMD0             0x11C00000
+#define EXYNOS5_PA_FIMD                      0x14400000
CC'ed Thomas Abraham

Please, replace EXYNOS5_PA_FIMD with EXYNOS5_PA_FIMD1.

As I mentioned before, Other Exynos5 SoCs can have 2 FIMD IPs.
Also, Exynos5250 uses FIMD1.
As per Joonyoung Shim's comment on my previous patches I renamed it
from EXYNOS5_PA_FIMD1 to EXYNOS5_PA_FIMD. Will change it in next
version.
Thanks for reviewing the patch set.
Let me explain why FIMD1 is right.

Exynos5 SoCs have 2 FIMD IPs, and its address are 0x13800000
And 0x14400000, respectively. Therefore, if address of FIMD IP
Is 0x14400000, it means FIMD1.

Best regards,
Jingoo Han
Best Wishes,
Leela Krishna Amudala.
quoted
quoted
 #define EXYNOS4_PA_HSMMC(x)          (0x12510000 + ((x) * 0x10000))
 #define EXYNOS4_PA_DWMCI             0x12550000
diff --git a/arch/arm/mach-exynos/mach-exynos5-dt.c b/arch/arm/mach-exynos/mach-exynos5-dt.c
index e707eb1..0d35d31 100644
--- a/arch/arm/mach-exynos/mach-exynos5-dt.c
+++ b/arch/arm/mach-exynos/mach-exynos5-dt.c
@@ -64,6 +64,8 @@ static const struct of_dev_auxdata exynos5250_auxdata_lookup[] __initconst = {
                              "exynos-gsc.2", NULL),
      OF_DEV_AUXDATA("samsung,exynos5-gsc", EXYNOS5_PA_GSC3,
                              "exynos-gsc.3", NULL),
+     OF_DEV_AUXDATA("samsung,exynos5-fimd", EXYNOS5_PA_FIMD,
+                             "exynos5-fb.1", NULL),
      {},
 };

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

[PATCH 1/3] ARM: EXYNOS5: Add fimd node to the exynos5250 dtsi file

From: Leela Krishna Amudala <hidden>
Date: 2012-09-20 09:28:16

Hello,

On Thu, Sep 20, 2012 at 1:33 PM, Jingoo Han [off-list ref] wrote:
On Wednesday, September 19, 2012 3:22 AM Leela Krishna Amudala wrote
quoted
This patch adds the fimd node with compatibility string, hardware address,
interrupt line numbers to the exynos5250 dtsi file.

Signed-off-by: Leela Krishna Amudala <redacted>
---
 arch/arm/boot/dts/exynos5250.dtsi |    7 +++++++
 1 files changed, 7 insertions(+), 0 deletions(-)
diff --git a/arch/arm/boot/dts/exynos5250.dtsi b/arch/arm/boot/dts/exynos5250.dtsi
index b55794b..6d27ca4 100644
--- a/arch/arm/boot/dts/exynos5250.dtsi
+++ b/arch/arm/boot/dts/exynos5250.dtsi
@@ -488,4 +488,11 @@
              reg = <0x13e30000 0x1000>;
              interrupts = <0 88 0>;
      };
+
+     fimd {
+             compatible = "samsung,exynos5-drm";
Should it be "samsung,exynos5-fimd"?
Yes, It is my typo error, it should be "samsung,exynos5-fimd".
Will correct it in next version.
quoted
+             interrupt-parent = <&combiner>;
+             reg = <0x14400000 0x40000>;
+             interrupts = <18 5>, <18 4>, <18 6>;
+     };
 };
--
1.7.0.4
--
To unsubscribe from this list: send the line "unsubscribe linux-samsung-soc" in
the body of a message to majordomo at vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help