Lines Matching full:console
2 * linux/include/linux/console.h
41 * Invoked by csi_M and printing to the console.
42 * @con_set_palette: sets the palette of the console to @table (optional)
43 * @con_scrolldelta: the contents of the console should be scrolled by @lines.
83 * Flush the video console driver's scrollback buffer
87 * Prepare the console for the debugger. This includes, but is not
88 * limited to, unblanking the console, loading an appropriate
93 * Restore the console to its pre-debug state as closely as possible.
100 extern const struct consw dummy_con; /* dummy console buffer */
101 extern const struct consw vga_con; /* VGA text console */
102 extern const struct consw newport_con; /* SGI Newport console */
135 * The interface for a console, or any other device that wants to capture
136 * console messages (printer driver?)
140 * cons_flags - General console flags
144 * @CON_CONSDEV: Indicates that the console driver is backing
145 * /dev/console.
146 * @CON_ENABLED: Indicates if a console is allowed to print records. If
147 * false, the console also will not advance to later
149 * @CON_BOOT: Marks the console driver as early console driver which
152 * when the real console driver is registered unless
155 * that the legacy @console::write callback can be invoked
162 * @CON_EXTENDED: The console supports the extended output format of
164 * @CON_SUSPENDED: Indicates if a console is suspended. If true, the
166 * @CON_NBCON: Console can operate outside of the legacy style console_lock
182 * struct nbcon_state - console state for nbcon consoles
187 * @unsafe: Console is busy in a non takeover region
189 * past. The console cannot be safe until re-initialized.
193 * state variable @console::nbcon_state.
214 * are stored in the @console::nbcon_state variable. Ensure this struct stays
221 * nbcon_prio - console owner priority for nbcon consoles
228 * A higher priority context can takeover the console when it is
240 struct console;
244 * struct nbcon_context - Context for console acquire/release
245 * @console: The associated console
250 * might cause a system freeze when the console
258 struct console *console; member
273 * @ctxt: The core console context
286 * struct console - The console descriptor structure
287 * @name: The name of the console driver
289 * @read: Read callback for console input (Optional)
291 * @unblank: Callback to unblank the console (Optional)
292 * @setup: Callback for initializing the console (Optional)
293 * @exit: Callback for teardown of the console (Optional)
294 * @match: Callback for matching a console (Optional)
295 * @flags: Console flags. See enum cons_flags
296 * @index: Console index, e.g. port number
303 * @node: hlist node for the console list
310 struct console { struct
312 void (*write)(struct console *co, const char *s, unsigned int count); argument
313 int (*read)(struct console *co, char *s, unsigned int count); argument
314 struct tty_driver *(*device)(struct console *co, int *index); argument
316 int (*setup)(struct console *co, char *options); argument
317 int (*exit)(struct console *co); argument
318 int (*match)(struct console *co, char *name, int idx, char *options); argument
329 /* nbcon console specific members */ argument
330 bool (*write_atomic)(struct console *con, argument
363 * console_srcu_read_flags - Locklessly read the console flags
364 * @con: struct console pointer of console to read flags from
367 * notation for locklessly reading the console flags. The READ_ONCE()
371 * Only use this function to read console flags when locklessly
372 * iterating the console list via srcu.
376 static inline short console_srcu_read_flags(const struct console *con) in console_srcu_read_flags()
381 * Locklessly reading console->flags provides a consistent in console_srcu_read_flags()
383 * console->flags and that CPU is using only read-modify-write in console_srcu_read_flags()
390 * console_srcu_write_flags - Write flags for a registered console
391 * @con: struct console pointer of console to write flags to
399 static inline void console_srcu_write_flags(struct console *con, short flags) in console_srcu_write_flags()
408 static inline bool console_is_registered_locked(const struct console *con) in console_is_registered_locked()
415 * console_is_registered - Check if the console is registered
416 * @con: struct console pointer of console to check
418 * Context: Process context. May sleep while acquiring console list lock.
419 * Return: true if the console is in the console list, otherwise false.
421 * If false is returned for a console that was previously registered, it
422 * can be assumed that the console's unregistration is fully completed,
423 * including the exit() callback after console list removal.
425 static inline bool console_is_registered(const struct console *con) in console_is_registered()
437 * @con: struct console pointer used as loop cursor
439 * Although SRCU guarantees the console list will be consistent, the
440 * struct console fields may be updated by other CPUs while iterating.
451 * @con: struct console pointer used as loop cursor
453 * The console list and the console->flags are immutable while iterating.
472 extern struct console *early_console;
480 extern void console_force_preferred_locked(struct console *con);
481 extern void register_console(struct console *);
482 extern int unregister_console(struct console *);
490 extern void console_stop(struct console *);
491 extern void console_start(struct console *);
493 extern int braille_register_console(struct console *, int index,
495 extern int braille_unregister_console(struct console *);
504 /* Suspend and resume console messages over PM events */
531 /* For deferred console takeover */