Skip to contentSkip to conversation

video: Versatile Express DVI output driver

PATCH Superseded Pawel Moll 2 participants 7 messages Oct 16, 2012 – Dec 12, 2012

Subsystems (2)
lore
Share & tools
lore

Pawel Moll

author
#0 lore raw

PATCH v3 1/1 video: Versatile Express DVI output driver

Versatile Express' DVI video output can be connected to one the three sources - motherboard's CLCD controller or a video signal generated by one of the daughterboards.

This driver configures the muxer FPGA so the output displays content of one of the framebuffers in the system (0 by default, can be changed by user writing to the "fb" sysfs attribute of the muxfpga device).

It will also set up the display formatter mode and keep it up to date with mode changes requested by the user (eg. with fbset tool).

---
 drivers/video/Makefile       |    3 +
 drivers/video/vexpress-dvi.c |  220 ++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 223 insertions(+)
 create mode 100644 drivers/video/vexpress-dvi.c

Hi Florian,

This is pretty much the same stuff I posted a month ago... Other relevant changes are on their way to 3.8.

Would you be so kind and have a look at it? If the code looks fine, would you prefer to merge it yourself, or should I push it through arm-soc tree?

Thanks!

Pawel

drivers/video/Makefile +3 -0
index 23e948e..2f4440d 100644
@@ -167,3 +167,6 @@ obj-$(CONFIG_FB_VIRTUAL)          += vfb.o
 
 #video output switch sysfs driver
 obj-$(CONFIG_VIDEO_OUTPUT_CONTROL) += output.o
+
+# platform specific output drivers
+obj-$(CONFIG_VEXPRESS_CONFIG)	  += vexpress-dvi.o
drivers/video/vexpress-dvi.c new file +220 -0

220 lines not on this page · raw message

Signature · 1 line
1.7.9.5
author
#1 lore raw

PATCH v3 1/1 video: Versatile Express DVI output driver

Hello again Florian,

Quoted 8 lines · Pawel Moll

Versatile Express' DVI video output can be connected to one the three sources - motherboard's CLCD controller or a video signal generated by one of the daughterboards.

This driver configures the muxer FPGA so the output displays content of one of the framebuffers in the system (0 by default, can be changed by user writing to the "fb" sysfs attribute of the muxfpga device).

Quoted 5 lines

It will also set up the display formatter mode and keep it up to date with mode changes requested by the user (eg. with fbset tool).

It's just a polite a friendly nag regarding this patch - it's been 2 weeks since I posted this version (and 1.5 month since the first one)...

Does it look good enough or completely wrong?

Cheers!

Pawe?

author
#2 lore raw

PATCH v3 1/1 video: Versatile Express DVI output driver

Hi Arnd, Olof,

One of the important parts of the VE update is the display muxer driver...

Quoted 15 lines · Pawel Moll

Hello again Florian,

Quoted 12 lines · Pawel Moll

Versatile Express' DVI video output can be connected to one the three sources - motherboard's CLCD controller or a video signal generated by one of the daughterboards.

This driver configures the muxer FPGA so the output displays content of one of the framebuffers in the system (0 by default, can be changed by user writing to the "fb" sysfs attribute of the muxfpga device).

It will also set up the display formatter mode and keep it up to date with mode changes requested by the user (eg. with fbset tool).

Quoted 6 lines
Quoted 1 line

It's just a polite a friendly nag regarding this patch - it's been 2 weeks since I posted this version (and 1.5 month since the first one)...

Does it look good enough or completely wrong?

I've asked the framebuffer people 3 times about this but got no comment whatsoever:

https://patchwork.kernel.org/patch/1473091/
https://patchwork.kernel.org/patch/1601781/

so I assume there is no problem with merging this code ;-) Therefore, would you be so kind to pull this single patch? Without it the 3.8 kernel will not be able to show anything on VE's display...

The following changes since commit f4a75d2eb7b1e2206094b901be09adb31ba63681:

Linux 3.7-rc6 (2012-11-16 17:42:40 -0800)

are available in the git repository at:

git://git.linaro.org/people/pawelmoll/linux.git vexpress-drivers2

for you to fetch changes up to 357e174056d44c6614afec6c5ace1c2aea2ef0bb:

video: Versatile Express DVI output driver (2012-11-19 11:12:40 +0000)

This is the very last thing for 3.8 merge window from me.

Thanks and regards

Pawe?

#3 lore raw

PATCH v3 1/1 video: Versatile Express DVI output driver

Quoted 9 lines · Pawel Moll

I've asked the framebuffer people 3 times about this but got no comment whatsoever:

https://patchwork.kernel.org/patch/1473091/
https://patchwork.kernel.org/patch/1601781/

so I assume there is no problem with merging this code ;-) Therefore, would you be so kind to pull this single patch? Without it the 3.8 kernel will not be able to show anything on VE's display...

Hi Pawel,

I have two comments for the patch that need to be fixed:

* vexpress_dvi_fb_select uses the 'fb' argument as an index into the registered_fb array, but does not check for overflow against FB_MAX. I think you need to use get_fb_info().

* There is no documentation for the newly introduced sysfs interface.

Arnd

author
#4 lore raw

PATCH v3 1/1 video: Versatile Express DVI output driver

Quoted 3 lines · Arnd Bergmann

* vexpress_dvi_fb_select uses the 'fb' argument as an index into the registered_fb array, but does not check for overflow against FB_MAX.

Uh, right. Will fix in a second.

Quoted 1 line

I think you need to use get_fb_info().

I was considering this, but it's a static. And I don't want to change the fb core, as I'm planning to plug this driver into the "Generic Panel/Display Framework" [1] that Laurent is working on when it's available. Then I won't have to hack into the core at all...

[1] http://thread.gmane.org/gmane.linux.drivers.video-input-infrastructure/52565

Quoted 1 line

* There is no documentation for the newly introduced sysfs interface.

Hm, I didn't want to do that, as it's currently just a debug feature - there is no class symlink to the device available (Documentation/ABI/testing/sysfs-devices) so there's no universal way of describing the path to the device.

I'll do my best and post v4 soon.

Pawe?

author
#5 lore raw

PATCH v4 1/1 video: Versatile Express DVI output driver

Versatile Express' DVI video output can be connected to one the three sources - motherboard's CLCD controller or a video signal generated by one of the daughterboards.

This driver configures the muxer FPGA so the output displays content of one of the framebuffers in the system (0 by default, can be changed by user writing to the "fb" sysfs attribute of the muxfpga device).

It will also set up the display formatter mode and keep it up to date with mode changes requested by the user (eg. with fbset tool).

---
 .../ABI/testing/sysfs-driver-video-vexpress-dvi.c  |    5 +
 drivers/video/Makefile                             |    3 +
 drivers/video/vexpress-dvi.c                       |  223 ++++++++++++++++++++
 3 files changed, 231 insertions(+)
 create mode 100644 Documentation/ABI/testing/sysfs-driver-video-vexpress-dvi.c
 create mode 100644 drivers/video/vexpress-dvi.c
Documentation/ABI/testing/sysfs-driver-video-vexpress-dvi.c new file +5 -0
new file mode 100644
index 0000000..4835e09
@@ -0,0 +1,5 @@
+What:		/sys/bus/platform/drivers/vexpress-dvi/<muxfpga device>/fb
+Date:		November 2012
+Contant:	Pawel Moll <[email protected]>
+Description:	This file stores the number of the framebuffer which is
+		supposed to be routed to the board's DVI output.
drivers/video/Makefile +3 -0
index 23e948e..2f4440d 100644
@@ -167,3 +167,6 @@ obj-$(CONFIG_FB_VIRTUAL)          += vfb.o
 
 #video output switch sysfs driver
 obj-$(CONFIG_VIDEO_OUTPUT_CONTROL) += output.o
+
+# platform specific output drivers
+obj-$(CONFIG_VEXPRESS_CONFIG)	  += vexpress-dvi.o
drivers/video/vexpress-dvi.c new file +223 -0

223 lines not on this page · raw message

Signature · 1 line
1.7.10.4
author
#6 lore raw

PATCH v4 1/1 video: Versatile Express DVI output driver

Hi Arnd,

Quoted 8 lines · Pawel Moll

Versatile Express' DVI video output can be connected to one the three sources - motherboard's CLCD controller or a video signal generated by one of the daughterboards.

This driver configures the muxer FPGA so the output displays content of one of the framebuffers in the system (0 by default, can be changed by user writing to the "fb" sysfs attribute of the muxfpga device).

Quoted 5 lines

It will also set up the display formatter mode and keep it up to date with mode changes requested by the user (eg. with fbset tool).

Could I just politely remind about this one?

Pawe?