Commit Graph

39 Commits

Author SHA1 Message Date
macallan 4fbc897fbb finish device_t-ification 2010-10-07 07:53:53 +00:00
macallan 699e821c1d add support for backlight control via machine dependent callbacks 2010-10-06 02:24:35 +00:00
macallan b8dd6fd56b make use of a shadow framebuffer optional, use VCONS_DONT_READ by default 2010-08-31 02:49:17 +00:00
dyoung c1b390d493 A pointer typedef entails trading too much flexibility to declare const
and non-const types, and the kernel uses both const and non-const
PMF qualifiers and device suspensors, so change the pmf_qual_t and
device_suspensor_t typedefs from "pointers to const" to non-pointer,
non-const types.
2010-02-24 22:37:54 +00:00
ahoka 0f279dbbae Restore splashscreen support with genfb.
genfb patch from Pierre Pronchery, other small changes to make it
compile by me.

Closes PR kern/42605.

XXX doesnt work in 8bit, probably a cmap issue
2010-02-22 05:55:10 +00:00
dyoung 3022acc4eb Expand PMF_FN_* macros. 2010-01-08 19:42:11 +00:00
jmcneill 8aa0a1bfb1 Expose genfb_restore_palette and allow MD code to specify PMF callbacks. 2009-08-24 11:03:44 +00:00
macallan c55b7d3677 call vcons_replay_msgbuf() 2009-08-20 02:51:27 +00:00
macallan 2b5246200f add rasops15 too for completeness 2009-08-06 16:26:51 +00:00
macallan 69c048e118 pull in rasops16 - needed for gdium support 2009-08-06 16:24:43 +00:00
christos d43c4580f1 s/long/intptr_t/ 2009-02-21 17:24:47 +00:00
dogcow f2437436f6 sparc complains "cast to pointer from integer of different size"; cast the
int to (void *)(long).
2009-02-20 08:04:15 +00:00
jmcneill 90c7459808 If the bus glue provides an ioctl handler, don't return before we have a
chance to perform generic handling in the WSDISPLAYIO_SMODE case.

ok macallan
2009-02-20 00:08:00 +00:00
jmcneill 3bc515352f Use kmem_alloc instead of malloc for shadowfb 2009-02-17 17:01:41 +00:00
jmcneill 28f60a7907 Print the physical address if available instead of a virtual address. 2009-02-17 02:41:11 +00:00
jmcneill d994f000f0 Add clear-screen and cursor-row properties to allow genfb to persist
screen state from the MD console driver.
2009-02-17 02:19:33 +00:00
jmcneill e04f5ff1b4 Provide callbacks so MD code can explicitly prevent genfb from matching;
works around vga/genfb deathmatches.
2009-02-16 22:24:40 +00:00
jmcneill ec798a6e6c Introduce genfb_ops genfb_borrow callback to allow the bus frontend to
lend mappings to drm.
2009-02-15 18:41:49 +00:00
jmcneill a71612a2f8 Provide a stub genfb_cnattach for md code to call to give a hint to the
bus driver's match function to return a higher confidence (so it can
beat out vga(4), for example). genfb needs-flag so md code can determine
if the genfb driver is present.
2009-02-14 20:33:58 +00:00
martin 3028e483e4 Convert to new 2 clause license 2008-04-29 06:53:00 +00:00
cegger 3069a1f144 use aprint_*_dev and device_xname 2008-04-05 15:50:49 +00:00
phx aec8e8230f missing newline in message 2008-03-09 21:33:17 +00:00
phx 7bca1efe39 Do not attach genfb when the frame buffer is not flagged as being console
(e.g. when a serial console is used).
Approved by macallan.
2008-03-09 20:32:30 +00:00
macallan 852515ae5f deal with a bug in the Sun Raptor's firmware which reports
linebytes == width even in 32bit colour
2007-12-17 15:38:31 +00:00
macallan 7e95514fdc sprinkle \n 2007-11-19 04:00:39 +00:00
macallan f59f835fa4 don't panic if we're not finding all the properties we need. Just complain
quietly and return.
2007-11-05 16:57:46 +00:00
ad a2a3828545 machine/{bus,cpu,intr}.h -> sys/{bus,cpu,intr}.h 2007-10-19 11:59:34 +00:00
jmmv d2525db73d Clear the screen during initialization so that the first messages are not
printed over "unknown garbage" (e.g. the Mac OS desktop).  Agreed with
macallan@.
2007-08-30 15:40:41 +00:00
jmmv 088cadb7c3 Print some details of the framebuffer configuration during attach.
OK'ed by macallan@.
2007-08-30 13:36:27 +00:00
jmmv 90ad1537c2 Properly initialize the palette registers by calling the colormap callback
on all of them.  A typo made it only initialize half of them.  OK'ed by
macallan@.
2007-08-30 13:32:18 +00:00
macallan a3b32b42df use bool with prop_dictionary_get_bool() 2007-08-24 19:12:21 +00:00
macallan 84b4b152a9 fix typo - fbsize is /height/ * stride. Doh. 2007-08-05 03:23:02 +00:00
macallan 42284ad7c0 add shadow fb support
now genfb is actually usable even on slow PCI framebuffers. Yay Jared :)
2007-08-04 23:51:37 +00:00
macallan aa2949fa77 add a callback to change the colour map
so now X with wsfb on top of genfb should look right
2007-04-14 19:56:05 +00:00
macallan 70eab97a3a add WSDISPLAYIO_LINEBYTES support so we can run XFree86 with wsfb 2007-04-11 04:47:09 +00:00
macallan 32376f5c18 pull in rasops1 and rasops32 2007-04-11 04:46:33 +00:00
macallan 13daabb045 move genfb's PCI frontend to dev/pci 2007-04-10 02:16:47 +00:00
macallan 66d86be89a - move all memory mapping into the bus frontend
- get rid of macppc-isms like *_mmap() returning physical addresses
2007-04-10 00:14:42 +00:00
macallan 4cf8aa1d7f add genfb, a generic framebuffer console driver that's configured via
device properties - all it needs is width and height in pixels, stride in
bytes, depth in bits and the framebuffer address.
Features:
- unaccelerated fb console with colours and virtual consoles
- split into console handling and bus frontend
- so far there is only a PCI bus frontend which allows to mmap BARs belonging
  to the graphics controller, others should be easy to add.

TODO:
- find an opaque way to change the palette ( probably pass a function
  pointer as property ) since this would need to call some firmware interface
  which is pretty much always MD
- find a clean way to mmap the framebuffer, just returning the physical
  address works on macppc but not on other architectures. Problem is, that
  we cannot rely on the address being a bus address - on macppc it is,
  but for instance on sparc64 it's not.
2007-04-07 03:41:26 +00:00