<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel/drivers/auxdisplay, branch linux-5.1.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.</subtitle>
<id>https://universe.0xinfinity.dev/distro/kernel/atom?h=linux-5.1.y</id>
<link rel='self' href='https://universe.0xinfinity.dev/distro/kernel/atom?h=linux-5.1.y'/>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/'/>
<updated>2019-03-17T07:48:45Z</updated>
<entry>
<title>auxdisplay: charlcd: make backlight initial state configurable</title>
<updated>2019-03-17T07:48:45Z</updated>
<author>
<name>Mans Rullgard</name>
<email>mans@mansr.com</email>
</author>
<published>2019-03-01T18:48:16Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=cc5d04d840d62d7c75e268c51da7cd0be2ee03c0'/>
<id>urn:sha1:cc5d04d840d62d7c75e268c51da7cd0be2ee03c0</id>
<content type='text'>
The charlcd driver currently flashes the backlight once on init.
This may not be desirable.  Thus, add options for turning the
backlight off or on as well.

Signed-off-by: Mans Rullgard &lt;mans@mansr.com&gt;
Signed-off-by: Miguel Ojeda &lt;miguel.ojeda.sandonis@gmail.com&gt;
</content>
</entry>
<entry>
<title>auxdisplay: charlcd: simplify init message display</title>
<updated>2019-03-17T07:48:39Z</updated>
<author>
<name>Mans Rullgard</name>
<email>mans@mansr.com</email>
</author>
<published>2019-03-01T18:48:15Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=c9171722459fdeab0f27790ae04c0c5a4ae5a9b2'/>
<id>urn:sha1:c9171722459fdeab0f27790ae04c0c5a4ae5a9b2</id>
<content type='text'>
If CONFIG_PANEL_CHANGE_MESSAGE is set, CONFIG_PANEL_BOOT_MESSAGE will
also be defined, so the double ifdef is pointless.  Simplify the code
further by using an intermediate macro rather duplicating most of the
line.

Signed-off-by: Mans Rullgard &lt;mans@mansr.com&gt;
Signed-off-by: Miguel Ojeda &lt;miguel.ojeda.sandonis@gmail.com&gt;
</content>
</entry>
<entry>
<title>auxdisplay: deconfuse configuration</title>
<updated>2019-03-17T07:48:33Z</updated>
<author>
<name>Mans Rullgard</name>
<email>mans@mansr.com</email>
</author>
<published>2019-03-01T18:48:14Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=24c764abfd0d4b6e8e33c3818b668edbb4936d6f'/>
<id>urn:sha1:24c764abfd0d4b6e8e33c3818b668edbb4936d6f</id>
<content type='text'>
The auxdisplay Kconfig is confusing.  It creates two separate menus
even though the settings are closely related.  Moreover, the options
for setting the boot message depend on CONFIG_PARPORT even though they
are used by drivers that do not.

Clear up the confusion by moving the "Parallel port LCD/Keypad" menu
under auxdisplay where it logically belongs.  Change the boot message
options to depend only on CONFIG_CHARLCD, making them accessible also
when only the HD44780 is selected.

Since the "Parallel port LCD/Keypad" driver now has a new dependency
on CONFIG_AUXDISPLAY, rename its Kconfig symbol and keep the old one
such that make oldconfig will not disable the driver.

Signed-off-by: Mans Rullgard &lt;mans@mansr.com&gt;
Signed-off-by: Miguel Ojeda &lt;miguel.ojeda.sandonis@gmail.com&gt;
</content>
</entry>
<entry>
<title>auxdisplay: hd44780: Convert to use charlcd_free()</title>
<updated>2019-03-17T07:48:28Z</updated>
<author>
<name>Andy Shevchenko</name>
<email>andriy.shevchenko@linux.intel.com</email>
</author>
<published>2019-03-12T14:44:32Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=cb79eb95c56fe6afe2baf1df01f22b1bed3f6060'/>
<id>urn:sha1:cb79eb95c56fe6afe2baf1df01f22b1bed3f6060</id>
<content type='text'>
Convert to use charlcd_free() instead of kfree() for sake of type check.

Reviewed-by: Geert Uytterhoeven &lt;geert+renesas@glider.be&gt;
Signed-off-by: Andy Shevchenko &lt;andriy.shevchenko@linux.intel.com&gt;
Signed-off-by: Miguel Ojeda &lt;miguel.ojeda.sandonis@gmail.com&gt;
</content>
</entry>
<entry>
<title>auxdisplay: panel: Convert to use charlcd_free()</title>
<updated>2019-03-17T07:48:22Z</updated>
<author>
<name>Andy Shevchenko</name>
<email>andriy.shevchenko@linux.intel.com</email>
</author>
<published>2019-03-12T14:44:31Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=9b11d63966fc70b5496013bb211fa9025cd1ad61'/>
<id>urn:sha1:9b11d63966fc70b5496013bb211fa9025cd1ad61</id>
<content type='text'>
Convert to use charlcd_free() instead of kfree() for sake of type check.

Reviewed-by: Geert Uytterhoeven &lt;geert+renesas@glider.be&gt;
Signed-off-by: Andy Shevchenko &lt;andriy.shevchenko@linux.intel.com&gt;
Signed-off-by: Miguel Ojeda &lt;miguel.ojeda.sandonis@gmail.com&gt;
</content>
</entry>
<entry>
<title>auxdisplay: charlcd: Introduce charlcd_free() helper</title>
<updated>2019-03-17T07:48:16Z</updated>
<author>
<name>Andy Shevchenko</name>
<email>andriy.shevchenko@linux.intel.com</email>
</author>
<published>2019-03-12T14:44:30Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=8e44fc85060ec997e9c6f3c49a04274db6621d26'/>
<id>urn:sha1:8e44fc85060ec997e9c6f3c49a04274db6621d26</id>
<content type='text'>
The charlcd_free() is a counterpart to charlcd_alloc()
and should be called symmetrically on tear down.

Reviewed-by: Geert Uytterhoeven &lt;geert+renesas@glider.be&gt;
Signed-off-by: Andy Shevchenko &lt;andriy.shevchenko@linux.intel.com&gt;
Signed-off-by: Miguel Ojeda &lt;miguel.ojeda.sandonis@gmail.com&gt;
</content>
</entry>
<entry>
<title>auxdisplay: charlcd: Move to_priv() to charlcd namespace</title>
<updated>2019-03-17T07:48:10Z</updated>
<author>
<name>Andy Shevchenko</name>
<email>andriy.shevchenko@linux.intel.com</email>
</author>
<published>2019-03-12T14:44:29Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=b658a2113ba4d4b99e2a57926379b0c0b0c648ab'/>
<id>urn:sha1:b658a2113ba4d4b99e2a57926379b0c0b0c648ab</id>
<content type='text'>
In order to be more particular in names, rename to_priv() macro
to charlcd_to_priv().

No functional change intended.

Reviewed-by: Geert Uytterhoeven &lt;geert+renesas@glider.be&gt;
Signed-off-by: Andy Shevchenko &lt;andriy.shevchenko@linux.intel.com&gt;
Signed-off-by: Miguel Ojeda &lt;miguel.ojeda.sandonis@gmail.com&gt;
</content>
</entry>
<entry>
<title>auxdisplay: hd44780: Fix memory leak on -&gt;remove()</title>
<updated>2019-03-17T07:48:04Z</updated>
<author>
<name>Andy Shevchenko</name>
<email>andriy.shevchenko@linux.intel.com</email>
</author>
<published>2019-03-12T14:44:28Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=41c8d0adf3c4df1867d98cee4a2c4531352a33ad'/>
<id>urn:sha1:41c8d0adf3c4df1867d98cee4a2c4531352a33ad</id>
<content type='text'>
We have to free on -&gt;remove() the allocated resources on -&gt;probe().

Fixes: d47d88361fee ("auxdisplay: Add HD44780 Character LCD support")
Reviewed-by: Geert Uytterhoeven &lt;geert+renesas@glider.be&gt;
Signed-off-by: Andy Shevchenko &lt;andriy.shevchenko@linux.intel.com&gt;
Signed-off-by: Miguel Ojeda &lt;miguel.ojeda.sandonis@gmail.com&gt;
</content>
</entry>
<entry>
<title>auxdisplay: ht16k33: fix potential user-after-free on module unload</title>
<updated>2019-02-15T18:48:39Z</updated>
<author>
<name>Miguel Ojeda</name>
<email>miguel.ojeda.sandonis@gmail.com</email>
</author>
<published>2019-02-08T23:38:45Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=69ef9bc54715fb1cb7786ada15774e469e822209'/>
<id>urn:sha1:69ef9bc54715fb1cb7786ada15774e469e822209</id>
<content type='text'>
On module unload/remove, we need to ensure that work does not run
after we have freed resources. Concretely, cancel_delayed_work()
may return while the callback function is still running.

From kernel/workqueue.c:

    The work callback function may still be running on return,
    unless it returns true and the work doesn't re-arm itself.
    Explicitly flush or use cancel_delayed_work_sync() to wait on it.

Link: https://lore.kernel.org/lkml/20190204220952.30761-1-TheSven73@googlemail.com/
Reported-by: Sven Van Asbroeck &lt;thesven73@gmail.com&gt;
Reviewed-by: Dmitry Torokhov &lt;dmitry.torokhov@gmail.com&gt;
Reviewed-by: Sven Van Asbroeck &lt;TheSven73@gmail.com&gt;
Acked-by: Robin van der Gracht &lt;robin@protonic.nl&gt;
Signed-off-by: Miguel Ojeda &lt;miguel.ojeda.sandonis@gmail.com&gt;
</content>
</entry>
<entry>
<title>auxdisplay: charlcd: fix x/y command parsing</title>
<updated>2018-12-21T20:27:21Z</updated>
<author>
<name>Mans Rullgard</name>
<email>mans@mansr.com</email>
</author>
<published>2018-12-05T13:52:47Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=9bc30ab82108e6a34dc63bf956b49edf71b1681a'/>
<id>urn:sha1:9bc30ab82108e6a34dc63bf956b49edf71b1681a</id>
<content type='text'>
The x/y command parsing has been broken since commit 129957069e6a
("staging: panel: Fixed checkpatch warning about simple_strtoul()").

Commit b34050fadb86 ("auxdisplay: charlcd: Fix and clean up handling of
x/y commands") fixed some problems by rewriting the parsing code,
but also broke things further by removing the check for a complete
command before attempting to parse it.  As a result, parsing is
terminated at the first x or y character.

This reinstates the check for a final semicolon.  Whereas the original
code use strchr(), this is wasteful seeing as the semicolon is always
at the end of the buffer.  Thus check this character directly instead.

Signed-off-by: Mans Rullgard &lt;mans@mansr.com&gt;
Signed-off-by: Miguel Ojeda &lt;miguel.ojeda.sandonis@gmail.com&gt;
</content>
</entry>
</feed>
