<feed xmlns='http://www.w3.org/2005/Atom'>
<title>BMC/Intel-BMC/linux.git/drivers/video/fbdev/ssd1307fb.c, branch dev</title>
<subtitle>Intel OpenBMC Linux kernel source tree (mirror)</subtitle>
<id>https://git.radix-linux.su/BMC/Intel-BMC/linux.git/atom?h=dev</id>
<link rel='self' href='https://git.radix-linux.su/BMC/Intel-BMC/linux.git/atom?h=dev'/>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/BMC/Intel-BMC/linux.git/'/>
<updated>2015-05-27T09:54:48+00:00</updated>
<entry>
<title>fbdev: ssd1307fb: fix logical error</title>
<updated>2015-05-27T09:54:48+00:00</updated>
<author>
<name>Thomas Niederprüm</name>
<email>niederp@physik.uni-kl.de</email>
</author>
<published>2015-05-25T19:29:21+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/BMC/Intel-BMC/linux.git/commit/?id=5e47932be81e860d317498363c13153e7df37625'/>
<id>urn:sha1:5e47932be81e860d317498363c13153e7df37625</id>
<content type='text'>
The logical not needs to be done after the bit masking.

Fixes: a3998fe03e87 ("fbdev: ssd1307fb: Unify init code and obtain
hw specific bits from DT")

Signed-off-by: Thomas Niederprüm &lt;niederp@physik.uni-kl.de&gt;
Reported-by: Dan Carpenter &lt;dan.carpenter@oracle.com&gt;
Signed-off-by: Tomi Valkeinen &lt;tomi.valkeinen@ti.com&gt;
</content>
</entry>
<entry>
<title>fbdev: ssd1307fb: potential ERR_PTR dereference</title>
<updated>2015-05-27T09:54:46+00:00</updated>
<author>
<name>Dan Carpenter</name>
<email>dan.carpenter@oracle.com</email>
</author>
<published>2015-05-23T17:32:35+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/BMC/Intel-BMC/linux.git/commit/?id=c2b00024bc6f3408b0facc87227383e633131900'/>
<id>urn:sha1:c2b00024bc6f3408b0facc87227383e633131900</id>
<content type='text'>
The error handling got shifted down a few lines from where it was
supposed to be for some reason.

Fixes: a14a7ba8cb0f ('fbdev: ssd1307fb: add backlight controls for setting the contrast')
Signed-off-by: Dan Carpenter &lt;dan.carpenter@oracle.com&gt;
Acked-by: Maxime Ripard &lt;maxime.ripard@free-electrons.com&gt;
Signed-off-by: Tomi Valkeinen &lt;tomi.valkeinen@ti.com&gt;
</content>
</entry>
<entry>
<title>fbdev: ssd1307fb: Add blank mode</title>
<updated>2015-05-27T09:54:39+00:00</updated>
<author>
<name>Thomas Niederprüm</name>
<email>niederp@physik.uni-kl.de</email>
</author>
<published>2015-03-31T18:27:16+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/BMC/Intel-BMC/linux.git/commit/?id=550e768c2a9932e037f2148ecddecd8a5ee0f26e'/>
<id>urn:sha1:550e768c2a9932e037f2148ecddecd8a5ee0f26e</id>
<content type='text'>
This patch adds ssd1307fb_blank() to make the framebuffer capable
of blanking.

Signed-off-by: Thomas Niederprüm &lt;niederp@physik.uni-kl.de&gt;
Signed-off-by: Tomi Valkeinen &lt;tomi.valkeinen@ti.com&gt;
</content>
</entry>
<entry>
<title>fbdev: ssd1307fb: add backlight controls for setting the contrast</title>
<updated>2015-05-27T09:54:37+00:00</updated>
<author>
<name>Thomas Niederprüm</name>
<email>niederp@physik.uni-kl.de</email>
</author>
<published>2015-03-31T18:27:15+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/BMC/Intel-BMC/linux.git/commit/?id=6ed5e2db52b1e27a70241ef8749780f6f5d553bf'/>
<id>urn:sha1:6ed5e2db52b1e27a70241ef8749780f6f5d553bf</id>
<content type='text'>
The backlight class is used to create userspace handles for
setting the OLED contrast.

Signed-off-by: Thomas Niederprüm &lt;niederp@physik.uni-kl.de&gt;
Acked-by: Maxime Ripard &lt;maxime.ripard@free-electrons.com&gt;
Signed-off-by: Tomi Valkeinen &lt;tomi.valkeinen@ti.com&gt;
</content>
</entry>
<entry>
<title>fbdev: ssd1307fb: Turn off display on driver unload.</title>
<updated>2015-05-27T09:54:35+00:00</updated>
<author>
<name>Thomas Niederprüm</name>
<email>niederp@physik.uni-kl.de</email>
</author>
<published>2015-03-31T18:27:14+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/BMC/Intel-BMC/linux.git/commit/?id=13bad59730c31e876588977534b6b6a46ce876ae'/>
<id>urn:sha1:13bad59730c31e876588977534b6b6a46ce876ae</id>
<content type='text'>
This patch turns off the display when the driver is unloaded.

Signed-off-by: Thomas Niederprüm &lt;niederp@physik.uni-kl.de&gt;
Acked-by: Maxime Ripard &lt;maxime.ripard@free-electrons.com&gt;
Signed-off-by: Tomi Valkeinen &lt;tomi.valkeinen@ti.com&gt;
</content>
</entry>
<entry>
<title>fbdev: ssd1307fb: Add a module parameter to set the refresh rate</title>
<updated>2015-05-27T09:54:32+00:00</updated>
<author>
<name>Thomas Niederprüm</name>
<email>niederp@physik.uni-kl.de</email>
</author>
<published>2015-03-31T18:27:13+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/BMC/Intel-BMC/linux.git/commit/?id=3277e0bb8fc737174bd5e2fae5598b1595cfcdbe'/>
<id>urn:sha1:3277e0bb8fc737174bd5e2fae5598b1595cfcdbe</id>
<content type='text'>
This patch adds the module parameter "refreshrate" to set delay for the
deferred io. The refresh rate is given in units of Hertz. The default
refresh rate is 1 Hz. The refresh rate set through the newly introduced
parameter applies to all instances of the driver and for now it is not
possible to change it individually.

Signed-off-by: Thomas Niederprüm &lt;niederp@physik.uni-kl.de&gt;
Acked-by: Maxime Ripard &lt;maxime.ripard@free-electrons.com&gt;
Signed-off-by: Tomi Valkeinen &lt;tomi.valkeinen@ti.com&gt;
</content>
</entry>
<entry>
<title>fbdev: ssd1307fb: Add support for SSD1305</title>
<updated>2015-05-27T09:54:19+00:00</updated>
<author>
<name>Thomas Niederprüm</name>
<email>niederp@physik.uni-kl.de</email>
</author>
<published>2015-03-31T18:27:12+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/BMC/Intel-BMC/linux.git/commit/?id=5f2d36b3cf629ae1d70ee8476599ff53f0d1d1f1'/>
<id>urn:sha1:5f2d36b3cf629ae1d70ee8476599ff53f0d1d1f1</id>
<content type='text'>
This patch adds support for the SSD1305 OLED controller.

Signed-off-by: Thomas Niederprüm &lt;niederp@physik.uni-kl.de&gt;
Acked-by: Maxime Ripard &lt;maxime.ripard@free-electrons.com&gt;
Signed-off-by: Tomi Valkeinen &lt;tomi.valkeinen@ti.com&gt;
</content>
</entry>
<entry>
<title>fbdev: ssd1307fb: Unify init code and obtain hw specific bits from DT</title>
<updated>2015-05-27T09:53:44+00:00</updated>
<author>
<name>Thomas Niederprüm</name>
<email>niederp@physik.uni-kl.de</email>
</author>
<published>2015-03-31T18:27:10+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/BMC/Intel-BMC/linux.git/commit/?id=c89eacfc700675912b53df770953c30930c2554f'/>
<id>urn:sha1:c89eacfc700675912b53df770953c30930c2554f</id>
<content type='text'>
The 130X controllers are very similar from the configuration point of view.
The configuration registers for the SSD1305/6/7 are bit identical (except the
the VHCOM register and the the default values for clock setup register). This
patch unifies the init code of the controller and adds hardware specific
properties to DT that are needed to correctly initialize the device.

The SSD130X can be wired to the OLED panel in various ways. Even for the
same controller this wiring can differ from one display module to another
and can not be probed by software. The added DT properties reflect these
hardware decisions of the display module manufacturer.
The 'com-sequential', 'com-lrremap' and 'com-invdir' values define different
possibilities for the COM signals pin configuration and readout direction
of the video memory. The 'segment-no-remap' allows the inversion of the
memory-to-pin mapping ultimately inverting the order of the controllers
output pins. The 'prechargepX' values need to be adapted according to the
capacitance of the OLEDs pixel cells.

So far these hardware specific bits are hard coded in the init code, making
the driver usable only for one certain wiring of the controller. This patch
makes the driver usable with all possible hardware setups, given a valid hw
description in DT. If these values are not set in DT the default values,
as they are set in the ssd1307 init code right now, are used. This implies
that without the corresponding DT property "segment-no-remap" the segment
remap of the ssd130X controller gets activated. Even though this is not the
default behaviour according to the datasheet it maintains backward
compatibility with older DTBs.

Note that the SSD1306 does not seem to be using the configuration written to
the registers at all. Therefore this patch does not try to maintain these
values without changes in DT. For reference an example is added to the DT
bindings documentation that reproduces the configuration that is set in the
current init code.

Signed-off-by: Thomas Niederprüm &lt;niederp@physik.uni-kl.de&gt;
Tested-by: Olliver Schinagl &lt;o.schinagl@ultimaker.com&gt;
Acked-by: Maxime Ripard &lt;maxime.ripard@free-electrons.com&gt;
Signed-off-by: Tomi Valkeinen &lt;tomi.valkeinen@ti.com&gt;
</content>
</entry>
<entry>
<title>fbdev: ssd1307fb: Allocate page aligned video memory.</title>
<updated>2015-05-27T09:53:21+00:00</updated>
<author>
<name>Thomas Niederprüm</name>
<email>niederp@physik.uni-kl.de</email>
</author>
<published>2015-03-31T18:27:08+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/BMC/Intel-BMC/linux.git/commit/?id=facd94bc458af12e1ebab06cfc3b8e7a41906622'/>
<id>urn:sha1:facd94bc458af12e1ebab06cfc3b8e7a41906622</id>
<content type='text'>
Currently the videomemory is allocated by kmalloc, making it a memory
region that is not necessarily page aligend. This leads to problems
upon mmap call, where the video memory's address gets aligned to the
next page boundary. The result is that the userspace program that issued
the mmap call is not able to access the video memory from the start to
the next page boundary.

This patch changes the allocation of the video memory to use
__get_free_pages() in order to obtain memory that is aligned
to page boundaries.

Signed-off-by: Thomas Niederprüm &lt;niederp@physik.uni-kl.de&gt;
Acked-by: Maxime Ripard &lt;maxime.ripard@free-electrons.com&gt;
Signed-off-by: Tomi Valkeinen &lt;tomi.valkeinen@ti.com&gt;
</content>
</entry>
<entry>
<title>fbdev: ssd1307fb: fix memory address smem_start.</title>
<updated>2015-05-27T09:53:16+00:00</updated>
<author>
<name>Thomas Niederprüm</name>
<email>niederp@physik.uni-kl.de</email>
</author>
<published>2015-03-31T18:27:07+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/BMC/Intel-BMC/linux.git/commit/?id=258c0ea21d3aa974b43e5ce6c2f7c94553a3b1cc'/>
<id>urn:sha1:258c0ea21d3aa974b43e5ce6c2f7c94553a3b1cc</id>
<content type='text'>
the smem_start pointer of the framebuffer info struct needs to hold the
physical address rather than the logical address. Right now the logical
address returned by kmalloc is stored. This patch converts this address
to a physical address and thus fixes a driver crash on mmaping the
framebuffer memory due to an access to the wrong memory address.

Signed-off-by: Thomas Niederprüm &lt;niederp@physik.uni-kl.de&gt;
Acked-by: Maxime Ripard &lt;maxime.ripard@free-electrons.com&gt;
Signed-off-by: Tomi Valkeinen &lt;tomi.valkeinen@ti.com&gt;
</content>
</entry>
</feed>
