summaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)AuthorFilesLines
2020-07-27Fix for DRI1 initialization failureKevin Brace3-16/+38
commit a245948 (Map FB during screen initialization rather than pre-initialization) broke DRI1 initialization code. This was due to frame buffer no longer being mapped prior to DRI1 initialization. Now, frame buffer is mapped prior to DRI1 initialization. Signed-off-by: Kevin Brace <kevinbrace@gmx.com>
2020-04-20Update KM400 chipset support identification text for the log fileKevin Brace1-1/+1
Signed-off-by: Kevin Brace <kevinbrace@gmx.com>
2020-04-20HI (Hardware Icon) based cursor partial fix for CLE266 / KM400 chipsetKevin Brace1-4/+13
There are still some platforms where the cursor will not be displayed, but it works on some, so it is better if the code get committed. Signed-off-by: Kevin Brace <kevinbrace@gmx.com>
2020-04-04Revert commit 8484549Kevin Brace3-103/+7
In development code adding hardware cursor (bi-color hardware cursor) support for older devices got committed accidentally. Signed-off-by: Kevin Brace <kevinbrace@gmx.com>
2020-04-03Version bumped to 0.6.223Kevin Brace3-7/+103
Signed-off-by: Kevin Brace <kevinbrace@gmx.com>
2020-04-02Unify IGA1 and IGA2 HI (Hardware Icon) cursor callbacksKevin Brace1-116/+53
Signed-off-by: Kevin Brace <kevinbrace@gmx.com>
2020-04-01Use only one storage location for HI (Hardware Icon) based cursorKevin Brace1-3/+11
This eliminates duplicated second storage location for HI based cursor. Signed-off-by: Kevin Brace <kevinbrace@gmx.com>
2020-04-01Eliminate variable type compilation warning in 64-bit environmentKevin Brace1-2/+3
Signed-off-by: Kevin Brace <kevinbrace@gmx.com>
2020-04-01Fix for KMS mode CLE266 and KM400 chipsets HI (Hardware Icon) cursorKevin Brace1-21/+15
The HI cursor is still broken in UMS mode for CLE266 and KM400 chipsets. Signed-off-by: Kevin Brace <kevinbrace@gmx.com>
2020-03-23Align cursor storage to the cursor storage's sizeKevin Brace1-2/+9
Signed-off-by: Kevin Brace <kevinbrace@gmx.com>
2020-03-23Move duplicated EXA related code into via_exa.cKevin Brace4-72/+38
Signed-off-by: Kevin Brace <kevinbrace@gmx.com>
2020-03-23Move viaEXAOffscreenAlloc() to via_exa.cKevin Brace3-26/+30
All EXA related code should be inside via_exa.c. Signed-off-by: Kevin Brace <kevinbrace@gmx.com>
2020-03-23Remove the declaration of EXAOPT_MIGRATION_HEURISTIC macroKevin Brace1-2/+0
Signed-off-by: Kevin Brace <kevinbrace@gmx.com>
2020-03-23Really pass the alignment requirement when allocating memoryKevin Brace1-7/+14
In UMS no acceleration and non-DRI1 EXA acceleration situations, drm_bo_alloc() was not actually passing the alignment requirement to function calls that allocate memory. They were blindly specifying 32 byte alignment. Signed-off-by: Kevin Brace <kevinbrace@gmx.com>
2020-03-23Change several drm_bo_alloc() input parameters typeKevin Brace2-3/+4
Signed-off-by: Kevin Brace <kevinbrace@gmx.com>
2020-03-12Cursor disappearance fix for CN400 / PM800 chipsetsKevin Brace1-7/+0
It appears that CN400 / PM800 chipsets have only 1 hardware icon rather than 2 for newer graphics engines. Note that hardware icon is used as cursor rather than the "real" hardware cursor. The fix also applies to CN333 and PN800 chipsets as well. The fix was tested on VIA Technologies C3 processor based Wyse Vx0 thin client that has CN333 chipset. Suggested-by: Eric Kudzin <knoppix1337@yahoo.com> Tested-by: Eric Kudzin <knoppix1337@yahoo.com> Signed-off-by: Kevin Brace <kevinbrace@gmx.com>
2020-03-11Redo ClockRange / ClockRanges compilation fixKevin Brace1-2/+2
Use the actual X.Org X Server version for determining whether or not ClockRange or ClockRanges should be used. This commit is effectively redoing commit 8bc53d8 (Compilation hooks to support ClockRange and ClockRanges). This commit and commit 8bc53d8 are ultimately related to X Server commit 326429b (modes: Remove the ClockRanges type). Signed-off-by: Kevin Brace <kevinbrace@gmx.com>
2020-03-09Pass a ScrnInfoPtr type pointer when calling viaUMSAccelInit()Kevin Brace3-4/+3
Signed-off-by: Kevin Brace <kevinbrace@gmx.com>
2020-03-09Reject color depth other than 8, 16, or 24 bitsKevin Brace1-5/+0
Color depth and bpp (Bits Per Pixel) are not the same. VIA Technologies Chrome IGP does not support 32 bit color depth. It does, however, support 24 bit color depth and 32 bit bpp. Signed-off-by: Kevin Brace <kevinbrace@gmx.com>
2020-03-09viaUnmapMMIO() should now be a static functionKevin Brace1-1/+1
Commit 5622df16bebeffa50442c5e566d37d71b658f910 (Add viaUMSPreInitExit() for unmapping MMIOs) should have declared viaUnmapMMIO() as a static function. Signed-off-by: Kevin Brace <kevinbrace@gmx.com>
2020-03-09Add viaUMSPreInitExit() for unmapping MMIOsKevin Brace3-2/+28
This is for releasing MMIOs when exiting VIAPreInit() in UMS mode. Signed-off-by: Kevin Brace <kevinbrace@gmx.com>
2020-03-09Minor code tweaks to VIAPreInit()Kevin Brace1-16/+17
Signed-off-by: Kevin Brace <kevinbrace@gmx.com>
2020-03-09Add viaUMSDestroy() for tearing down UMS specific resourcesKevin Brace3-6/+17
Signed-off-by: Kevin Brace <kevinbrace@gmx.com>
2020-03-09Map FB during screen initialization rather than pre-initializationKevin Brace2-6/+8
Signed-off-by: Kevin Brace <kevinbrace@gmx.com>
2020-03-06Separate FB (un)mapping code from MMIO (un)mapping codeKevin Brace3-93/+142
Signed-off-by: Kevin Brace <kevinbrace@gmx.com>
2020-03-06Unmap MMIO and FB when tearing down the DDXKevin Brace1-0/+9
Signed-off-by: Kevin Brace <kevinbrace@gmx.com>
2020-02-28Move iga*_crtc_funcs extern declaration to src/via_ums.hKevin Brace2-4/+2
Signed-off-by: Kevin Brace <kevinbrace@gmx.com>
2020-02-28Fix for GCC 10 activating stricter check for extern variables / structsKevin Brace3-4/+4
GCC 10 now activates -fno-common option by default. This results in link time errors. Since GCC 10 is still not officially released, this link time behavior was reproduced on older GCC releases by adding -fno-common option manually to the generated code compilation script. Suggested-by: Xavier Bachelot <xavier@bachelot.org> Signed-off-by: Kevin Brace <kevinbrace@gmx.com>
2020-02-28Initialize memPhysBase member of ScrnInfoRec struct inside viaUMSCreate()Kevin Brace1-14/+14
Signed-off-by: Kevin Brace <kevinbrace@gmx.com>
2020-02-28Initialize fbOffset member of ScrnInfoRec struct inside viaUMSCreate()Kevin Brace1-5/+5
Signed-off-by: Kevin Brace <kevinbrace@gmx.com>
2020-02-28Remove discontinued functions from src/via_driver.hKevin Brace1-4/+0
Signed-off-by: Kevin Brace <kevinbrace@gmx.com>
2020-02-13Rearrange some code inside viaUMSCreate()Kevin Brace1-12/+16
Signed-off-by: Kevin Brace <kevinbrace@gmx.com>
2020-02-13Use EXA offscreen memory manger when EXA is in useKevin Brace2-24/+77
EXA offscreen memory manager is used when DRM is not available. Signed-off-by: Kevin Brace <kevinbrace@gmx.com>
2020-02-13Move no DRM UMS FB initialization code into viaInitFB()Kevin Brace1-51/+72
Signed-off-by: Kevin Brace <kevinbrace@gmx.com>
2020-02-13Use pScrn->pScreen inside viaUMSCreate()Kevin Brace1-4/+3
Signed-off-by: Kevin Brace <kevinbrace@gmx.com>
2020-02-13Change error handling code for VIADRIKernelInit() inside viaUMSCreate()Kevin Brace1-1/+2
Signed-off-by: Kevin Brace <kevinbrace@gmx.com>
2020-02-12Handle more of screen initialization inside viaUMSCreate()Kevin Brace2-60/+55
Signed-off-by: Kevin Brace <kevinbrace@gmx.com>
2020-02-12Remove obsolete code comment from via_memmgr.cKevin Brace1-9/+0
Signed-off-by: Kevin Brace <kevinbrace@gmx.com>
2020-02-12Rewrite viaOffScreenLinear()Kevin Brace2-10/+15
Signed-off-by: Kevin Brace <kevinbrace@gmx.com>
2020-02-11Update messages inside drm_bo_alloc()Kevin Brace1-9/+27
Signed-off-by: Kevin Brace <kevinbrace@gmx.com>
2020-02-10Change how error handling is done inside drm_bo_alloc()Kevin Brace1-63/+70
Signed-off-by: Kevin Brace <kevinbrace@gmx.com>
2020-02-10Initialize driSize member of VIARec struct inside VIADRI1ScreenInit()Kevin Brace2-4/+7
Signed-off-by: Kevin Brace <kevinbrace@gmx.com>
2020-02-10Initialize EXA before acceleration is initializedKevin Brace1-3/+6
Signed-off-by: Kevin Brace <kevinbrace@gmx.com>
2020-02-10Correct how viaUMSCreate() is invokedKevin Brace1-1/+4
The HAVE_DRI macro should have been used when referring to DRI2. Signed-off-by: Kevin Brace <kevinbrace@gmx.com>
2020-02-10Initialize frame buffer after screen parameters are mostly initializedKevin Brace1-47/+47
Signed-off-by: Kevin Brace <kevinbrace@gmx.com>
2020-02-03Call exaDriverAlloc() later inside viaInitExa()Kevin Brace1-2/+4
Signed-off-by: Kevin Brace <kevinbrace@gmx.com>
2020-02-03No need to zero clear EXA driver structKevin Brace1-2/+0
exaDriverAlloc() ensures that EXA driver struct is zero cleared. Signed-off-by: Kevin Brace <kevinbrace@gmx.com>
2020-02-03Unmap the allocated frame buffer before releasing it when winding downKevin Brace1-0/+1
Signed-off-by: Kevin Brace <kevinbrace@gmx.com>
2020-02-03Release off screen back frame buffer before hardware cursor storageKevin Brace1-8/+8
This code should have been implemented with commit ac4b39b1c6aafe089e741f039cceb3a5684764ef (Make off screen back frame buffer the last item to be allocated). Signed-off-by: Kevin Brace <kevinbrace@gmx.com>
2020-01-22Fix for commit 9a6d8615a8ca999528cad288d7858edf5834ae04Kevin Brace1-10/+8
Commit 9a6d8615a8ca999528cad288d7858edf5834ae04 (Minor code clean up inside viaUMSCreate()) introduced a bug that causes a screen initialization failure if the reserved VRAM is fairly small like 32 MB. Suggested-by: Eric Kudzin <knoppix1337@yahoo.com> Signed-off-by: Kevin Brace <kevinbrace@gmx.com>