Home | History | Annotate | Download | only in drm
History log of /src/sys/external/bsd/drm2/drm/drm_scatter.c
RevisionDateAuthorComments
 1.9  19-Dec-2021  riastradh drm: Make some legacy UMS crap build.
 1.8  19-Dec-2021  riastradh Remove last users of drmP.h.
 1.7  19-Dec-2021  riastradh Missing includes, conditionalize on drm legacy

Might want to remove drm legacy code entirely later.


Author: Maya Rashish <maya@NetBSD.org>
 1.6  19-Dec-2021  riastradh Include drm_internal.h by "../dist/drm/drm_internal.h".
 1.5  27-Aug-2018  riastradh drm_sg_* legacy
 1.4  07-Feb-2018  mrg branches: 1.4.2; 1.4.4;
XXX: add a NULL init to avoid a GCC 6 maybe uninit warning.
 1.3  16-Jul-2014  riastradh branches: 1.3.4; 1.3.22;
Make it build and boot on my test machines.

Screen blanks on boot on the Ivy Bridge system with

DRM error in cpt_serr_int_handler: PCH transcoder A FIFO underrun

But after that everything is OK. Appears to be an upstream problem.
To investigate...

I think there's a cache flushing issue somewhere -- there are little
display artefacts on my T60.
 1.2  18-Mar-2014  riastradh branches: 1.2.2; 1.2.4; 1.2.6;
Merge riastradh-drm2 to HEAD.
 1.1  24-Jul-2013  riastradh branches: 1.1.2;
file drm_scatter.c was initially added on branch riastradh-drm2.
 1.1.2.3  08-Sep-2013  riastradh Avoid the PAGE_MASK mess in drm_gem_vm.c, drm_scatter.c, & drm_vm.c.
 1.1.2.2  24-Jul-2013  riastradh Use kmem for drm_sg_mem records in local drm_scatter.c.
 1.1.2.1  24-Jul-2013  riastradh Add local drm_scatter.c.
 1.2.6.2  22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.2.6.1  18-Mar-2014  yamt file drm_scatter.c was added on branch yamt-pagecache on 2014-05-22 11:40:55 +0000
 1.2.4.2  18-May-2014  rmind sync with head
 1.2.4.1  18-Mar-2014  rmind file drm_scatter.c was added on branch rmind-smpnet on 2014-05-18 17:46:00 +0000
 1.2.2.1  10-Aug-2014  tls Rebase.
 1.3.22.1  01-Sep-2018  martin Pull up following revision(s) (requested by riastradh in ticket #1003):

sys/external/bsd/drm2/dist/drm/i915/intel_sdvo.c: revision 1.8
sys/external/bsd/drm2/dist/drm/ttm/ttm_tt.c: revision 1.10
sys/external/bsd/drm2/drm/drm_scatter.c: revision 1.4
sys/external/bsd/drm2/dist/drm/i915/i915_reg.h: revision 1.2
sys/external/bsd/drm2/linux/linux_ww_mutex.c: revision 1.3
sys/external/bsd/drm2/linux/linux_ww_mutex.c: revision 1.4
sys/external/bsd/drm2/linux/linux_idr.c: revision 1.6

Pull in upstream commit:
Author: Ville Syrj=E4l=E4 <ville.syrjala%linux.intel.com@localhost>
Date: Mon Jun 9 16:20:46 2014 +0300
drm/i915: Avoid div-by-zero when pixel_multiplier is zero
On certain platforms pixel_multiplier is read out in
.get_pipe_config(), but it also gets used to calculate the
pixel clock in intel_sdvo_get_config(). If the pipe is disabled
but some SDVO outputs are active, we may end up dividing by zero
in intel_sdvo_get_config().
Fixes https://bugs.freedesktop.org/show_bug.cgi?id=3D76520
Tweak slightly sketchy logic in linux_idr.
1. idr_preload can fail if you don't set __GFP_WAIT.
2. If idr_preload fails, it is wrong for idr_alloc to assert.
3. There is no way for idr_alloc to know what flags idr_preload got.
Probably won't *fix* any bugs, but if there is a bug with a missing
__GFP_WAIT, then we will learn about a trifle sooner.
Fix error branch in ttm_dma_tt_init to avoid double-free.
Should fix symptom of PR kern/52438, but who knows what underlying
problem causes us to reach the error branch in the first place.
Fix lockdebug_locked annotations.
When thread A grants ownership to thread B waiting with a context,
thread B needs to assert lockdebug_locked; otherwise, when it
releases, lockdebug_unlocked thinks it's releasing an unlocked
ww_mutex.

Fixes LOCKDEBUG failure with radeon noticed by martin@.

more const

XXX: add a NULL init to avoid a GCC 6 maybe uninit warning.

Remove UB from definition of symbols in i915_reg.h
Kernel Undefined Behavior Sanitizer enforces more warnings in build time.
This makes the build fatal in the drm/i915 code in:
- intel_ddi_put_crtc_pll(),
- intel_ddi_clock_get(),
- intel_ddi_pll_enable(),
- intel_ddi_setup_hw_pll_state().
The error message in all the cases says:
error: case label does not reduce to an integer constant
Set the type of the value left shifted to unsigned.
This change is required to build NetBSD/amd64 with KUBSan.
 1.3.4.2  20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.3.4.1  16-Jul-2014  tls file drm_scatter.c was added on branch tls-maxphys on 2014-08-20 00:04:20 +0000
 1.4.4.1  10-Jun-2019  christos Sync with HEAD
 1.4.2.1  06-Sep-2018  pgoyette Sync with HEAD

Resolve a couple of conflicts (result of the uimin/uimax changes)

RSS XML Feed