summaryrefslogtreecommitdiffstats
path: root/sys/dev/rasops (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Make it possible to use RI_WRONLY for the aframebuffer during early boot.kettenis2015-09-072-7/+120
| | | | | | | | | In this case, the caller has to provide the backing store for the screen contents by setting the ri_bs member of "struct rasops_info". The screen contents are retained if the rasops_info descriptor is later reinitialized after adding the RI_VCONS flag. ok yasuoka@, deraadt@
* uses sizes for free()deraadt2015-09-011-5/+6
|
* Don't leak mem if wsfont_rotate() fails.jca2015-06-211-4/+2
| | | | Problem reported by Maxime Villard, ok miod@
* Remove some includes include-what-you-use claims don'tjsg2015-03-141-2/+1
| | | | | | | have any direct symbols used. Tested for indirect use by compiling amd64/i386/sparc64 kernels. ok tedu@ deraadt@
* remove the second void * argument on tasks.dlg2015-01-271-5/+5
| | | | | | | | | | | | | | | | | | | | | when workqs were introduced, we provided a second argument so you could pass a thing and some context to work on it in. there were very few things that took advantage of the second argument, so when i introduced pools i suggested removing it. since tasks were meant to replace workqs, it was requested that we keep the second argument to make porting from workqs to tasks easier. now that workqs are gone, i had a look at the use of the second argument again and found only one good use of it (vdsp(4) on sparc64 if you're interested) and a tiny handful of questionable uses. the vast majority of tasks only used a single argument. i have since modified all tasks that used two args to only use one, so now we can remove the second argument. so this is a mechanical change. all tasks only passed NULL as their second argument, so we can just remove it. ok krw@
* Replace switch workq with taskq, using the blambert@ method (tm).krw2014-12-222-10/+13
| | | | Tested with non-drm and wsfb systems. ok kettenis@ miod@
* Use <sys/endian.h> instead of <machine/endian.h>guenther2014-12-196-14/+12
| | | | ok dlg@ mpi@ bcook@ millert@ miod@
* yet more mallocarray() changes.doug2014-12-131-3/+5
| | | | ok tedu@ deraadt@
* Fix previous.landry2014-11-201-1/+3
| | | | | Build failure reported by Sebastien Marie testing & ok phessler@
* oops, mangled the prototypederaadt2014-11-201-1/+2
|
* Rename slow_ovbcopy() to slow_bcopy(), since ovbcopy means nothing toderaadt2014-11-201-10/+7
| | | | | the young kids and old greybeards who know that bcopy has always handled the ov case.
* add a size argument to free. will be used soon, but for now default to 0.tedu2014-07-121-4/+4
| | | | after discussions with beck deraadt kettenis.
* No longer store fonts added with the WSDISPLAYIO_LDFONT ioctl into themiod2013-10-202-2/+55
| | | | | | | | | | | | | | | 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.
* Add a load_font accessop to rasops, to allow for fonts to be loaded andmiod2013-10-202-2/+87
| | | | | | | selected. All rasops fonts are managed by wsfont, which allows a font to be loaded on a rasops device and used on another. Currently not plumbed in any driver yet. This is work in progress.
* Make sure that, when a particular mapchar() can't find a proper glyph for themiod2013-10-181-4/+4
| | | | | | | | | requested character in the font it is using, it suggests a question mark character, instead of a space, so that the existence of the non-representable character becomes visible. Note that this is consistent with pcdisplay which suggests a diamond for missing glyphs.
* Define WS_DEFAULT_FG and WS_DEFAULT_BG as default colors (black on white forkettenis2013-08-201-3/+3
| | | | | | | sparc/sparc64, white on black for everybody else), and use them to construct a default color attribute in the rasops(4) code. ok miod@
* Add support for write-only framebuffers. This makes the code that copieskettenis2013-06-282-5/+36
| | | | | | | | rows and columns redraw the destination area instead of reading pixel values from the framebuffer. This can be a considerable performance win. Only works together with RI_VCONS. ok miod@
* Replace all ovbcopy with memmove; swap the src and dst arguments tooderaadt2013-06-111-5/+5
| | | | ok otto
* Implement wsmoused support based on the new multiple screen support. Onlykettenis2013-05-172-8/+26
| | | | | works if the RI_VCONS flag is specified when initializing a rasops_info descriptor.
* Add basic support for multiple screens.kettenis2013-03-252-2/+298
| | | | ok mpi@, miod@
* a bit more ansi; ok teduderaadt2011-06-231-2/+2
|
* ansify function definitions, and constify a few arrays while there.miod2010-08-289-245/+70
| | | | no functional change.
* remove crappy old README filestedu2010-07-011-21/+0
|
* Do not check malloc return value against NULL, as M_WAITOK is used.chl2010-01-121-3/+1
| | | | ok miod@
* Change the wsdisplay_emulops return types from void to int; emulops will nowmiod2009-09-0510-219/+300
| | | | | | return zero on success and nonzero on failure. This commit only performs mechanical changes for the existing emulops to always return zero.
* If RI_FORCEMONO is set in ri_flags, build ri_devcmap as if it was a 1bppmiod2008-08-201-5/+5
| | | | frame buffer.
* First pass at removing clauses 3 and 4 from NetBSD licenses.ray2008-06-2612-96/+12
| | | | | | | | | Not sure what's more surprising: how long it took for NetBSD to catch up to the rest of the BSDs (including UCB), or the amount of code that NetBSD has claimed for itself without attributing to the actual authors. OK deraadt@
* Fix space and underline handling in rasops24_putchar(), spotted by Leon Zadorin.miod2007-09-011-10/+7
|
* Oops, prevent a warning if rasops_bswap is not required.miod2006-12-021-2/+3
|
* On frame buffers which endianness differs from the host CPU, we can not affordmiod2006-12-023-12/+67
| | | | | | | | | | | | | using ovbcopy() in the erasecols emulop, as the ovbcopy implementation might do larger-than-byte loads and store, which will not have the expected result if the source and destination addresses are not similarly aligned. Instead, roll our own byte-only ovbcopy() in this case. This is made dependent on a config(8) attribute to avoid bloating platforms which do not need this, thus frame buffers which may set RI_BSWAP in ri_flg need to depend on this attribute. Problem spotted by matthieu@ using tcsh on sparc64 console.
* Add an unpack_attr function to struct wsdisplay_emulops, to match themiod2006-11-292-5/+6
| | | | | existing alloc_attr function. This allows rasops_unpack_attr to be kept private to rasops, yet available to the screen drivers.
* More simplification for little-endian systems.miod2006-08-041-7/+3
|
* Since rasops is big-endian internally (because it's the logical choicemiod2006-08-035-316/+368
| | | | | | | | | | for frame buffer work), it is no surprise that the less-than-8-bpp code is completely wrong when run on a little endian machine, and only works by accident if character cells are 8-bit wide. Fix the BE<->LE conversions, so that now rasops1 works in all cases. rasops2 and rasops4 might still need some help, but I'm not in a hurry to meet a 4bpp big-endian frame buffer on a little-endian system...
* Omit specific depth in rasops_init_devcmap() if not compiling for them.miod2006-03-101-5/+19
|
* Add a generic putchar() implementation, which will work with fonts up to 16miod2006-03-041-32/+37
| | | | bits wide.
* Big-endian fix here too.miod2006-01-081-1/+8
|
* Fix stamp creation for big-endian systems. Makes mac68k happy at 16bpp.miod2006-01-081-5/+5
|
* Correctly initialize ri_devcmap at 4bpp.miod2006-01-081-3/+10
|
* Stop compiling the texte console rotation code #ifdef __zaurus__, but usemiod2005-09-153-165/+248
| | | | | | | | | | | | | | a flag in the rasops_info structure; drivers which may use it shall declare a specific attribute for the config(8) machinery, so that the necessary code is compiled in. In addition to this, rotated font computation is now done on-demand, and a list of unrotated-rotated font cookie pairs is kept, rather than rotating all built-in wsfonts at initialization time. No user-perceptible functional change. Tested matthieu@ uwe@, ok uwe@
* Another evil hack to turn sidelining into underlining on the Zaurus console.pascoe2005-05-011-2/+21
| | | | tested dlg@
* Temporary hack to (un)rotate the Zaurus console until a proper rasopspascoe2005-04-302-2/+151
| | | | rotation framework is ready.
* Cosmetics...tdeval2005-03-081-11/+11
| | | | | Mainly remove space between locators parens, replace spaces with tabs where appropriate and consistently align dependencies.
* Typomiod2005-01-141-2/+2
|
* Provide a real inverted cursor for rasops-based consoles; inspired bymiod2003-12-171-30/+70
| | | | a similar diff in NetBSD.
* Remove dead attribute "rasterconsole".miod2003-04-141-14/+12
|
* It is not clear that the order of operations will be what the programmerhenric2003-02-121-3/+5
| | | | | | intended. (This fixes a gcc3 warning.) ok jason, millert
* Add a callback routine for when the cursor position is updated (this allowsjason2002-08-122-2/+7
| | | | for updating prom cursor locations).
* Define RASOPS_SMALL when SMALL_KERNEL is also defined.miod2002-07-281-1/+5
| | | | Shaves a few more KB out of alpha (and others) ramdisks.
* Fix PIXEL_SHIFT value for 4bit displays.miod2002-07-271-2/+2
|
* Unstaticize functions, for my ddb sessions pleasure.miod2002-07-279-100/+100
| | | | Plus it makes hangman more difficult.