diff options
Diffstat (limited to 'Documentation/console')
-rw-r--r-- | Documentation/console/console.txt | 67 |
1 files changed, 42 insertions, 25 deletions
diff --git a/Documentation/console/console.txt b/Documentation/console/console.txt index 4f3f28507761..d3e17447321c 100644 --- a/Documentation/console/console.txt +++ b/Documentation/console/console.txt | |||
@@ -27,45 +27,62 @@ In newer kernels, the following are also available: | |||
27 | register_con_driver() | 27 | register_con_driver() |
28 | unregister_con_driver() | 28 | unregister_con_driver() |
29 | 29 | ||
30 | If sysfs is enabled, the contents of /sys/class/tty/console/backend can be | 30 | If sysfs is enabled, the contents of /sys/class/vtconsole can be |
31 | examined. This shows the console drivers currently registered by the system. On | 31 | examined. This shows the console backends currently registered by the |
32 | an x86 system with the framebuffer console enabled, the contents of this | 32 | system which are named vtcon<n> where <n> is an integer fro 0 to 15. Thus: |
33 | attribute may be like this: | ||
34 | 33 | ||
35 | cat /sys/class/tty/console/backend | 34 | ls /sys/class/vtconsole |
36 | 0 S: VGA+ | 35 | . .. vtcon0 vtcon1 |
37 | 1 B: frame buffer device | ||
38 | 36 | ||
39 | The first line shows the VGA console driver, while the second line shows | 37 | Each directory in /sys/class/vtconsole has 3 files: |
40 | the framebuffer console driver. | ||
41 | 38 | ||
42 | The leftmost numeric character is the driver ID. The middle character with | 39 | ls /sys/class/vtconsole/vtcon0 |
43 | the colon describes the status of the driver. | 40 | . .. bind name uevent |
44 | 41 | ||
45 | S: - system driver (binding unspecified) | 42 | What do these files signify? |
46 | B: - bound modular driver | ||
47 | U: - unbound modular driver | ||
48 | 43 | ||
49 | The last column is the description of the driver. | 44 | 1. bind - this is a read/write file. It shows the status of the driver if |
45 | read, or acts to bind or unbind the driver to the virtual consoles | ||
46 | when written to. The possible values are: | ||
50 | 47 | ||
51 | Under /sys/class/tty/console are two other attributes, 'bind' and | 48 | 0 - means the driver is not bound and if echo'ed, commands the driver |
52 | 'unbind'. What does these 2 attributes do? As their name implies, echo'ing the | 49 | to unbind |
53 | driver ID to 'bind' will bind an unbound modular driver, and to 'unbind' will | ||
54 | unbind a bound modular driver. Echo'ing the ID of a system driver to either | ||
55 | attribute will do nothing. | ||
56 | 50 | ||
57 | Thus: | 51 | 1 - means the driver is bound and if echo'ed, commands the driver to |
52 | bind | ||
58 | 53 | ||
59 | echo 1 > /sys/class/tty/console/unbind | 54 | 2. name - read-only file. Shows the name of the driver in this format: |
60 | cat /sys/class/tty/console/backend | 55 | |
61 | 0 S: VGA+ | 56 | cat /sys/class/vtconsole/vtcon0/name |
62 | 1 U: frame buffer device | 57 | (S) VGA+ |
58 | |||
59 | '(S)' stands for a (S)ystem driver, ie, it cannot be directly | ||
60 | commanded to bind or unbind | ||
61 | |||
62 | 'VGA+' is the name of the driver | ||
63 | |||
64 | cat /sys/class/vtconsole/vtcon1/name | ||
65 | (M) frame buffer device | ||
66 | |||
67 | In this case, '(M)' stands for a (M)odular driver, one that can be | ||
68 | directly commanded to bind or unbind. | ||
69 | |||
70 | 3. uevent - ignore this file | ||
63 | 71 | ||
64 | When unbinding, the modular driver is detached first, and then the system | 72 | When unbinding, the modular driver is detached first, and then the system |
65 | driver takes over the consoles vacated by the driver. Binding, on the other | 73 | driver takes over the consoles vacated by the driver. Binding, on the other |
66 | hand, will bind the driver to the consoles that are currently occupied by a | 74 | hand, will bind the driver to the consoles that are currently occupied by a |
67 | system driver. | 75 | system driver. |
68 | 76 | ||
77 | NOTE1: Binding and binding must be selected in Kconfig. It's under: | ||
78 | |||
79 | Device Drivers -> Character devices -> Support for binding and unbinding | ||
80 | console drivers | ||
81 | |||
82 | NOTE2: If any of the virtual consoles are in KD_GRAPHICS mode, then binding or | ||
83 | unbinding will not succeed. An example of an application that sets the console | ||
84 | to KD_GRAPHICS is X. | ||
85 | |||
69 | How useful is this feature? This is very useful for console driver | 86 | How useful is this feature? This is very useful for console driver |
70 | developers. By unbinding the driver from the console layer, one can unload the | 87 | developers. By unbinding the driver from the console layer, one can unload the |
71 | driver, make changes, recompile, reload and rebind the driver without any need | 88 | driver, make changes, recompile, reload and rebind the driver without any need |