summaryrefslogtreecommitdiffstats
path: root/sys/dev/pci/vga_pci.c (follow)
Commit message (Collapse)AuthorAgeFilesLines
* remove unused vesafb code, had been commented out and not compiled in formlarkin2015-08-201-99/+1
| | | | | | | 7 years (for some parts, 9 years), and was only ever referenced in i386 anyway. ok jsg@, matthieu@, armani@
* Shuffle include file ordering in preparation for future changes in vgavar.h,miod2015-07-181-2/+2
| | | | which will have it depend upon wsdisplayvar.h.
* Restore user-loaded vga fonts upon X11->VT switch and upon resume; frommiod2015-03-291-1/+2
| | | | dan mclaughlin, thanks!
* Remove some includes include-what-you-use claims don'tjsg2015-03-141-3/+1
| | | | | | | have any direct symbols used. Tested for indirect use by compiling amd64/i386/sparc64 kernels. ok tedu@ deraadt@
* Repost video on all known Intel PowerVR devices not just GMA500, forjsg2014-12-061-3/+23
| | | | | | | | | people unfortunate enough to own such machines. Fixes broken suspend/resume on an Acer Aspire One D27-1375 with GMA36x0 reported by Sean Cody. ok deraadt@ mlarkin@
* Limit the "aperture needed" printf to ramdisks via RAMDISK_HOOKS.jsg2014-07-281-2/+3
| | | | | | Originally with SMALL_KERNEL until sebastia@ pointed out that not all ramdisks are built with SMALL_KERNEL. ok deraadt@ kettenis@
* The aperture needed test should be in vgafb as well as vga@pci.jsg2014-07-221-39/+1
| | | | | | Problem noticed/fix tested by sebastia@ on macppc. sparc64 problems in earlier diff pointed out by deraadt@ 'looks good' kettenis@ 'commit' deraadt@
* Print a line in dmesg to indicate if the aperture driver isjsg2014-07-121-2/+43
| | | | | | | | | | | | required to run X. This will be used by the installer to decide what value to set machdep.allowaperture to. For devices supported by i915 and radeon kms machdep.allowaperture will be set to 0. Systems that have a graphics device commonly found in servers (g200e*/aspeed/es1000 etc) will also not have the aperture enabled as they generally don't need to run X. ok deraadt@ kettenis@
* Remove real mode VGA repost option. It was used by nobody, and even if itmlarkin2014-06-011-17/+7
| | | | | | were to be enabled, it had a bug that prevented it from working anyway. ok deraadt@, kettenis@
* Reduce uvm include madness. Use <uvm/uvm_extern.h> instead ofmpi2014-03-281-3/+1
| | | | | | <uvm/uvm.h> if possible and remove double inclusions. ok beck@, mlarkin@, deraadt@
* No need to include <sys/lock.h> when only <sys/rwlock.h> is needed,mpi2014-03-261-1/+2
| | | | | | so remove the former and include the latter instead of pulling it in <dev/pci/agpvar.h>. This header already requires various other types anyway. While here remove unneeded headers.
* The AGP ioctl interface is gone; remove the header file as well.kettenis2014-03-171-2/+1
| | | | ok matthieu@
* Add a DVACT_WAKEUP op to the *_activate() API. This is called after thederaadt2013-12-061-5/+2
| | | | | | | | kernel resumes normal (non-cold, able to run processes, etc) operation. Previously we were relying on specific DVACT_RESUME op's in drivers creating callback/threads themselves, but that has become too common, indicating the need for a built-in mechanism. ok dlg kettenis, tested by a sufficient amount of people
* Add a port of the TTM and Radeon DRM code from Linux 3.8.13.jsg2013-08-121-8/+2
| | | | | | | | | | | | | | Includes kernel modesetting, framebuffer console and support for newer hardware. Firmware needs to be present for acceleration and in some cases modesetting to work. It can be installed via fw_update or manually via pkg_add. With lots of help from kettenis@ some macppc bits from mpi@ and some ttm refcount/queue bits from FreeBSD. Thanks to M:Tier and the OpenBSD Foundation for sponsoring this work.
* Stop rePOSTing devices supported by inteldrm(4). The driver now properlykettenis2013-03-261-13/+1
| | | | | | | restores the graphics mode and we should avoid running BIOS code whenever possible as it isn't guaranteed to work and might actually hurt. ok jsg@, deraadt@
* Provide a way for *drm(4) to prevent the VGA text console wsdisplay(4) instancekettenis2013-03-181-4/+5
| | | | | | from attaching after it has taken over control of the VGA hardware. ok mpi@
* Reorder code such that wsdisplay(4) attaches after drm(4).kettenis2013-03-041-3/+4
| | | | | | | Preparation for framebuffer console support on amd64/i386. tested by many ok mpi@
* Revamp the sequences for suspend/hibernate -> resume so that the codederaadt2012-10-081-1/+4
| | | | | | | | | | paths are reflexive. It is now possible to fail part-way through a suspend sequence, and recover along the resume code path. Split DVACT_SUSPEND by adding a new DVACT_POWERDOWN method is used after hibernate (and suspend too) to finish the job. Some drivers must be converted at the same time to use this instead of shutdown hooks (the others will follow at a later time) ok kettenis mlarkin
* Split out the bar functions required to attach drm(4) to share themmpi2012-08-221-140/+3
| | | | | | with macppc's vgafb(4) and maybe later on sparc64 drivers too. suggested by and ok kettenis@
* Spacing nit.oga2011-04-141-3/+3
|
* For the time being repost Intel clarkdale IGD.oga2011-04-141-8/+9
| | | | | | | | | | | | | | Arrandale (on laptop i3 and i5) was already doing this, but Clarkdale (the desktop chipsets) wasn't. This gives mikeb@'s desktop a chance to get the video back on resume. While here, remove the vendor/subvendor ids from the Arrandale entry. Just because someone doesn't have the same laptops as tested doesn't mean inteldrm magically has the ability to restore the graphics chip. This is possible to do without repost but fiddly and will take me a while to sort out, so just repost the whole sodding lot for now. ok ketteis@, deraadt@, mikeb@
* Kill pmap_phys_address(), and force every driver's mmap() routine to returnmiod2010-12-261-2/+2
| | | | | | | a physical address [more precisely, something suitable to pass to pmap_enter()'sphysical address argument]. This allows MI drivers to implement mmap() routines without having to know about the pmap_phys_address() implementation and #ifdef obfuscation.
* Add DVACT_QUIECE support. This is called before splhigh() and beforederaadt2010-08-311-1/+4
| | | | | | | | DVACT_SUSPEND, therefore DVACT_QUIECE can do standard sleeping operations to get ready. Discussed quite a while back with kettenis and jakemsr, oga suddenly needed it as well and wrote half of it, so it was time to finish it. proofread by miod.
* fix broken english in commented out printf.miod2010-08-081-2/+2
|
* Try to save the vga hardware state around suspend, and also redisplay themiod2010-08-081-11/+166
| | | | | textmode video memory contents if we had to POST the vga bios. ok deraadt@ kettenis@
* repost hp g62marco2010-08-061-1/+6
| | | | ok deraadt
* re-post all ATI and all PowerVR (with an annoying message)deraadt2010-08-041-24/+16
| | | | ok kettenis oga pirofti
* Add missing brace.matthew2010-08-041-1/+2
| | | | ok deraadt@
* Print annoying stuff when re-posting the video, so that people willderaadt2010-08-041-2/+4
| | | | | eventually want to remove their video cards from the list here. ok kettenis
* Repost ATI Radeon HD4500 on HP Pavilion dv7-3160us using the emulator,mlarkin2010-07-271-1/+6
| | | | | in the same style we have done for all other ATI Radeon devices found so far. Fixes video on said machine on resume.
* Repost ATI FireGL M24 using the emulator. This card is seen on some IBMmlarkin2010-07-211-1/+6
| | | | Thinkpad T43p models (and likely others).
* VGA repost for ATI Radeon X1250IGP (as found on Gateway netbooks andmlarkin2010-07-201-1/+6
| | | | | others). Repost via emulator or real mode code, either one works. Used the emulator to keep it consistent with other Radeon devices already listed.
* Let vga_pci.c build in kernel configs without acpi. ok kettenis@matthieu2010-07-141-6/+9
|
* Add Lenovo ThinkPad X100e quirk, from Brad.pirofti2010-07-021-1/+6
|
* Switch to nitems for the table, save some space. `Looks good' deraadt@.pirofti2010-07-021-8/+2
|
* Repost T510 video using the emulator.mlarkin2010-07-011-1/+6
| | | | ok deraadt@
* It seems the x200s doesn't need the video bios call from locore.pirofti2010-07-011-6/+1
| | | | | | Retested on yuo's machine with a clean kernel and it works fine without the hack. This should also fix the issues other x200s users were seeing with resuming from X.
* See, I said the #ifdef's are a confusing maze -- they confused me.deraadt2010-07-011-4/+4
|
* Make this compile with SMALL_KERNEL. The #ifdef farm this produces shouldderaadt2010-07-011-4/+4
| | | | probably be cleaned up...
* Add a look-up table for machines that have special vga cards. This table willpirofti2010-07-011-1/+75
| | | | | | | | tell, based on vendor/product/subvendor/subproduct ids, how the video reposting should be done: via the emulator or the bios video call in locore. The default is to do none of those, which is how most machines work. Okay kettenis@, deraadt@.
* Fix previous; pointed out by stsp@kettenis2009-11-281-2/+1
|
* Make sure we pass on DVACT_SUSPEND and DVACT_RESUME requests to our childrenkettenis2009-11-281-1/+21
| | | | | | | | such that inteldrm(4) stands a chance at actually saving and restoring its state. Makes it possible to start X after a suspend/resume cycle on my Dell laptop with Intel graphics. ok jsg@, miod@
* Remove the last VGA_POST defines with X86EMU. Okay deraadt@.pirofti2009-06-061-3/+3
|
* Add vga bios repost support. Fetched from the NetBSD tree mostly.pirofti2009-06-061-1/+11
| | | | | | | | | | Tested on multiple i386 and it works, amd64 works also with a few exceptions that will get fixed. The initial effort of importing was done by oga@, thanks! Lots of testing and debugging by mlarkin@ and me. Okay deraadt@, oga@, mlarkin@.
* Make sure to fail WSDISPLAYIO_[GS]ETPARAM if it is not handled.miod2009-06-031-3/+7
|
* Add acpivideo support. This adds brightness support for all laptopspirofti2009-06-031-1/+19
| | | | | | | | | | | | | | | except thinkpads, they will use the acpithinkpad driver. The driver is also hooked into wsconsole. So brightness can be adjusted via: $ wsconsctl display.brightness=<percentage> This is very helpfull on some laptops that have a nasty bios and get two steps instead of one when pressing the brightness button. Tested on various dell, fujitsu, acer, samsung and other laptops. Okay marco@, miod@. Suggestions from kettenis@. Lots of reviews and help from miod@, thanks!
* Do not go one bar too far down the road; found by Parfait; ok ogaderaadt2009-06-021-2/+2
|
* Move the drm drivers over from:oga2008-11-221-5/+5
| | | | | | | | | | | | | | | | vga1 at pci0 inteldrm0 at vga1 to vga1 at pci0 inteldrm0 at vga1 drm0 at inteldrm0 i.e. a similar scheme to audio(4) where the interface attaches on top of the wildly different drivers. This helps to clean up the code a lot (more is coming) and help me start to move drm to being essentially bus independent, which will help in the future.
* Rework that way that agp attaches.oga2008-11-091-36/+17
| | | | | | | | | | | | | | | | | previously, we had a static list of pcidevs and which agp driver would be interanlly attached. Instead, split the agp drivers so they work like audio(4), where we attach a driver, which sets up some callbacks and initial state, then attaches the interface (agp(4)). Since this allows us to attach different drivers in different places, and give them /proper/ probe functions move most of the drivers back to attaching at pchb, where they should, and intagp (formerly agp_i810) stays attaching at vga, since it's part of the intel integrated graphics chips. Diff shrinks the kernel slightly, gets rid of the annoying "no integrated graphics" warning, and allows more cleanup later. Tested by many. fix for alpha build (the only other vga_pci.c consumer) suggested by miod.
* Kill dmesg spam. Since we can't guarantee that a device is capable ofoga2008-08-121-10/+2
| | | | | | having a drm driver, don't print when we fail to attach one. stops the "drm at vga? not supported" spam people are seeing.