11cdaf601SJean-François LessardWhat: /sys/.../message 21cdaf601SJean-François LessardDate: October 2021 31cdaf601SJean-François LessardKernelVersion: 5.16 41cdaf601SJean-François LessardDescription: 51cdaf601SJean-François Lessard Controls the text message displayed on character line displays. 61cdaf601SJean-François Lessard 71cdaf601SJean-François Lessard Reading returns the current message with a trailing newline. 81cdaf601SJean-François Lessard Writing updates the displayed message. Messages longer than the 91cdaf601SJean-François Lessard display width will automatically scroll. Trailing newlines in 101cdaf601SJean-François Lessard input are automatically trimmed. 111cdaf601SJean-François Lessard 121cdaf601SJean-François Lessard Writing an empty string clears the display. 131cdaf601SJean-François Lessard 141cdaf601SJean-François Lessard Example: 151cdaf601SJean-François Lessard echo "Hello World" > message 161cdaf601SJean-François Lessard cat message # Returns "Hello World\n" 171cdaf601SJean-François Lessard 18*e2506346SJean-François LessardWhat: /sys/.../num_chars 19*e2506346SJean-François LessardDate: November 2025 20*e2506346SJean-François LessardKernelVersion: 6.18 21*e2506346SJean-François LessardContact: Jean-François Lessard <jefflessard3@gmail.com> 22*e2506346SJean-François LessardDescription: 23*e2506346SJean-François Lessard Read-only attribute showing the character width capacity of 24*e2506346SJean-François Lessard the line display device. Messages longer than this will scroll. 25*e2506346SJean-François Lessard 26*e2506346SJean-François Lessard Example: 27*e2506346SJean-François Lessard cat num_chars # Returns "16\n" for 16-char display 28*e2506346SJean-François Lessard 291cdaf601SJean-François LessardWhat: /sys/.../scroll_step_ms 301cdaf601SJean-François LessardDate: October 2021 311cdaf601SJean-François LessardKernelVersion: 5.16 321cdaf601SJean-François LessardDescription: 331cdaf601SJean-François Lessard Controls the scrolling speed for messages longer than the display 341cdaf601SJean-François Lessard width, specified in milliseconds per scroll step. 351cdaf601SJean-François Lessard 361cdaf601SJean-François Lessard Setting to 0 disables scrolling. Default is 500ms. 371cdaf601SJean-François Lessard 381cdaf601SJean-François Lessard Example: 391cdaf601SJean-François Lessard echo "250" > scroll_step_ms # 4Hz scrolling 401cdaf601SJean-François Lessard cat scroll_step_ms # Returns "250\n" 411cdaf601SJean-François Lessard 421cdaf601SJean-François LessardWhat: /sys/.../map_seg7 431cdaf601SJean-François LessardDate: January 2024 441cdaf601SJean-François LessardKernelVersion: 6.9 451cdaf601SJean-François LessardDescription: 461cdaf601SJean-François Lessard Read/write binary blob representing the ASCII-to-7-segment 471cdaf601SJean-François Lessard display conversion table used by the linedisp driver, as defined 481cdaf601SJean-François Lessard by struct seg7_conversion_map in <linux/map_to_7segment.h>. 491cdaf601SJean-François Lessard 501cdaf601SJean-François Lessard Only visible on displays with 7-segment capability. 511cdaf601SJean-François Lessard 521cdaf601SJean-François Lessard This attribute is not human-readable. Writes must match the 531cdaf601SJean-François Lessard struct size exactly, else -EINVAL is returned; reads return the 541cdaf601SJean-François Lessard entire mapping as a binary blob. 551cdaf601SJean-François Lessard 561cdaf601SJean-François Lessard This interface and its implementation match existing conventions 571cdaf601SJean-François Lessard used in segment-mapped display drivers since 2005. 581cdaf601SJean-François Lessard 591cdaf601SJean-François Lessard ABI note: This style of binary sysfs attribute *is an exception* 601cdaf601SJean-François Lessard to current "one value per file, text only" sysfs rules, for 611cdaf601SJean-François Lessard historical compatibility and driver uniformity. New drivers are 621cdaf601SJean-François Lessard discouraged from introducing additional binary sysfs ABIs. 631cdaf601SJean-François Lessard 641cdaf601SJean-François Lessard Reference interface guidance: 651cdaf601SJean-François Lessard - include/uapi/linux/map_to_7segment.h 661cdaf601SJean-François Lessard 671cdaf601SJean-François LessardWhat: /sys/.../map_seg14 681cdaf601SJean-François LessardDate: January 2024 691cdaf601SJean-François LessardKernelVersion: 6.9 701cdaf601SJean-François LessardDescription: 711cdaf601SJean-François Lessard Read/write binary blob representing the ASCII-to-14-segment 721cdaf601SJean-François Lessard display conversion table used by the linedisp driver, as defined 731cdaf601SJean-François Lessard by struct seg14_conversion_map in <linux/map_to_14segment.h>. 741cdaf601SJean-François Lessard 751cdaf601SJean-François Lessard Only visible on displays with 14-segment capability. 761cdaf601SJean-François Lessard 771cdaf601SJean-François Lessard This attribute is not human-readable. Writes must match the 781cdaf601SJean-François Lessard struct size exactly, else -EINVAL is returned; reads return the 791cdaf601SJean-François Lessard entire mapping as a binary blob. 801cdaf601SJean-François Lessard 811cdaf601SJean-François Lessard This interface and its implementation match existing conventions 821cdaf601SJean-François Lessard used by segment-mapped display drivers since 2005. 831cdaf601SJean-François Lessard 841cdaf601SJean-François Lessard ABI note: This style of binary sysfs attribute *is an exception* 851cdaf601SJean-François Lessard to current "one value per file, text only" sysfs rules, for 861cdaf601SJean-François Lessard historical compatibility and driver uniformity. New drivers are 871cdaf601SJean-François Lessard discouraged from introducing additional binary sysfs ABIs. 881cdaf601SJean-François Lessard 891cdaf601SJean-François Lessard Reference interface guidance: 901cdaf601SJean-François Lessard - include/uapi/linux/map_to_14segment.h 91