| What: /sys/.../message |
| Date: October 2021 |
| KernelVersion: 5.16 |
| Description: |
| Controls the text message displayed on character line displays. |
| |
| Reading returns the current message with a trailing newline. |
| Writing updates the displayed message. Messages longer than the |
| display width will automatically scroll. Trailing newlines in |
| input are automatically trimmed. |
| |
| Writing an empty string clears the display. |
| |
| Example: |
| echo "Hello World" > message |
| cat message # Returns "Hello World\n" |
| |
| What: /sys/.../num_chars |
| Date: November 2025 |
| KernelVersion: 6.18 |
| Contact: Jean-Franรงois Lessard <jefflessard3@gmail.com> |
| Description: |
| Read-only attribute showing the character width capacity of |
| the line display device. Messages longer than this will scroll. |
| |
| Example: |
| cat num_chars # Returns "16\n" for 16-char display |
| |
| What: /sys/.../scroll_step_ms |
| Date: October 2021 |
| KernelVersion: 5.16 |
| Description: |
| Controls the scrolling speed for messages longer than the display |
| width, specified in milliseconds per scroll step. |
| |
| Setting to 0 disables scrolling. Default is 500ms. |
| |
| Example: |
| echo "250" > scroll_step_ms # 4Hz scrolling |
| cat scroll_step_ms # Returns "250\n" |
| |
| What: /sys/.../map_seg7 |
| Date: January 2024 |
| KernelVersion: 6.9 |
| Description: |
| Read/write binary blob representing the ASCII-to-7-segment |
| display conversion table used by the linedisp driver, as defined |
| by struct seg7_conversion_map in <linux/map_to_7segment.h>. |
| |
| Only visible on displays with 7-segment capability. |
| |
| This attribute is not human-readable. Writes must match the |
| struct size exactly, else -EINVAL is returned; reads return the |
| entire mapping as a binary blob. |
| |
| This interface and its implementation match existing conventions |
| used in segment-mapped display drivers since 2005. |
| |
| ABI note: This style of binary sysfs attribute *is an exception* |
| to current "one value per file, text only" sysfs rules, for |
| historical compatibility and driver uniformity. New drivers are |
| discouraged from introducing additional binary sysfs ABIs. |
| |
| Reference interface guidance: |
| - include/uapi/linux/map_to_7segment.h |
| |
| What: /sys/.../map_seg14 |
| Date: January 2024 |
| KernelVersion: 6.9 |
| Description: |
| Read/write binary blob representing the ASCII-to-14-segment |
| display conversion table used by the linedisp driver, as defined |
| by struct seg14_conversion_map in <linux/map_to_14segment.h>. |
| |
| Only visible on displays with 14-segment capability. |
| |
| This attribute is not human-readable. Writes must match the |
| struct size exactly, else -EINVAL is returned; reads return the |
| entire mapping as a binary blob. |
| |
| This interface and its implementation match existing conventions |
| used by segment-mapped display drivers since 2005. |
| |
| ABI note: This style of binary sysfs attribute *is an exception* |
| to current "one value per file, text only" sysfs rules, for |
| historical compatibility and driver uniformity. New drivers are |
| discouraged from introducing additional binary sysfs ABIs. |
| |
| Reference interface guidance: |
| - include/uapi/linux/map_to_14segment.h |