summaryrefslogtreecommitdiffstats
path: root/sys/dev/wscons/wsdisplayvar.h (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Fix various typos in wscons(4) comments.fcambus2020-09-131-2/+2
|
* change wsdisplay attribute type from long to uint32_tjsg2020-05-251-10/+13
| | | | | | | | miod explained it was initially a long as it was thought drivers may need to allocate storage but in practice they don't need more than 32 bits for an attribute. suggested and reviewed by miod@
* rename wsdisplay alloc_attr() to pack_attr()jsg2020-05-251-3/+2
| | | | | | | | Suggested by John Carmack. miod agrees a rename would make sense and explained it was initially thought drivers may need to allocate storage but in practice they don't need more than 32 bits for an attribute. ok mpi@
* Move logic to change brightness level in reasonable steps from acpivout(4)kettenis2020-04-191-1/+5
| | | | | | | | | | | | | | | | into wsdisplay(4). This code is now exposed through wsdisplay_brightness_{step,zero,cycle} functions that can be called by any driver that handles brightnes "hotkeys". These functions take a wsdisplay(4) device pointer as their first argument, which should be provided if a clear association between events and a particular display exist. This is used in wskbd(4). Otherwise NULL can be passed and the code will direct the request at the first wsdisplay(4) that implements brightness adjustment. Tested by many. Fixes brightness keys on x395 and other thinkpads with AMD graphics. ok patrick@
* Move ws_get_param/ws_set_param into wsdisplay code.kettenis2019-10-131-1/+5
| | | | ok deraadt@, jsg@
* Use timeout_add_msec(9)kn2019-07-011-4/+3
| | | | | | | Trivial conversion from ticks to milliseconds where macros already come in milliseconds and timeout values only need reduction by hz to use the new API. OK mpi
* Improve the interaction between efifb(4), inteldrm(4) and radeondrm(4)kettenis2019-05-041-3/+7
| | | | | | | | | | | | | | | | when we have a serial console by introducing the notion of a "primary" graphics device. The primary graphics device is the one set up and used by firmware (BIOS, UEFI). The goal is to make sure that wsdisplay0 and drm0 reliably attach to the primary graphics device such that X works out of the box even if you have multiple cards or if you are using a serial console. This also fixes the situation where inteldrm(4) or radeondrm(4) would take over the console on UEFI systems even if the kernel was booted with a serial console. ok jsg@
* Add a enter_ddb() "accessop" to wsdisplay(4) to allow KMS drivers to bypasskettenis2017-07-191-1/+3
| | | | | | | the modeset lock when entering ddb. This avoids triggering various asserts when the kernel panics while running X. ok deraadt@
* remove some more sparc remnants. ok deraadttedu2016-09-041-3/+3
|
* Better defaults for the screen burner settings: all unblank actions enabled,miod2013-11-041-2/+2
| | | | | | but burning still disabled by default. Setting display.screen_off to a nonzero value with wsconsctl will be enough to enable screen blanking after the given time.
* No longer store fonts added with the WSDISPLAYIO_LDFONT ioctl into themiod2013-10-201-2/+2
| | | | | | | | | | | | | | | wsdisplay softc. Instead, since the knowledge about available fonts lies in the parent driver itself, introduce a list_font wsdisplay_accessop which queries a font index, suitable to use within the WSDISPLAYIO_LSFONT ioctl. With this in place: - there is no global wsdisplay limit on the number of fonts loaded. Such a limit will be enforced by the display drivers themselves. - built-in kernel fonts will now appear in the list of fonts. Grow a list_font accesop for rasops, which relies upon wsfont_enum(), which is turned into something useful (and abortable if you do not need to iterate further). Not used by any rasops driver yet.
* Define WS_DEFAULT_FG and WS_DEFAULT_BG as default colors (black on white forkettenis2013-08-201-1/+20
| | | | | | | sparc/sparc64, white on black for everybody else), and use them to construct a default color attribute in the rasops(4) code. ok miod@
* s/wsemuldisplaysubmatch/wsemuldisplaydevsubmatch/gkettenis2013-07-061-2/+2
|
* Add submatch function for use with config_found_sm(9).kettenis2013-07-051-1/+2
| | | | ok miod@
* Prevent the apmd/x races for good.oga2010-03-301-1/+3
| | | | | | | | | | | | | | | | | | | When we hit suspend time, go through all wsdisplays on the system. if they are in mode MAPPED, but not MODE_DUMBFB then if possible do a full vt switch to a !mapped vt, and prevent switching back until resume time. This has to be called from MD code because this involves userland running so that X can run the vt switch signal handler. This way, any case where we are using the "poke registers from userland" model, we will not be on the hardware when we go down, so the kernel can actually handle thing properly. Tested on several acpi laptops (by kettenis@ and ian@), x40 (me and beck@ at LEAST) and zaurus (me). Maybe others, but if so I forgot who at this time.. Idea from deraadt somewhere over the Faroe Islands (I thought of a similar thing myself a while ago). Much prompting from him. Ok and comments miod@
* Change the wsdisplay_emulops return types from void to int; emulops will nowmiod2009-09-051-7/+7
| | | | | | return zero on success and nonzero on failure. This commit only performs mechanical changes for the existing emulops to always return zero.
* Fix ri_devcmap[] to allow WSCOL_BLACK and WSCOL_WHITE to not have to bemiod2006-12-021-8/+2
| | | | different for sparc{,64} systems.
* Change the getchar wsdisplay_accessops function to not return amiod2006-11-291-2/+10
| | | | | | | | | | display-dependent value, but instead fill a structure with the chaarcter and a valid attribute, suitable for use with unpack_attr. Adapt the wsmoused code to these changes, and remove all knowledge of the text-mode style pc video attributes in it. This will eventually allow wsmoused to be used on non-pcdisplay devices.
* Add an unpack_attr function to struct wsdisplay_emulops, to match themiod2006-11-291-9/+7
| | | | | existing alloc_attr function. This allows rasops_unpack_attr to be kept private to rasops, yet available to the screen drivers.
* Add a new member to struct wsemuldisplaydev_attach_args, for a frame buffermiod2006-11-291-1/+2
| | | | | driver to be able to tell how many wscons screens to attach to it, instead of WSDISPLAY_DEFAULTSCREENS which is a global setting.
* For 32bit sun frame buffers, tweak ri_devcmap to get the BoW palette insteadmiod2006-06-301-8/+3
| | | | | | | | of needing different WSCOL_{BLACK,WHITE} values than 8bit frame buffers. This allows us to not special case the alloc_attr() invocations depending on the color depth, and to make WSCOL_{BLACK,WHITE} constants again in the wsemul_sun land.
* No need to keep specific variables for the kernel messages colors on sunmiod2006-06-291-2/+1
| | | | | emulation, we can reuse the existing WSCOL_xxx codes, and WSCOL_BLACK and WSCOL_WHITE will point to variables anyway.
* More non-emulating wsdisplay tentacles removal.miod2005-09-271-11/+1
|
* Partial sync to the NetBSD wscons code, bringing a better wsmux behaviourmiod2005-05-151-2/+6
| | | | | | | and bugfixes (the kqueue code, /dev/wsmuxctl and screen border color changes have not been picked), keeping local changes. Tested by many on alpha/cats/hp300/i386/macppc/sparc/sparc64/zaurus if not more.
* Rework the color usage in wsemul_sun displays, to match SunOS and Solarismiod2002-07-251-2/+14
| | | | | | | text mode colors. This means black text on white background, even for the kernel messages. Initially based on a patch from jason@, then some tinkering by me.
* Add X-Window support to wsmoused(8). This allows running wsmoused(8) andjbm2002-03-271-1/+4
| | | | | X-Window at the same time, removing the need to kill wsmoused(8) before starting X-Window.
* Final __P removal plus some cosmetic fixupsmillert2002-03-141-5/+5
|
* First round of __P removal in sysmillert2002-03-141-54/+54
|
* inplement screen burner in screenblank(1) style (no program though).mickey2001-05-081-2/+11
| | | | | disabled by default, also supports vsync blanking, disabled by default. aaron@ looked at it a while back and i fixed problems he had indicated.
* Kernel support for console mouse functionality which will be controlled byaaron2001-04-141-1/+2
| | | | | | | | | | the wsmoused daemon (replacement for moused which was used with PCVT). Adds a "getchar" method to the display drivers which returns the value of the character currently under the cursor (e.g., so it may be inversed). From jbm@. Still needs a bit of cleanup and improvement, especially X cohabitation features. The pointer moves to fast as well. These sorts of issues will be corrected in-tree.
* allow listing and soon deleting fonts; aaron@ okmickey2001-03-141-2/+4
|
* sync w/ netbsd; aaron@ okmickey2001-02-101-1/+5
|
* Cause keypresses to reset the screen in case we are in scrollback (previouslyaaron2001-02-081-3/+4
| | | | | | | the screen was only restored if a new character was actually displayed on the screen); jcs@rt.fm. This brings us closer to the behavior of PCVT. Also, while I'm here, add some #ifdef so wskbd does not depend on wsdisplay (pointed out to me by fgsch@).
* OpenBSD does have paddr_t, I can't explain why I thought it didn't; art@aaron2001-01-311-2/+2
|
* Some int -> u_long (I incorrectly converted paddr_t to int when porting this).aaron2001-01-311-2/+2
|
* Support console scrollback in wscons through a new "scrollback" accessop thataaron2000-11-151-1/+10
| | | | | | hooks into the lower-level display driver. The updated vga(4) driver I'm about to commit has support for this. This is a fairly unobtrusive way to implement scrollback while maintaining the abstraction of the wscons system.
* update wscons, nothing serious, mostly api fixes for us; from netbsd through aaron@mickey2000-08-011-2/+2
|
* import newer wscons source from netbsd.mickey2000-05-161-0/+200
art@ said it will make his life easier in alpha rhands@ said it is not used in powerpc for now bjc@ said that it would make vax port easier mickey@ said other platforms can use it, and it's faster