summaryrefslogtreecommitdiff
path: root/src/i810_reg.h
AgeCommit message (Collapse)Author
2008-06-26Set the sync active bits like we're supposed to, matching the BIOS.Eric Anholt
(cherry picked from commit dc8ab9d35b261b6105a62949cfb47a3554531d0b)
2008-06-26Initial HDMI work. Not currently hooked up at startup.Eric Anholt
(cherry picked from commit beba1dd3561e38573ed9f507328caf7f8fb9f84a)
2008-06-26Add DisplayPort registers.Eric Anholt
(cherry picked from commit da58dc3b02999f3244d0eaf77180b828d85bd609)
2008-06-17Add support for Intel 4 series chipsets.Zhenyu Wang
(cherry picked from commit 1cfe769c74d1a3a392bf1aaaf5c2dcc8273daf66)
2008-06-04Set SDVO sync polarity to default on 965Hong Liu
Fix fd.o bug 15766
2008-05-28Fixup DSPARB for 855 & 945Jesse Barnes
It turns out 855 has a different DSPARB layout than 915+. And 945+ have more FIFO entries, so we have to allocate things differently. So on 855 split the FIFO evenly again between A & B planes, and do the same on 945, where we have a larger FIFO. Fixes an issue reported by Daniel Stone with the previous default value.
2008-05-26Handle display FIFOs betterJesse Barnes
Add some debug code to catch FIFO underruns, which are normally bugs (unless they occur during mode setting) and remove any plane C FIFO allocations, since we don't use that plane at all. We may eventually need to be a little smarter about this on platforms that use plane C for the popup.
2008-05-26Fixup power saving registersJesse Barnes
Update clock gating disable bits to match docs and allocate a power context memory area so that newer chips can save state and power down the render unit.
2008-05-20Revert "Add FIFO watermark regs to register dumper"Zhenyu Wang
This reverts commit 0c00a638ef57aa9d6a3047176b0bfad733f781f0. Those FIFO watermark regs are 945-ish, and cause problem on G35.
2008-05-13Add i915 support to intel_idle.Eric Anholt
2008-05-06Add FIFO watermark regs to register dumperJesse Barnes
2008-03-31Fix composite with mask using new compositing thread codeKeith Packard
Clean up register allocation to never overlap Always write 4 values for each texture vertex.
2008-03-13Initial panel fitting changesJesse Barnes
Basic support for panel fitting.
2008-02-26Fix SDVO I2C access on Mac Mini in EFI mode.Eric Anholt
The GMBUS was being left in SDVO pin access mode, which blocked our bit-banging access to those pins. Thanks to Peter Jones for quick debugging turnaround in getting this fixed.
2008-02-16Decode DSPCLK_GATE, dump PIPE*STAT, MI_MODE, MI_DISPLAY_POWER_DOWN, ↵Keith Packard
MI_ARB_STATE, MI_RDRET_STATE, ECOSKPD
2008-02-15Bug #14440: fix stolen mem size mask on i830MZhenyu Wang
For i830M stolen mem size mask should always be 0x70. Use 0xF0 for later chipsets should be ok, so behavior is identical to kernel agp.
2008-01-30Add detail on different units to intel_idle.Eric Anholt
2008-01-30Frame buffer compression support on new chipsetJesse Barnes
2008-01-09Update PIPELINE_SELECT instruction and surface state format for new chipsetZhenyu Wang
2008-01-09GTT access change for new integrated graphics deviceZhenyu Wang
2007-11-15Move fb compression reg definition into i810_reg.hZhenyu Wang
where we put MMIO control reg in, and shared with intel_reg_dump program.
2007-08-28Add register defines for hw binningKeith Packard
2007-08-03Tiled rendering & fbc fixes:Jesse Barnes
- actually enable tiling in DSP(A|B)CNTR if needed - add logic to EXA routines for tiled case (still needs work) - enable/disable fbc on DPMS events (meant moving functions higher in file) - fix fence register pitch programming (use correct pitch instead of kludged value)
2007-07-31Legacy backlight changes:Jesse Barnes
- add support for 965GM - make sure legacy enabled systems don't reduce the range of backlight values we can present to the user
2007-06-21Follow BIOS configuration for Legacy Backlight Brightness.Keith Packard
The backlight control in the LVDS controller can either operate in 'normal' mode or 'legacy' mode. In legacy mode, it uses the PCI config space register 0xf4 which can range from 0 to 0xff. In normal mode, it reads the range and current value from the BLC_PWM_CTL register.
2007-06-08Add description for how to use the frame and pixel counter registers.Keith Packard
The 24-bit frame and pixel counters were not described in detail and will be useful for DRM.
2007-06-05Add support for the G33, Q33, and Q35 chipsets.Wang Zhenyu
These chipsets require that the hardware status page be referenced by an offset in the GTT rather than a physical memory address, so the X Server allocates it rather than the DRM.
2007-05-12Deal with i830 CRT load detection which cannot use FORCE_BORDER.Keith Packard
Chips newer than the i830 can force the border color for the active period of the screen, allowing the load detection to easily see the right data. In addition, newer chips appear to have more sensible load detection hardware which either ignores inactive periods on the screen or performs some longer-term averaging. The i830 appears to provide unfiltered samples of the detected load. For the i830, then, emit a border at the bottom of the screen and, for load detection, simply turn it purple and wait for the current line to be within the border. Sample an entire scanline, counting the number of times the load detection sees a monitor. In my testing, the presence of a monitor will cause the detection to succeed every time, while the absense will cause it to fail about 75% of the time. The code here, checks for presence at least 75% of the time, which should be adequate. Also, as the new mode configuration code has already taken care to enable the CRT output, eliminate much of the load detection code which is simply duplicating functionality from the general mode setting code. This should result in faster load detection as this code will now run in no more than one frame time. It does burn the CPU the whole time though, polling the displayed scanline register.
2007-05-02Add DVO[ABC] register debugging.Eric Anholt
2007-04-30Allow physical-memory allocations within stolen memory.Eric Anholt
Because stolen memory happens to be a contiguous block of high system memory, we can just read the GTT entries for it to get physical addresses for our allocations there if needed. This reduces fragmentation of the aperture space, and will often reclaim up to 7 MB of memory that had been left unused since the simplified aperture manager was put in place, but without reintroducing the complexities of the old aperture manager.
2007-04-30Disable some clock gating functions documented to work incorrectly.Eric Anholt
2007-03-20Set the panel fitter to the right pipe on Crestline.Eric Anholt
2007-03-20Merge branch 'master' into crestlineEric Anholt
Conflicts: src/i810_reg.h src/i830_display.c
2007-03-20Attempt to fix single/dual-channel issues on i9xx LVDS panels.Eric Anholt
- Use the existing single/dual-channel state when available, as changing it doesn't appear to work out. - Set the power state of the CLKB and B0-B3 pairs according to whether choose to go dual-channel or not. - Restore the LVDS register at the appropriate point (before DPLLs are re-programmed.
2007-03-03LVDS dither control moved from PFIT to LVDS register for CrestlineKeith Packard
The LVDS register now contains lots of new controls for dual-channel LVDS control along with dither enabling. The PFIT register has a lot fewer controls as a result.
2007-03-02Add a WIP UploadToScreen implementation. This almost displays right.Eric Anholt
2007-02-28Many fixes to mode_get, mode_set, clock limits, and register dumps on i855.Eric Anholt
This should fix a number of issues with i855s, particularly with integrated LVDS panels.
2007-02-23Rework the video memory allocation.Eric Anholt
The previous allocator worked in multiple passes, with (at least) one of setting up allocations, another to attempt to adjust those for tiling, and then a pass to set up the offsets and fix them in memory. The new allocator is simpler, allocating memory immediately if possible, setting up tiling up front, and choosing offsets immediately. AGP memory is only allocated to back actual memory used, saving some memory that would have been allocated for padding previous. It will also allow dynamic freeing and reallocation of memory, which will be useful for framebuffer resizing.
2007-02-15Print the correct meaning of bit 30 of pipeconf for 965 in debug output.Eric Anholt
2007-02-15Detect core clock frequencies, to avoid double-wide mode when possible.Eric Anholt
Additionally, don't attempt to set double-wide on the 965, where there is no such thing any more (not that we'd ever see modes high enough to trigger it).
2007-02-01Improve register debugging output.Eric Anholt
This includes not reporting some fields on hardware where those bits are reserved, correcting one of the hardware error bit numbers, and reducing the severity of the debugging output warnings.
2007-01-16Add a settable backlight property for LVDS.Eric Anholt
This extends the output funcs to have a callback for when it's time to configure properties, and another for when the server has changed a property whose value isn't pending a mode set. (Pending properties are to be picked up by the driver at mode_set time).
2007-01-03Add interlace defines for pipeconf regsKeith Packard
2006-12-12Extend the error state reporting to cover ESR and decode PGTBL_ERR for 945.Eric Anholt
2006-12-12More debugging output for SDVO.Eric Anholt
2006-12-05Add a bunch of per-register debug code to i830DumpRegs().Eric Anholt
2006-11-30Preserve some GPIO bits that the docs tell us to.Eric Anholt
2006-11-30Merge branch 'restructure-outputs' into modesetting.Keith Packard
Outputs and Crtcs now have a driver-independent representation which should permit generic code to control RandR 1.2 and startup configuration.
2006-11-29Properly detect the GTT size on the G965.Eric Anholt
In the past, the GTT has always been sized just large enough to map the whole graphics aperture. However, apparently on the G965 that isn't the case, and it is actually 512KB on hardware with a 256MB aperture. This resulted in X not bothering to allocate memory for 256KB that it thought was already mapped into stolen memory, and thus garbage rendering (particularly visible in large video modes that displayed this unallocated memory). The kernel happens to get the right answer by hardwiring a 512KB GTT size already, but that may not be true on future hardware. Instead, we use a convenient field in PGETBL_CTL that's specifically for the GTT size rather than the aperture size, which gets us the answer we want.
2006-11-27Move crtc/output config to sub-structure.Keith Packard
Place crtc/output in separate structure at head of driver private structure. Use this from the config code to make it driver-independent. Still lots of effectively driver independent code that continues to use driver dependent stuff, but that will change.