Up to [cvs.NetBSD.org] / src / sys / external / bsd / drm2 / dist / drm / nouveau
Request diff between arbitrary revisions
Keyword substitution: kv
Default branch: MAIN
nouveau: ashes to ashes, dust to dust, mutex inited must later destruct
Get nouveau compiling.
Various tweaks to get nouveau_drm.c and nouveau_gem.c building.
Merge linux-drm-v5-6-rc3
Import drm from Linux v5.6-rc3 (commit f8788d86ab28f61f7b46eb6be375f8a726783636) drivers/gpu/drm -> sys/external/bsd/drm2/dist/drm include/drm -> sys/external/bsd/drm2/dist/include/drm include/uapi/drm -> sys/external/bsd/drm2/dist/include/uapi/drm GPL exclusions in dist/drm: - amd/amdgpu/amdgpu_atpx_handler.c - arc/ - arm/ - armada/ - aspeed/ - atmel-hlcdc/ - bochs/ - bridge/ - cirrus/ - drm_dp_cec.c - drm_dp_mst_topology_internal.h - drm_edid_load.c - drm_format_helper.c - drm_gem_cma_helper.c - drm_gem_framebuffer_helper.c - drm_gem_shmem_helper.c - drm_gem_ttm_helper.c - drm_gem_vram_helper.c - drm_hdcp.c - drm_lease.c - drm_mipi_dbi.c - drm_simple_kms_helper.c - drm_sysfs.c - drm_trace.h - drm_vram_helper_common.c - drm_writeback.c - etnaviv/ - exynos/ - fsl-dcu/ - gma500/ - hisilicon/ - i2c/tda9950.c - i2c/tda998x_drv.c - i915/gt/selftest_context.c - i915/gt/selftest_engine.c - i915/gt/selftest_engine.h - i915/gt/selftest_engine_cs.c - i915/gt/selftest_engine_pm.c - i915/i915_trace.h - i915/selftests/i915_live_selftests.h - i915/selftests/i915_mock_selftests.h - i915/selftests/i915_perf_selftests.h - i915/selftests/lib_sw_fence.h - imx/ - ingenic/ - lima/ - mcde/ - mediatek/ - meson/ - mgag200/ - msm/ - mxsfb/ - omapdrm/ - panel/ - panfrost/ - pl111/ - radeon/radeon_atpx_handler.c - rcar-du/ - rockchip/ - selftests/drm_cmdline_selftests.h - selftests/drm_modeset_selftests.h - selftests/test-drm_cmdline_parser.c - selftests/test-drm_damage_helper.c - selftests/test-drm_dp_mst_helper.c - selftests/test-drm_format.c - selftests/test-drm_framebuffer.c - selftests/test-drm_modeset_common.c - selftests/test-drm_modeset_common.h - selftests/test-drm_plane_helper.c - selftests/test-drm_rect.c - shmobile/ - sti/ - stm/ - sun4i/ - tegra/ - tilcdc/ - tiny/ - tve200/ - udl/ - v3d/ - vc4/ - virtio/virtgpu_trace.h - virtio/virtgpu_trace_points.c - vkms/ - vmwgfx/device_include/vmware_pack_begin.h - vmwgfx/device_include/vmware_pack_end.h - zte/ Exceptions -- these all appear to be files to which someone added an SPDX license header automatically by a script that is not aware of the default MIT licensing under drivers/gpu/drm: - ast/ast_dp501.c - ast/ast_dram_tables.h - lib/drm_random.c - lib/drm_random.h - i915/display/intel_acpi.c - i915/selftests/mock_gem_device.h - i915/selftests/i915_mock_selftests.h - i915/selftests/i915_live_selftests.h - r128/ati_pcigart.h - selftests/drm_mm_selftests.h - selftests/test-drm_mm.c - vmwgfx/device_include/vm_basic_types.h GPL exclusions in dist/include/drm: - bridge - drm_client.h - drm_fb_cma_helper.h - drm_format_helper.h - drm_gem_cma_helper.h - drm_gem_shmem_helper.h - drm_gem_ttm_helper.h - drm_gem_vram_helper.h - drm_lease.h - drm_mipi_dbi.h - drm_mipi_dsi.h - drm_of.h - drm_simple_kms_helper.h - drm_sysfs.h - drm_writeback.h - gma_drm.h - i2c/tda998x.h - i915_mei_hdcp_interface.h - intel-gtt.h Exceptions: - drm_agpsupport.h - was in original drm; wrong spdx header auto-added GPL exclusions in dist/include/uapi/drm: - armada_drm.h - etnaviv_drm.h - exynos_drm.h - lima_drm.h - omap_drm.h Exceptions: - i810_drm.h - was in original drm; spdx header is wrong
Merge changes from current as of 20200406
Sync with head.
Add LIST_HEAD to <linux/nbsd-namespace.h> too.
Use a header file hack to cope with Linux/NetBSD namespace clashes. Currently serves for: ALIGN mutex_init mutex_destroy
Sync with HEAD
Pull up following revision(s) via patch (requested by mrg in ticket #1242): sys/external/bsd/common/include/linux/err.h: revision 1.3 sys/external/bsd/drm2/include/drm/drm_wait_netbsd.h: revision 1.15 sys/external/bsd/common/include/linux/errno.h: revision 1.4 sys/external/bsd/drm2/dist/drm/nouveau/nouveau_drm.c: revision 1.17 sys/external/bsd/drm2/linux/linux_ww_mutex.c: revision 1.6 sys/external/bsd/drm2/dist/drm/nouveau/nouveau_fence.c: revision 1.14 fix various problems i've seen where cv_*wait*() return ERESTART, which is -3 in netbsd, which we have mapped linux ERESTARTSYS to. this has a problem because linux code often returns errors and pointers in the same value, and pointer values between -4095 and - -1 are considered as error returns, but -3 ends up as 3 and thus is not considered an error, and mayhem ensues. with this in place my kabylake system seems actually stable, i have not triggered any of my prior issues in almost 4 weeks now. Taylor asked me to write up a description and then wrote most of the text below for me :-) In Linux code, we always work with ERESTARTSYS so the code meaning start over is a positive NetBSD errno safe for PTR_ERR/ERR_PTR. To achieve this: 1. adapt all cv_waits that return to Linux so they map ERESTART to ERESTARTSYS, and 2. adapt all returns to userland so they convert ERESTARTSYS to ERESTART. Leave EINTR and all other error codes alone.
fix various problems i've seen where cv_*wait*() return ERESTART, which is -3 in netbsd, which we have mapped linux ERESTARTSYS to. this has a problem because linux code often returns errors and pointers in the same value, and pointer values between -4095 and -1 are considered as error returns, but -3 ends up as 3 and thus is not considered an error, and mayhem ensues. with this in place my kabylake system seems actually stable, i have not triggered any of my prior issues in almost 4 weeks now. Taylor asked me to write up a description and then wrote most of the text below for me :-) In Linux code, we always work with ERESTARTSYS so the code meaning start over is a positive NetBSD errno safe for PTR_ERR/ERR_PTR. To achieve this: 1. adapt all cv_waits that return to Linux so they map ERESTART to ERESTARTSYS, and 2. adapt all returns to userland so they convert ERESTARTSYS to ERESTART. Leave EINTR and all other error codes alone.
Sync with HEAD, resolve a few conflicts
Expose nvif ioctl interface. nvif is a variable length (nested..) ioctl, so it doesn't match the usual drm_ioctl interface. linux uses a shim to override the ioctl function for nouveau to allow this, do the same. fixes 3D acceleration with nouveau. from riastradh.
Sync with HEAD Resolve a couple of conflicts (result of the uimin/uimax changes)
Draft support for drm prime.
Allow nvkm_client_map to map subregions. Linux ioremap does not care about overlapping mapped regions, but bus_space_map does. Since nouveau ioremaps the entire register space of BAR 0, and separately some subregions of it, we need to convey the bus addresses in question to it in order to bus_space_subregion. Kinda kludgey, but we don't care about running this in userland or anything. While here: initialize object->map.tag. Not physically necessary on x86 as long as the x86_io_mem_tag is nonull, so this won't fix any symptoms on x86, but it is wrong to leave it null.
Reduce diff a little. This code was already #ifndef __NetBSD__; the corresponding logic lives in nouveau_module.c.
Conditional here shouldn't be necessary now.
Ifdef out some stuff we don't need.
struct drm_bus abstraction is no more. Cope. struct drm_driver now has the bus-specific intr establish routine (called request_irq/free_irq to match Linux's style).
merge linux-drm-v4-4-143
Import drm from Linux v4.4.143 (commit a8ea6276d00555387deaaa5eaeb380cd5c17bdc9). drivers/gpu/drm -> sys/external/bsd/drm2/dist/drm include/drm -> sys/external/bsd/drm2/dist/include/drm include/uapi/drm -> sys/external/bsd/drm2/dist/uapi/drm GPL sources excluded.
update from HEAD
Pull up following revision(s) (requested by riastradh in ticket #1157): sys/external/bsd/drm2/dist/drm/nouveau/core/core/nouveau_core_subdev.c: revision 1.3 sys/external/bsd/drm2/dist/drm/nouveau/core/engine/device/nouveau_engine_device_base.c: revisions 1.9, 1.10 sys/external/bsd/drm2/dist/drm/nouveau/core/include/core/namedb.h: revision 1.2 sys/external/bsd/drm2/dist/drm/nouveau/core/subdev/bar/nouveau_subdev_bar_base.c: revisions 1.4, 1.5 sys/external/bsd/drm2/dist/drm/nouveau/core/subdev/instmem/nouveau_subdev_instmem_nv40.c: revision 1.3 sys/external/bsd/drm2/dist/drm/nouveau/nouveau_drm.c: revision 1.8 sys/external/bsd/drm2/dist/drm/nouveau/nouveau_drm.h: revision 1.4 sys/external/bsd/drm2/dist/drm/nouveau/nouveau_fence.c: revision 1.4 sys/external/bsd/drm2/dist/drm/nouveau/nouveau_nv10_fence.c: revision 1.3 sys/external/bsd/drm2/include/linux/delay.h: revision 1.4 sys/external/bsd/drm2/include/linux/spinlock.h: revision 1.7 sys/external/bsd/drm2/nouveau/files.nouveau: revision 1.14 sys/external/bsd/drm2/nouveau/nouveau_pci.c: revision 1.7 Set nouveau to a more reasonable debug level. Match the compile-time and default run-time settings in Linux. -- Pass a sensible device state pointer to nouveau suspend/resume ops. Gives nouveau half a chance of suspending and resuming -- not that it works on my test laptop yet, but it's a start. -- Fix bus_space_subregion error branch. Return error code, not 0 (!), on bus_space_subregion failure. In answer to `XXX error branch' comment: if nouveau_barobj_ctor fails, then the caller will call nouveau_barobj_dtor too. So there's no leak here. Unlikely to fix any observed bugs with nouveau -- there's no error branch in the Linux side here. But maybe it will catch some other bug earlier. -- Map the same mmio size as Linux does. Unlikely to have practical consequences -- just reduces differences in behaviour from upstream, to rule them out. -- Print error code for failure to map PRAMIN BAR. -- In msleep use mdelay if cold -- Use only the low 32 bits of the bar object's vma offset as intended. Should fix PR kern/50372, seen by everyone trying to use nouveau on amd64 with hardware that uses nv50-style BARs and not nvc0-style BARs. -- Destroy the lock before caller frees memory. -- Destroy spin locks appropriately. -- Destroy the mutex before free. -- Provide reader/writer semantics with recursive readers. -- Exclude VRAM and FIFO regions from MMIO register mapping. Nouveau maps those separately, and it is not trivial to convert those mappings to bus_space_subregion.
Sync with HEAD
Pull up following revision(s) (requested by riastradh in ticket #1080): sys/external/bsd/drm2/dist/drm/i915/intel_i2c.c: revision 1.14 sys/external/bsd/drm2/dist/drm/i915/intel_pm.c: revision 1.8 sys/external/bsd/drm2/dist/drm/i915/intel_sdvo.c: revision 1.7 sys/external/bsd/drm2/dist/drm/nouveau/nouveau_drm.c: revision 1.7 sys/external/bsd/drm2/dist/drm/nouveau/core/include/core/device.h: revision 1.5 sys/external/bsd/drm2/dist/drm/nouveau/core/subdev/bios/nouveau_subdev_bios_base.c: revision 1.3 sys/external/bsd/drm2/dist/drm/radeon/radeon_display.c: revision 1.5 sys/external/bsd/drm2/dist/drm/radeon/radeon_gem.c: revision 1.3 sys/external/bsd/drm2/dist/drm/radeon/radeon_i2c.c: revision 1.3 sys/external/bsd/drm2/dist/drm/radeon/radeon_kms.c: revision 1.3 sys/external/bsd/drm2/include/linux/pci.h: revision 1.21 sys/external/bsd/drm2/include/linux/platform_device.h: revision 1.7 sys/external/bsd/drm2/nouveau/nouveau_pci.c: revision 1.5 Use nv_device_base(dev) like other callers, not dev->pdev->dev. First step in fixing the struct device nonsense. This won't actually fix anything yet until we also fix nv_device_base. -- dev->dev, not &dev->pdev->dev. Latter is a charlatan, soon to meet judgment for its sins. -- dev->dev, not &dev->pdev->dev. Latter is a mistake that is all my fault. Oops. -- Eliminate Linux struct pci_dev::dev, struct platform_device::dev.
Pass a sensible device state pointer to nouveau suspend/resume ops. Gives nouveau half a chance of suspending and resuming -- not that it works on my test laptop yet, but it's a start.
Sync with HEAD (as of 26th Dec)
Pull up following revision(s) (requested by riastradh in ticket #1002): sys/external/bsd/drm2/dist/drm/nouveau/nouveau_drm.c: revision 1.6 sys/external/bsd/drm2/dist/drm/nouveau/core/engine/fifo/nouveau_engine_fifo_nve0.c: revision 1.5 nouveau_drm.c: - hook up an empty uvm_pagerops like radeon does. - hook up nouveau_ttm_mmap_object(). nouveau_engine_fifo_nve0.c: - if (cold), don't try to wait, but hard-spin until the timeout period. with these in place, i am able to get working text-console with nouveau! ok riastradh.
Eliminate Linux struct pci_dev::dev, struct platform_device::dev.
nouveau_drm.c: - hook up an empty uvm_pagerops like radeon does. - hook up nouveau_ttm_mmap_object(). nouveau_engine_fifo_nve0.c: - if (cold), don't try to wait, but hard-spin until the timeout period. with these in place, i am able to get working text-console with nouveau! ok riastradh.
Sync with HEAD
Pull up following revision(s) (requested by mrg in ticket #573): sys/external/bsd/common/include/linux/kernel.h: 1.5, 1.6 sys/external/bsd/drm2/dist/drm/drm_ioctl.c: 1.4 sys/external/bsd/drm2/dist/drm/drm_irq.c: 1.6-1.8 sys/external/bsd/drm2/dist/drm/i915/i915_dma.c: 1.13-1.15 sys/external/bsd/drm2/dist/drm/i915/i915_gem.c: 1.23-1.27 sys/external/bsd/drm2/dist/drm/i915/i915_gem_execbuffer.c: 1.5 sys/external/bsd/drm2/dist/drm/i915/intel_display.c: 1.14, 1.15 sys/external/bsd/drm2/dist/drm/i915/intel_dp.c: 1.10 sys/external/bsd/drm2/dist/drm/i915/intel_drv.h: 1.8 sys/external/bsd/drm2/dist/drm/i915/intel_i2c.c: 1.8-1.13 sys/external/bsd/drm2/dist/drm/i915/intel_pm.c: 1.6 sys/external/bsd/drm2/dist/drm/i915/intel_ringbuffer.c: 1.5, 1.6 sys/external/bsd/drm2/dist/drm/nouveau/core/engine/device/nouveau_engine_device_base.c: 1.4 sys/external/bsd/drm2/dist/drm/nouveau/core/engine/fifo/nouveau_engine_fifo_nvc0.c: 1.3, 1.4 sys/external/bsd/drm2/dist/drm/nouveau/core/engine/fifo/nouveau_engine_fifo_nve0.c: 1.3, 1.4 sys/external/bsd/drm2/dist/drm/nouveau/core/include/core/device.h: 1.4 sys/external/bsd/drm2/dist/drm/nouveau/core/include/subdev/mc.h: 1.2 sys/external/bsd/drm2/dist/drm/nouveau/core/include/subdev/pwr.h: 1.3, 1.4 sys/external/bsd/drm2/dist/drm/nouveau/core/os.h: 1.4, 1.5 sys/external/bsd/drm2/dist/drm/nouveau/core/subdev/bios/nouveau_subdev_bios_base.c: 1.2 sys/external/bsd/drm2/dist/drm/nouveau/core/subdev/bios/nouveau_subdev_bios_pll.c: 1.2 sys/external/bsd/drm2/dist/drm/nouveau/core/subdev/clock/nouveau_subdev_clock_base.c: 1.2 sys/external/bsd/drm2/dist/drm/nouveau/core/subdev/clock/nouveau_subdev_clock_nv50.c: 1.2 sys/external/bsd/drm2/dist/drm/nouveau/core/subdev/devinit/fbmem.h: 1.2 sys/external/bsd/drm2/dist/drm/nouveau/core/subdev/devinit/nouveau_subdev_devinit_nv04.c: 1.2 sys/external/bsd/drm2/dist/drm/nouveau/core/subdev/fb/nouveau_subdev_fb_nv50.c: 1.2 sys/external/bsd/drm2/dist/drm/nouveau/core/subdev/fb/nouveau_subdev_fb_nvc0.c: 1.2 sys/external/bsd/drm2/dist/drm/nouveau/core/subdev/fb/nv50.h: 1.2 sys/external/bsd/drm2/dist/drm/nouveau/core/subdev/fb/nvc0.h: 1.2 sys/external/bsd/drm2/dist/drm/nouveau/core/subdev/mc/nouveau_subdev_mc_base.c: 1.2, 1.3 sys/external/bsd/drm2/dist/drm/nouveau/core/subdev/mxm/nouveau_subdev_mxm_nv50.c: 1.2 sys/external/bsd/drm2/dist/drm/nouveau/core/subdev/pwr/nouveau_subdev_pwr_base.c: 1.3, 1.4 sys/external/bsd/drm2/dist/drm/nouveau/core/subdev/therm/nouveau_subdev_therm_ic.c: 1.2 sys/external/bsd/drm2/dist/drm/nouveau/core/subdev/timer/nouveau_subdev_timer_nv04.c: 1.2 sys/external/bsd/drm2/dist/drm/nouveau/core/subdev/vm/nouveau_subdev_vm_base.c: 1.2 sys/external/bsd/drm2/dist/drm/nouveau/core/subdev/vm/nouveau_subdev_vm_nv04.c: 1.2 sys/external/bsd/drm2/dist/drm/nouveau/core/subdev/vm/nouveau_subdev_vm_nv44.c: 1.2 sys/external/bsd/drm2/dist/drm/nouveau/core/subdev/vm/nv04.h: 1.2 sys/external/bsd/drm2/dist/drm/nouveau/nouveau_bo.h: 1.3 sys/external/bsd/drm2/dist/drm/nouveau/nouveau_drm.c: 1.4, 1.5 sys/external/bsd/drm2/dist/drm/nouveau/nouveau_fbcon.c: 1.2 sys/external/bsd/drm2/dist/drm/nouveau/nouveau_nv50_display.c: 1.3 sys/external/bsd/drm2/dist/drm/nouveau/nouveau_nv84_fence.c: 1.2 sys/external/bsd/drm2/dist/drm/nouveau/nouveau_ttm.c: 1.3 sys/external/bsd/drm2/dist/drm/nouveau/nouveau_ttm.h: 1.2 sys/external/bsd/drm2/dist/drm/nouveau/nouveau_vga.h: 1.2 sys/external/bsd/drm2/dist/drm/radeon/radeon_fence.c: 1.6-1.8 sys/external/bsd/drm2/dist/drm/radeon/radeon_pm.c: 1.3 sys/external/bsd/drm2/dist/drm/radeon/rs400.c: 1.3 sys/external/bsd/drm2/dist/drm/via/via_dmablit.c: 1.3, 1.4 sys/external/bsd/drm2/dist/drm/via/via_drv.h: 1.3 sys/external/bsd/drm2/dist/drm/via/via_irq.c: 1.3, 1.4 sys/external/bsd/drm2/dist/drm/via/via_video.c: 1.3, 1.4 sys/external/bsd/drm2/dist/include/drm/drmP.h: 1.10 sys/external/bsd/drm2/dist/include/drm/drm_crtc.h: 1.4 sys/external/bsd/drm2/dist/include/drm/drm_modes.h: 1.3 sys/external/bsd/drm2/dist/uapi/drm/i915_drm.h: 1.2 sys/external/bsd/drm2/drm/drm_cache.c: 1.4-1.6 sys/external/bsd/drm2/drm/drm_drv.c: 1.14 sys/external/bsd/drm2/drm/drm_module.c: 1.10 sys/external/bsd/drm2/drm/drm_sysctl.c: 1.5 sys/external/bsd/drm2/drm/drm_vma_manager.c: 1.2 sys/external/bsd/drm2/drm/drmfb.c: 1.1 sys/external/bsd/drm2/drm/files.drmkms: 1.10, 1.11 sys/external/bsd/drm2/i2c/drm_encoder_slave.c: 1.1 sys/external/bsd/drm2/i915drm/files.i915drmkms: 1.7, 1.10 sys/external/bsd/drm2/i915drm/intelfb.c: 1.11, 1.12 sys/external/bsd/drm2/include/asm/io.h: 1.4 sys/external/bsd/drm2/include/asm/unaligned.h: 1.2, 1.3 sys/external/bsd/drm2/include/drm/drm_encoder_slave.h: 1.1 sys/external/bsd/drm2/include/drm/drm_wait_netbsd.h: 1.7-1.11 sys/external/bsd/drm2/include/drm/drmfb.h: 1.1 sys/external/bsd/drm2/include/drm/drmfb_pci.h: 1.1, 1.2 sys/external/bsd/drm2/include/linux/bitops.h: 1.9 sys/external/bsd/drm2/include/linux/i2c.h: 1.7, 1.8 sys/external/bsd/drm2/include/linux/io-mapping.h: 1.5 sys/external/bsd/drm2/include/linux/moduleparam.h: 1.5 sys/external/bsd/drm2/include/linux/pci.h: 1.12-1.15 sys/external/bsd/drm2/include/linux/pm.h: 1.4 sys/external/bsd/drm2/include/linux/reboot.h: 1.2 sys/external/bsd/drm2/include/linux/slab.h: 1.5 sys/external/bsd/drm2/include/linux/string.h: 1.4 sys/external/bsd/drm2/include/linux/vgaarb.h: 1.3 sys/external/bsd/drm2/include/linux/ww_mutex.h: 1.10 sys/external/bsd/drm2/linux/files.drmkms_linux: 1.8 sys/external/bsd/drm2/linux/linux_i2c.c: 1.3 sys/external/bsd/drm2/linux/linux_ww_mutex.c: 1.1 sys/external/bsd/drm2/nouveau/files.nouveau: 1.5-1.8 sys/external/bsd/drm2/nouveau/nouveau_pci.c: 1.1-1.3 sys/external/bsd/drm2/nouveau/nouveau_pci.h: 1.1 sys/external/bsd/drm2/nouveau/nouveau_sysfs.c: 1.1 sys/external/bsd/drm2/nouveau/nouveau_vga.c: 1.1 sys/external/bsd/drm2/nouveau/nouveaufb.c: 1.1 sys/external/bsd/drm2/nouveau/nouveaufb.h: 1.1 sys/external/bsd/drm2/pci/drm_pci.c: 1.10-1.12 sys/external/bsd/drm2/pci/drm_pci_module.c: 1.4 sys/external/bsd/drm2/pci/drmfb_pci.c: 1.1-1.3 sys/external/bsd/drm2/pci/files.drmkms_pci: 1.5 sys/external/bsd/drm2/radeon/radeon_pci.c: 1.5-1.7 sys/modules/drmkms/Makefile: 1.8, 1.9 sys/modules/drmkms_linux/Makefile: 1.6 sys/modules/drmkms_pci/Makefile: 1.5 sync drm2 with HEAD.
Create the nouveau device object so the driver can start. I get a lot of messages on the console and then it hangs. Progress! Next to try with a breakfast console.
One last round for nouveau. It links!
Pull up following revision(s) (requested by riastradh in ticket #95): sys/external/bsd/drm2/dist/drm/nouveau/core/include/subdev/fb.h: revision 1.2 sys/external/bsd/drm2/dist/drm/nouveau/nouveau_nv10_fence.c: revision 1.2 sys/external/bsd/drm2/dist/drm/nouveau/core/subdev/bar/nouveau_subdev_bar_base.c: revision 1.2 sys/external/bsd/drm2/dist/drm/nouveau/core/include/engine/device.h: revision 1.2 sys/external/bsd/drm2/dist/drm/nouveau/core/include/subdev/pwr.h: revision 1.2 sys/external/bsd/drm2/dist/drm/nouveau/core/engine/nouveau_engine_xtensa.c: revision 1.2 sys/external/bsd/drm2/include/linux/bitops.h: revision 1.8 sys/external/bsd/drm2/dist/drm/nouveau/dispnv04/nouveau_dispnv04_tvnv17.c: revision 1.3 sys/external/bsd/drm2/dist/drm/nouveau/dispnv04/nouveau_dispnv04_tvmodesnv17.c: revision 1.3 sys/external/bsd/drm2/dist/drm/nouveau/core/include/core/device.h: revision 1.3 sys/external/bsd/drm2/include/drm/drm_agp_netbsd.h: revision 1.4 sys/external/bsd/drm2/include/linux/spinlock.h: revision 1.4 sys/external/bsd/drm2/include/linux/pm_runtime.h: revision 1.3 sys/external/bsd/drm2/dist/drm/nouveau/core/engine/crypt/nouveau_engine_crypt_nv98.c: revision 1.2 sys/external/bsd/drm2/nouveau/files.nouveau: revision 1.3 sys/external/bsd/drm2/dist/drm/nouveau/core/engine/disp/nouveau_engine_disp_dacnv50.c: revision 1.2 sys/external/bsd/drm2/dist/drm/nouveau/core/engine/fifo/nouveau_engine_fifo_nve0.c: revision 1.2 sys/external/bsd/drm2/dist/drm/nouveau/core/engine/disp/nouveau_engine_disp_nv50.c: revision 1.2 sys/external/bsd/drm2/dist/drm/nouveau/nouveau_gem.c: revision 1.3 sys/external/bsd/drm2/dist/drm/nouveau/nouveau_bo.c: revision 1.5 sys/external/bsd/drm2/dist/drm/nouveau/core/engine/perfmon/nouveau_engine_perfmon_base.c: revision 1.2 sys/external/bsd/drm2/dist/drm/nouveau/core/engine/crypt/nouveau_engine_crypt_nv84.c: revision 1.2 sys/external/bsd/drm2/dist/drm/nouveau/nouveau_fence.c: revision 1.3 sys/external/bsd/drm2/dist/drm/nouveau/core/engine/graph/nouveau_engine_graph_nv50.c: revision 1.2 sys/external/bsd/drm2/dist/drm/nouveau/core/engine/fifo/nouveau_engine_fifo_nvc0.c: revision 1.2 sys/external/bsd/drm2/include/linux/vmalloc.h: revision 1.4 sys/external/bsd/drm2/dist/drm/nouveau/core/engine/fifo/nve0.h: revision 1.2 sys/external/bsd/drm2/dist/drm/nouveau/core/subdev/instmem/nv04.h: revision 1.2 sys/external/bsd/drm2/dist/drm/nouveau/nouveau_drm.c: revision 1.3 sys/external/bsd/drm2/dist/drm/nouveau/nouveau_drm.h: revision 1.2 sys/external/bsd/drm2/dist/drm/nouveau/core/engine/fifo/nouveau_engine_fifo_base.c: revision 1.3 sys/external/bsd/drm2/dist/drm/nouveau/core/engine/disp/nouveau_engine_disp_nvd0.c: revision 1.2 sys/external/bsd/drm2/dist/drm/nouveau/core/engine/disp/nouveau_engine_disp_nv04.c: revision 1.2 sys/external/bsd/drm2/nouveau/nouveau_module.c: revision 1.2 sys/external/bsd/drm2/dist/drm/nouveau/core/subdev/instmem/nouveau_subdev_instmem_nv40.c: revision 1.2 sys/external/bsd/drm2/dist/drm/nouveau/core/engine/graph/nouveau_engine_graph_gm107.c: revision 1.2 sys/external/bsd/drm2/dist/drm/nouveau/core/engine/graph/nouveau_engine_graph_ctxnvd7.c: revision 1.2 sys/external/bsd/drm2/include/linux/mutex.h: revision 1.7 sys/external/bsd/drm2/dist/drm/nouveau/core/engine/disp/nv50.h: revision 1.2 sys/external/bsd/drm2/dist/drm/nouveau/core/engine/device/nouveau_engine_device_base.c: revision 1.3 sys/external/bsd/drm2/include/linux/i2c.h: revision 1.6 sys/external/bsd/drm2/dist/drm/nouveau/core/engine/graph/nouveau_engine_graph_nvc0.c: revision 1.2 sys/external/bsd/drm2/include/linux/pagemap.h: revision 1.3 sys/external/bsd/drm2/dist/drm/nouveau/core/subdev/instmem/nouveau_subdev_instmem_nv04.c: revision 1.2 sys/external/bsd/drm2/dist/drm/nouveau/core/engine/copy/nouveau_engine_copy_nva3.c: revision 1.2 sys/external/bsd/drm2/dist/drm/nouveau/nouveau_nv50_display.c: revision 1.2 sys/external/bsd/drm2/dist/drm/nouveau/core/include/subdev/bar.h: revision 1.3 sys/external/bsd/drm2/dist/drm/nouveau/core/subdev/pwr/nouveau_subdev_pwr_base.c: revision 1.2 Another round of nouveau whack-a-mole.
Another round of nouveau whack-a-mole.
Rebase to HEAD as of a few days ago.
Rebase.
file nouveau_drm.c was added on branch tls-maxphys on 2014-08-20 00:04:10 +0000
file nouveau_drm.c was added on branch tls-earlyentropy on 2014-08-10 06:55:30 +0000
Whack some nouveau moles.
Reimport Nouveau from Linux 3.15. This renames .c files to avoid basename clashes, and adds RCS IDs. Generated using nouveau2netbsd.
Import drm from Linux 3.15 (commitid 1860e379875dfe7271c649058aeddffe5afd9d0d). drivers/gpu/drm -> sys/external/bsd/drm2/dist/drm include/drm -> sys/external/bsd/drm2/dist/include/drm include/uapi/drm -> sys/external/bsd/drm2/dist/uapi/drm GPL sources excluded.
Initial revision