Skip to content

Commit 1cdaf60

Browse files
jefflessardandy-shev
authored andcommitted
docs: ABI: auxdisplay: document linedisp library sysfs attributes
Add ABI documentation for sysfs attributes provided by the line-display auxdisplay library module. These attributes enable text message display and configuration on character-based auxdisplay devices. Documents previously undocumented attributes: - message, scroll_step_ms (introduced in v5.16) - map_seg7, map_seg14 (introduced in v6.9) The line-display library is used by multiple auxdisplay drivers and can expose these attributes either on linedisp.N child devices or directly on parent auxdisplay devices. Signed-off-by: Jean-François Lessard <jefflessard3@gmail.com> Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
1 parent 86cc796 commit 1cdaf60

1 file changed

Lines changed: 79 additions & 0 deletions

File tree

Lines changed: 79 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,79 @@
1+
What: /sys/.../message
2+
Date: October 2021
3+
KernelVersion: 5.16
4+
Description:
5+
Controls the text message displayed on character line displays.
6+
7+
Reading returns the current message with a trailing newline.
8+
Writing updates the displayed message. Messages longer than the
9+
display width will automatically scroll. Trailing newlines in
10+
input are automatically trimmed.
11+
12+
Writing an empty string clears the display.
13+
14+
Example:
15+
echo "Hello World" > message
16+
cat message # Returns "Hello World\n"
17+
18+
What: /sys/.../scroll_step_ms
19+
Date: October 2021
20+
KernelVersion: 5.16
21+
Description:
22+
Controls the scrolling speed for messages longer than the display
23+
width, specified in milliseconds per scroll step.
24+
25+
Setting to 0 disables scrolling. Default is 500ms.
26+
27+
Example:
28+
echo "250" > scroll_step_ms # 4Hz scrolling
29+
cat scroll_step_ms # Returns "250\n"
30+
31+
What: /sys/.../map_seg7
32+
Date: January 2024
33+
KernelVersion: 6.9
34+
Description:
35+
Read/write binary blob representing the ASCII-to-7-segment
36+
display conversion table used by the linedisp driver, as defined
37+
by struct seg7_conversion_map in <linux/map_to_7segment.h>.
38+
39+
Only visible on displays with 7-segment capability.
40+
41+
This attribute is not human-readable. Writes must match the
42+
struct size exactly, else -EINVAL is returned; reads return the
43+
entire mapping as a binary blob.
44+
45+
This interface and its implementation match existing conventions
46+
used in segment-mapped display drivers since 2005.
47+
48+
ABI note: This style of binary sysfs attribute *is an exception*
49+
to current "one value per file, text only" sysfs rules, for
50+
historical compatibility and driver uniformity. New drivers are
51+
discouraged from introducing additional binary sysfs ABIs.
52+
53+
Reference interface guidance:
54+
- include/uapi/linux/map_to_7segment.h
55+
56+
What: /sys/.../map_seg14
57+
Date: January 2024
58+
KernelVersion: 6.9
59+
Description:
60+
Read/write binary blob representing the ASCII-to-14-segment
61+
display conversion table used by the linedisp driver, as defined
62+
by struct seg14_conversion_map in <linux/map_to_14segment.h>.
63+
64+
Only visible on displays with 14-segment capability.
65+
66+
This attribute is not human-readable. Writes must match the
67+
struct size exactly, else -EINVAL is returned; reads return the
68+
entire mapping as a binary blob.
69+
70+
This interface and its implementation match existing conventions
71+
used by segment-mapped display drivers since 2005.
72+
73+
ABI note: This style of binary sysfs attribute *is an exception*
74+
to current "one value per file, text only" sysfs rules, for
75+
historical compatibility and driver uniformity. New drivers are
76+
discouraged from introducing additional binary sysfs ABIs.
77+
78+
Reference interface guidance:
79+
- include/uapi/linux/map_to_14segment.h

0 commit comments

Comments
 (0)