Commit Graph

3724 Commits

Author SHA1 Message Date
riastradh de920ee0e9 drm: Fix missing newline in DRM_WARN (redux). 2021-12-24 15:26:35 +00:00
riastradh 1d2fb50490 Revert "drm: Fix missing newline in DRM_WARN."
Accidentally included more than I intended here.
2021-12-24 15:25:03 +00:00
riastradh 826f18790e drm: Fix missing newline in DRM_WARN. 2021-12-24 15:22:20 +00:00
riastradh f6111af65e drm: Sprinkle some assertions into sg dma logic. 2021-12-24 15:08:31 +00:00
riastradh 5f1e405741 i915: Use AcpiOsMapMemory, not bus_space_map, for opregion.
Needed because this appears in firmware-type memory mappings, which
are excluded from bus_space_map.

XXX pullup-9 (via manual patch since the code has changed a bit)
2021-12-24 15:08:09 +00:00
riastradh 98b16a05d6 i915: Restore uao_set_pgfl for i915 gem objects, lost in the merge.
Needed to ensure we allocate paddrs that the GPU can cope with.
2021-12-24 15:07:47 +00:00
riastradh 7ad0fcebe8 amdgpu: Sprinkle __diagused. 2021-12-24 11:19:55 +00:00
riastradh 074da94645 i915: Fix memory leak in active node allocation under #ifdef NetBSD.
Potential fix for PR kern/56573.
2021-12-24 00:14:03 +00:00
hannken dc1d79e615 Initialize crtc_state to suppress false warning it may be used uninitialized.
Ok: riastradh@
2021-12-23 17:11:41 +00:00
hannken fd8e2523ac Cast addr to uint64_t before printing.
Ok: riastradh@
2021-12-23 17:09:25 +00:00
thorpej 019ce3099d Reduce code duplication: kmem_cache_create() is now exactly the same as
kmem_cache_create_dtor() except for the dtor argument, so implement
the former in terms of the latter.
2021-12-22 18:04:53 +00:00
thorpej 4b941db446 Do the last change differently:
Instead of having a pre-destruct hook, put knowledge of passive
serialization into the pool allocator directly, enabled by PR_PSERIALIZE
when the pool / pool_cache is initialized.  This will guarantee that
a passive serialization barrier will be performed before the object's
destructor is called, or before the page containing the object is freed
back to the system (in the case of no destructor).  Note that the internal
allocator overhead is different when PR_PSERIALIZE is used (it implies
PR_NOTOUCH, because the objects must remain in a valid state).

In the DRM Linux API shim, this allows us to remove the custom page
allocator for SLAB_TYPESAFE_BY_RCU.
2021-12-22 16:57:28 +00:00
riastradh baff841034 drm: Omit local diff -- vmem is entirely a NetBSDism.
Use struct vmem rather than vmem_t to obviate need for header file
dependency.
2021-12-22 12:05:24 +00:00
thorpej 164d939d08 - For kmem_cache_create_dtor(), use a pre-destructor to issue the
synchronize_rcu() if the caller uses SLAB_TYPESAFE_BY_RCU.  A
  special pool allocator is not required in this case.
- Now that SLAB_TYPESAFE_BY_RCU does the right thing, no need to
  call synchronize_rcu() in __i915_request_dtor().
2021-12-21 19:07:09 +00:00
tnn 686787b11d files.radeon: add clang -Wno-format for radeon_uvd.c
int vs. short mismatch in UVD firmware version printf.
Also change some makeoptions conditional copypasta i915drmkms -> radeon.
2021-12-21 13:56:58 +00:00
tnn 44cb090166 drm: sprinkle some -Wno-unused-function for clang
915_sw_fence.c: for debug_fence_init_onstack
drm_mm.c: for rb_hole_size_to_node
intel_hdmi.c: for intel_hdmi_hdcp2_protocol
intel_guc_submission.c: for rq_prio
nouveau_nvkm_subdev_instmem_base.c: for fake_ioread32_native
nouveau_nvkm_subdev_mmu_vmmnv04.c: for nv04_vmm_pgt_pte
2021-12-21 12:55:23 +00:00
tnn 4e84a7b4f2 drm_device.h: don't redefine vmem_t 2021-12-21 12:28:34 +00:00
tnn 083d5954ae i915_scheduler.c: node_to_request: duplicate 'const' declaration specifier 2021-12-21 12:06:29 +00:00
tnn 3bb695cbde i915_gem_shmem.c: shmem_get_pages: fix uninitialize use of "noreclaim" 2021-12-21 12:00:40 +00:00
tnn 2861f484cb i915_drm_resume_early: initialize ret
clang -Wsometimes-uninitialized says uninitialized use
on line 2043 when if statement on line 2037 is false
2021-12-21 11:44:18 +00:00
skrll b378d10e65 Change the usb_mem API to take a bus_dma_tag_t in usb_allocmem instead of
a struct usbd_bus *.

This allows an HCD to use more than one tag.
2021-12-21 09:51:22 +00:00
chs 0f62531801 drm: add missing KERNEL_LOCK around calls to config_found(). 2021-12-20 20:34:58 +00:00
riastradh 750db9d21c i915: Obviate need for __diagused on variables in GEM_BUG_ON. 2021-12-20 19:54:07 +00:00
riastradh 23355edaeb i915: Mark a KASSERT-only variable __diagused.
Minor KNF fix while here.
2021-12-20 14:52:25 +00:00
riastradh 20b3eca72a drm: Apply the Intel pipe_drmhack in more places.
See sys/external/bsd/drm2/dist/drm/i915/intel/intel_display.h for
details.  Should reduce ctf type duplication a fair bit, maybe even
enough to get us under the 2^15 type limit.
2021-12-20 12:56:07 +00:00
simonb 224d7a563d Explicitly use -I$S/external/bsd/dwc2/dist for dwc2 instead of possibly
getting that include path via DRM.  Fixes evbmips cavium kernel build.
2021-12-20 11:54:32 +00:00
riastradh 47edd72abb drm: Simplify use of drm API for display on/off logic in drmfb. 2021-12-20 00:27:53 +00:00
riastradh 5dedc4ba80 drm: Fix return code interpretation in timed wait loop. 2021-12-20 00:27:42 +00:00
christos 64febd75f0 PR/56544: Andreas Gustafsson: Disable ACPI_LV_DEBUG_OBJECT; it is too chatty,
and was disabled in the previous version.
2021-12-19 17:51:08 +00:00
riastradh 19e8059779 linux: Define need_resched as alias for preempt_needed.
No need to open-code this (nor to do it slightly wrong).
2021-12-19 12:45:50 +00:00
riastradh 9b996268eb i915: Use BUS_DMA_COHERENT where Linux uses dma_alloc_coherent. 2021-12-19 12:45:43 +00:00
riastradh 5af7e2d526 nouveau: adjust the list of PCI devices to match
linux 5.6 drm supports all the cards previously listed as unsupported.
make those supported, and, add the newer list of unsupported (the
supported list goes to GTX 20 series.)


Author: phone <mrg@NetBSD.org>
Committer: Taylor R Campbell <riastradh@NetBSD.org>
2021-12-19 12:45:35 +00:00
riastradh fc432d49f0 drm: Sprinkle miscellaneous includes. 2021-12-19 12:44:43 +00:00
riastradh a9a08e053a drm: Restore local patch for struct drm_connector::physical_address. 2021-12-19 12:44:04 +00:00
riastradh a331185e6c drm: Allow drm_atomic_helper_wait_for_vblanks while cold.
This enables us to do a mode-switch before interrupts are running.
2021-12-19 12:43:52 +00:00
riastradh 3b32b9463a nouveau: Disable MSI on G84 devices.
Fails to switch modes with MSI, works without MSI, on T61p.
2021-12-19 12:43:45 +00:00
riastradh d7c52d51c4 rkdrm: Convert to atomic modesetting, as needed for bridges.
Author: Jared McNeill <jmcneill@invisible.ca>
Committer: Taylor R Campbell <riastradh@NetBSD.org>
2021-12-19 12:43:37 +00:00
riastradh ec9934c1c6 drm: Use {} instead of [] for drm prints.
Using [] confuses dmesg timestamp parsing.  We should maybe fix that,
but this will serve for now.
2021-12-19 12:43:22 +00:00
riastradh a445acf624 i915: For now, pretend gtt size is zero.
Something goes wrong with EXEC_OBJECT_PINNED in Mesa i965 brw bufmgr
if we expose this parameter; this is a sleazy workaround pending
diagnosis of the underlying problem.
2021-12-19 12:43:14 +00:00
riastradh 014f693803 drm: Work around busted kthread_join. 2021-12-19 12:43:05 +00:00
riastradh d5a509c4ce drm: Don't try to use sched->thread until it's initialized. 2021-12-19 12:42:58 +00:00
riastradh 69221f9383 drm: Fix error return for kthread_run: error pointer, not null. 2021-12-19 12:42:48 +00:00
riastradh f492e58097 drm: Omit needless local brace diff. 2021-12-19 12:42:40 +00:00
riastradh 30d3e3c2b7 drm: Take advantage of kthread interlock to reduce diff. 2021-12-19 12:42:32 +00:00
riastradh 1f420662fc drm: Rework Linux `kthread' abstraction to avoid race to sleep.
Requires passing in the caller's lock and condvar to kthread_run, but
for the one user that appears not to be an onerous requirement.
2021-12-19 12:42:25 +00:00
riastradh 52541e7601 drm: Trigger `spurious' wakeup for kthread_stop too. 2021-12-19 12:42:14 +00:00
riastradh 0a236df1cd drm: Mark variable as used only by trace point. 2021-12-19 12:42:06 +00:00
riastradh 879d72078d drm: add drm_dp_aux_fini; use it in i915 to fix missing mutex destroy.
Author: chuq <chs@NetBSD.org>
Committer: Taylor R Campbell <riastradh@NetBSD.org>
2021-12-19 12:41:54 +00:00
riastradh 8a8d48c06c drm: Omit bogus spin locking around kthread_stop, which blocks.
Blocking is not allowed while holding a spin lock, and there's
nothing here that needs a lock either.
2021-12-19 12:41:44 +00:00
riastradh 333afef598 amdgpu: Don't unmap doorbells if we didn't map them. 2021-12-19 12:41:33 +00:00