From: "Jean-François Lessard" <jefflessard3@gmail.com>
To: Andy Shevchenko <andy@kernel.org>,
Geert Uytterhoeven <geert@linux-m68k.org>
Cc: linux-kernel@vger.kernel.org
Subject: [PATCH v2 0/5] auxdisplay: linedisp: support attribute attachment to auxdisplay devices
Date: Thu, 18 Sep 2025 08:13:10 -0400 [thread overview]
Message-ID: <20250918121321.116248-1-jefflessard3@gmail.com> (raw)
This series modernizes the auxdisplay line display (linedisp) library to
enable seamless integration with auxdisplay parent devices while
maintaining backward compatibility.
The key improvement is adding attach/detach APIs that allow linedisp sysfs
attributes to be bound directly to their parent auxdisplay devices avoiding
child device proliferation and enabling a uniform 7-segment userspace
interface across different driver architectures.
This series introduces attachment infrastructure for linedisp devices.
The first consumer of this API will be the TM16XX driver series.
See the related patch series:
auxdisplay: Add TM16xx 7-segment LED matrix display controllers driver
Changes include:
1. Encapsulate container_of() usage with to_linedisp() helper function for
cleaner context retrieval
2. Improve message display behavior with static padding when message length
is smaller than display width
3. Add 'num_chars' read-only attribute for userspace capability discovery
4. Add attach/detach API for sysfs attributes binding to parent devices
5. Document all linedisp sysfs attributes in ABI documentation
All existing linedisp_register() users remain unaffected. The new APIs
enable drivers like TM16XX to integrate 7-segment functionality within
their LED class device hierarchy while providing a uniform 7-segment API.
Thanks to Andy Shevchenko for early feedback and guidance.
V1 changelog:
- Remove should_scroll() check in linedisp_scroll()
- Keep attributes sorted alphabetically
- Document, invert logic and rename owns_device to direct
- Document linedisp_attach()/_register() must be freed by their
respective APIs after use
- Change call order of display default message and add attributes
to prevent racy userspace condition
- Separate delete_attachment() call from linedisp variable declaration
- Document existing attributes separately, in the first patch
RFC changelog:
- Replace scope_guard() with guard()() for synchronized list operations.
- Replace NULL assignments with proper list_entry_is_head() pattern.
- Clearly document why introducing the attach/detach APIs.
- Split in patch series, each patch containing a specific change.
- Implement static (non-scrolling) display for short messages.
- Document exisiting and new ABI sysfs attributes.
Jean-François Lessard (5):
docs: ABI: auxdisplay: document linedisp library sysfs attributes
auxdisplay: linedisp: encapsulate container_of usage within
to_linedisp
auxdisplay: linedisp: display static message when length <= display
size
auxdisplay: linedisp: add num_chars sysfs attribute
auxdisplay: linedisp: support attribute attachment to auxdisplay
devices
.../ABI/testing/sysfs-auxdisplay-linedisp | 90 +++++++
drivers/auxdisplay/line-display.c | 240 ++++++++++++++++--
drivers/auxdisplay/line-display.h | 4 +
3 files changed, 312 insertions(+), 22 deletions(-)
create mode 100644 Documentation/ABI/testing/sysfs-auxdisplay-linedisp
--
2.43.0
next reply other threads:[~2025-09-18 12:13 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-09-18 12:13 Jean-François Lessard [this message]
2025-09-18 12:13 ` [PATCH v2 1/5] docs: ABI: auxdisplay: document linedisp library sysfs attributes Jean-François Lessard
2025-09-18 12:13 ` [PATCH v2 2/5] auxdisplay: linedisp: encapsulate container_of usage within to_linedisp Jean-François Lessard
2025-09-18 12:13 ` [PATCH v2 3/5] auxdisplay: linedisp: display static message when length <= display size Jean-François Lessard
2025-09-18 12:13 ` [PATCH v2 4/5] auxdisplay: linedisp: add num_chars sysfs attribute Jean-François Lessard
2025-09-18 12:13 ` [PATCH v2 5/5] auxdisplay: linedisp: support attribute attachment to auxdisplay devices Jean-François Lessard
2025-09-26 14:31 ` [PATCH v2 0/5] " Jean-François Lessard
2025-10-09 11:19 ` Jean-François Lessard
2025-10-15 16:47 ` Andy Shevchenko
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20250918121321.116248-1-jefflessard3@gmail.com \
--to=jefflessard3@gmail.com \
--cc=andy@kernel.org \
--cc=geert@linux-m68k.org \
--cc=linux-kernel@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®