Skip to contentSkip to conversation

omap-fb: add driver

PATCH In review Christoph Fritz 2 participants 4 messages Jun 19, 2013 – Jun 24, 2013

Subsystems (3)
lore
Share & tools
lore
#0 lore raw

PATCH 1/2 omap-fb: add driver

This patch adds omap display controller support. Currently only OMAP4 DSS is supported.

---
 drivers/video/Kconfig  |    8 +
 drivers/video/Makefile |    1 +
 drivers/video/omap.c   |  524 ++++++++++++++++++++++++++++++++++++++++++++++++
 drivers/video/omap.h   |  187 +++++++++++++++++
 4 files changed, 720 insertions(+)
 create mode 100644 drivers/video/omap.c
 create mode 100644 drivers/video/omap.h
drivers/video/Kconfig +8 -0
index 6d6b08f..0639d9c 100644
@@ -45,6 +45,14 @@ config DRIVER_VIDEO_S3C24XX
 	help
 	  Add support for the S3C244x LCD controller.
 
+config DRIVER_VIDEO_OMAP
+	bool "OMAP framebuffer driver"
+	depends on ARCH_OMAP4
+	help
+	  Add support for OMAP Display Controller. Currently this
+	  driver only supports OMAP4 SoCs in DISPC parallel mode on
+	  LCD2 (MIPI DPI).
+
 if DRIVER_VIDEO_S3C24XX
 
 config DRIVER_VIDEO_S3C_VERBOSE
drivers/video/Makefile +1 -0
index 7429141..67169d1 100644
@@ -8,3 +8,4 @@ obj-$(CONFIG_DRIVER_VIDEO_IMX_IPU) += imx-ipu-fb.o
 obj-$(CONFIG_DRIVER_VIDEO_S3C24XX) += s3c24xx.o
 obj-$(CONFIG_DRIVER_VIDEO_PXA) += pxa.o
 obj-$(CONFIG_DRIVER_VIDEO_SDL) += sdl.o
+obj-$(CONFIG_DRIVER_VIDEO_OMAP) += omap.o
drivers/video/omap.c new file +524 -0

524 lines not on this page · raw message

drivers/video/omap.h new file +187 -0

187 lines not on this page · raw message

Signature · 9 lines
1.7.10.4




_______________________________________________
barebox mailing list
[email protected]
http://lists.infradead.org/mailman/listinfo/barebox
#1 lore raw

PATCH 2/2 ARM omap-fb: add board helper code

This patch adds OMAP machine dependent framebuffer code so that board files can make use of driver omap-fb.

---
 arch/arm/mach-omap/Makefile               |    2 +-
 arch/arm/mach-omap/include/mach/omap-fb.h |   47 +++++++++++++++++++++++++++++
 arch/arm/mach-omap/omap_fb.c              |   34 +++++++++++++++++++++
 3 files changed, 82 insertions(+), 1 deletion(-)
 create mode 100644 arch/arm/mach-omap/include/mach/omap-fb.h
 create mode 100644 arch/arm/mach-omap/omap_fb.c
arch/arm/mach-omap/Makefile +1 -1
index 94e42c6..bc5daab 100644
@@ -15,7 +15,7 @@
 # GNU General Public License for more details.
 #
 #
-obj-$(CONFIG_ARCH_OMAP) += syslib.o omap_devices.o
+obj-$(CONFIG_ARCH_OMAP) += syslib.o omap_devices.o omap_fb.o
 pbl-$(CONFIG_ARCH_OMAP) += syslib.o
 obj-$(CONFIG_OMAP_CLOCK_SOURCE_S32K) += s32k_clksource.o
 obj-$(CONFIG_OMAP_CLOCK_SOURCE_DMTIMER0) += dmtimer0.o
arch/arm/mach-omap/include/mach/omap-fb.h new file +47 -0

47 lines not on this page · raw message

arch/arm/mach-omap/omap_fb.c new file +34 -0
new file mode 100644
index 0000000..ae318d8
@@ -0,0 +1,34 @@
+#include <driver.h>
+#include <common.h>
+#include <linux/ioport.h>
+#include <mach/omap-fb.h>
+
+#if defined(CONFIG_DRIVER_VIDEO_OMAP)
+static struct resource omapfb_resources[] = {
+	{
+		.name	= "omap4_dss",
+		.start	= 0x48040000,
+		.end	= 0x48040000 + 512 - 1,
+		.flags	= IORESOURCE_MEM | IORESOURCE_MEM_32BIT,
+	}, {
+		.name	= "omap4_dispc",
+		.start	= 0x48041000,
+		.end	= 0x48041000 + 3072 - 1,
+		.flags	= IORESOURCE_MEM | IORESOURCE_MEM_32BIT,
+	},
+};
+
+struct device_d *omap_add_display(struct omapfb_platform_data *o_pdata)
+{
+	return add_generic_device_res("omap_fb", -1,
+				      omapfb_resources,
+				      ARRAY_SIZE(omapfb_resources),
+				      o_pdata);
+}
+#else
+struct device_d *omap_add_display(struct omapfb_platform_data *o_pdata)
+{
+	return NULL;
+}
+#endif
+EXPORT_SYMBOL(omap_add_display);
Signature · 9 lines
1.7.10.4




_______________________________________________
barebox mailing list
[email protected]
http://lists.infradead.org/mailman/listinfo/barebox
#2 lore raw
In reply to Christoph Fritz
Quoted 2 lines · Christoph Fritz

This patch adds omap display controller support. Currently only OMAP4 DSS is supported.

Any objections here?

These are the changes in the review-process so far:

changes since v2:
- use dev_request_mem_region_by_name()
changes since v3:
- remove register struct
- use uncached screen_base
changes since v4:
- remove useless dev_add_param()
- use wait_on_timeout() instead while-deadlock
changes since v5:
- use dev_dbg() and dev_err(), be less verbose
- fix coding-style issues
- add omap4fb_find_display_by_name()
- add additional read/write macros
changes since v6:
- split driver into two commits
- rename driver to "omap-fb"

Thanks
-- Christoph

_______________________________________________
barebox mailing list
[email protected]
http://lists.infradead.org/mailman/listinfo/barebox

#3 lore raw
Quoted 5 lines · Christoph Fritz
Quoted 2 lines · Christoph Fritz

This patch adds omap display controller support. Currently only OMAP4 DSS is supported.

Any objections here?

Oh, sorry, I missed this last version. Applied now

Thanks
Sascha

Quoted 24 lines

These are the changes in the review-process so far:

changes since v2:
- use dev_request_mem_region_by_name()
changes since v3:
- remove register struct
- use uncached screen_base
changes since v4:
- remove useless dev_add_param()
- use wait_on_timeout() instead while-deadlock
changes since v5:
- use dev_dbg() and dev_err(), be less verbose
- fix coding-style issues
- add omap4fb_find_display_by_name()
- add additional read/write macros
changes since v6:
- split driver into two commits
- rename driver to "omap-fb"

Thanks
-- Christoph

Signature · 9 lines
Pengutronix e.K.                           |                             |
Industrial Linux Solutions                 | http://www.pengutronix.de/  |
Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0    |
Amtsgericht Hildesheim, HRA 2686           | Fax:   +49-5121-206917-5555 |

_______________________________________________
barebox mailing list
[email protected]
http://lists.infradead.org/mailman/listinfo/barebox