The NetBSD Project

CVS log for src/sys/external/bsd/drm2/dist/include/drm/Attic/drmP.h

[BACK] Up to [cvs.NetBSD.org] / src / sys / external / bsd / drm2 / dist / include / drm

Request diff between arbitrary revisions


Default branch: MAIN


Revision 1.66, Sun Dec 19 10:24:33 2021 UTC (2 years, 3 months ago) by riastradh
Branch: MAIN
CVS Tags: bouyer-sunxi-drm-base, bouyer-sunxi-drm, HEAD
Changes since 1.65: +1 -1 lines
FILE REMOVED

Move files which are gone upstream out of dist/.

Revision 1.65 / (download) - annotate - [select for diffs], Sun Dec 19 09:54:38 2021 UTC (2 years, 3 months ago) by riastradh
Branch: MAIN
Changes since 1.64: +1 -17 lines
Diff to previous 1.64 (colored)

Move some drm PCI stuff off drmP.h


Author: Maya Rashish <maya@NetBSD.org>

Revision 1.64 / (download) - annotate - [select for diffs], Sun Dec 19 09:54:31 2021 UTC (2 years, 3 months ago) by riastradh
Branch: MAIN
Changes since 1.63: +1 -23 lines
Diff to previous 1.63 (colored)

Avoid declarations that appear in drm_debugfs.h


Author: Maya Rashish <maya@NetBSD.org>

Revision 1.63 / (download) - annotate - [select for diffs], Sun Dec 19 09:52:43 2021 UTC (2 years, 3 months ago) by riastradh
Branch: MAIN
Changes since 1.62: +1 -5 lines
Diff to previous 1.62 (colored)

Move drm_cdevsw out of drmP.h which should eventually be removed

drm_device.h seems like an OK spot.


Author: Maya Rashish <maya@NetBSD.org>

Revision 1.62 / (download) - annotate - [select for diffs], Sun Dec 19 09:51:41 2021 UTC (2 years, 3 months ago) by riastradh
Branch: MAIN
Changes since 1.61: +1 -9 lines
Diff to previous 1.61 (colored)

remove declarations now in drm_irq.h


Author: Maya Rashish <maya@NetBSD.org>

Revision 1.61 / (download) - annotate - [select for diffs], Sun Dec 19 09:51:34 2021 UTC (2 years, 3 months ago) by riastradh
Branch: MAIN
Changes since 1.60: +1 -20 lines
Diff to previous 1.60 (colored)

delete defines now in drm_pci.h and drm_internal.h


Author: Maya Rashish <maya@NetBSD.org>

Revision 1.60 / (download) - annotate - [select for diffs], Sun Dec 19 09:51:27 2021 UTC (2 years, 3 months ago) by riastradh
Branch: MAIN
Changes since 1.59: +1 -5 lines
Diff to previous 1.59 (colored)

remove unused definitions


Author: Maya Rashish <maya@NetBSD.org>

Revision 1.59 / (download) - annotate - [select for diffs], Sun Dec 19 01:59:11 2021 UTC (2 years, 3 months ago) by riastradh
Branch: MAIN
Changes since 1.58: +1 -38 lines
Diff to previous 1.58 (colored)

Remove more things defined in headers off drmP.h

(either drm_internal.h, drm_drv.h, drm_debugfs.h)


Author: Maya Rashish <maya@NetBSD.org>

Revision 1.58 / (download) - annotate - [select for diffs], Sun Dec 19 01:59:03 2021 UTC (2 years, 3 months ago) by riastradh
Branch: MAIN
Changes since 1.57: +1 -92 lines
Diff to previous 1.57 (colored)

Move more ifdef NetBSD goo from drmP.h to new headers


Author: Maya Rashish <maya@NetBSD.org>

Revision 1.57 / (download) - annotate - [select for diffs], Sun Dec 19 01:57:20 2021 UTC (2 years, 3 months ago) by riastradh
Branch: MAIN
Changes since 1.56: +1 -26 lines
Diff to previous 1.56 (colored)

move ifdef goo from drmP.h to drm_file.h

Remove declarations already appearing in other headers


Author: Maya Rashish <maya@NetBSD.org>

Revision 1.56 / (download) - annotate - [select for diffs], Sun Dec 19 01:57:13 2021 UTC (2 years, 3 months ago) by riastradh
Branch: MAIN
Changes since 1.55: +1 -29 lines
Diff to previous 1.55 (colored)

Delete structs that got moved off to different files.


Author: Maya Rashish <maya@NetBSD.org>

Revision 1.55 / (download) - annotate - [select for diffs], Sun Dec 19 01:56:50 2021 UTC (2 years, 3 months ago) by riastradh
Branch: MAIN
Changes since 1.54: +1 -84 lines
Diff to previous 1.54 (colored)

Move drm_file ifdef goo to the one defined in drm_file.h.

drm_lock_data is defined in drm_auth.h and already has the
ifdef goo.


Author: Maya Rashish <maya@NetBSD.org>

Revision 1.54 / (download) - annotate - [select for diffs], Sun Dec 19 01:56:42 2021 UTC (2 years, 3 months ago) by riastradh
Branch: MAIN
Changes since 1.53: +1 -40 lines
Diff to previous 1.53 (colored)

Remove declarations that appear in other headers or are unused


Author: Maya Rashish <maya@NetBSD.org>

Revision 1.53 / (download) - annotate - [select for diffs], Sun Dec 19 01:56:33 2021 UTC (2 years, 3 months ago) by riastradh
Branch: MAIN
Changes since 1.52: +1 -380 lines
Diff to previous 1.52 (colored)

Move drm_device ifdef goo to drm_drv.h

And drm vblank stuff to drm_vblank.h


Author: Maya Rashish <maya@NetBSD.org>

Revision 1.52 / (download) - annotate - [select for diffs], Sun Dec 19 01:56:24 2021 UTC (2 years, 3 months ago) by riastradh
Branch: MAIN
Changes since 1.51: +1 -8 lines
Diff to previous 1.51 (colored)

Remove drm_device_is_unplugged from drmP.h

Now defined in drm_drv.h.


Author: Maya Rashish <maya@NetBSD.org>

Revision 1.51 / (download) - annotate - [select for diffs], Sun Dec 19 01:56:16 2021 UTC (2 years, 3 months ago) by riastradh
Branch: MAIN
Changes since 1.50: +1 -7 lines
Diff to previous 1.50 (colored)

Remove unused function (local diff)


Author: Maya Rashish <maya@NetBSD.org>

Revision 1.50 / (download) - annotate - [select for diffs], Sun Dec 19 01:56:08 2021 UTC (2 years, 3 months ago) by riastradh
Branch: MAIN
Changes since 1.49: +1 -39 lines
Diff to previous 1.49 (colored)

move drmP drm_ioctl stuff to drm_ioctl.h

including ifdef goo


Author: Maya Rashish <maya@NetBSD.org>

Revision 1.49 / (download) - annotate - [select for diffs], Sun Dec 19 01:56:00 2021 UTC (2 years, 3 months ago) by riastradh
Branch: MAIN
Changes since 1.48: +1 -13 lines
Diff to previous 1.48 (colored)

drm_can_sleep now lives in drm_util.h, move ifdef goo there.


Author: Maya Rashish <maya@NetBSD.org>

Revision 1.48 / (download) - annotate - [select for diffs], Sun Dec 19 01:55:45 2021 UTC (2 years, 3 months ago) by riastradh
Branch: MAIN
Changes since 1.47: +1 -154 lines
Diff to previous 1.47 (colored)

struct drm_device is now in drm_device.h. move netbsd ifdef goo there


Author: Maya Rashish <maya@NetBSD.org>

Revision 1.47 / (download) - annotate - [select for diffs], Sun Dec 19 01:55:37 2021 UTC (2 years, 3 months ago) by riastradh
Branch: MAIN
Changes since 1.46: +1 -155 lines
Diff to previous 1.46 (colored)

Remove duplicate drm debug prints (now moved to debug_print.h)


Author: Maya Rashish <maya@NetBSD.org>

Revision 1.46 / (download) - annotate - [select for diffs], Sun Dec 19 01:49:00 2021 UTC (2 years, 3 months ago) by riastradh
Branch: MAIN
Changes since 1.45: +1 -12 lines
Diff to previous 1.45 (colored)

These declarations moved to drm_cache.h, move them along.


Author: Maya Rashish <maya@NetBSD.org>

Revision 1.45 / (download) - annotate - [select for diffs], Sun Dec 19 01:34:39 2021 UTC (2 years, 3 months ago) by riastradh
Branch: MAIN
Changes since 1.44: +8 -1 lines
Diff to previous 1.44 (colored)

drm_io_mapping_init_wc

Revision 1.44 / (download) - annotate - [select for diffs], Sun Dec 19 00:27:25 2021 UTC (2 years, 3 months ago) by riastradh
Branch: MAIN
Changes since 1.43: +1 -2 lines
Diff to previous 1.43 (colored)

No more <drm/drm.h>.

Revision 1.43 / (download) - annotate - [select for diffs], Sat Dec 18 23:54:51 2021 UTC (2 years, 3 months ago) by riastradh
Branch: MAIN
Changes since 1.42: +2 -26 lines
Diff to previous 1.42 (colored)

drm: Temporarily restore some local files deleted upstream.

These had local changes which needed to be distributed into other
files upstream, but that didn't happen in the merge commit.  It will
happen, and the files will be deleted, in a later commit.

Revision 1.42, Sat Dec 18 23:45:45 2021 UTC (2 years, 3 months ago) by riastradh
Branch: MAIN
Changes since 1.41: +1 -1 lines
FILE REMOVED

Merge linux-drm-v5-6-rc3

Revision 1.13.14.4 / (download) - annotate - [select for diffs], Tue Apr 21 18:42:41 2020 UTC (3 years, 11 months ago) by martin
Branch: phil-wifi
Changes since 1.13.14.3: +2 -0 lines
Diff to previous 1.13.14.3 (colored) to branchpoint 1.13 (colored) next main 1.14 (colored)

Sync with HEAD

Revision 1.39.2.1 / (download) - annotate - [select for diffs], Mon Apr 20 11:29:09 2020 UTC (3 years, 11 months ago) by bouyer
Branch: bouyer-xenpvh
Changes since 1.39: +3 -1 lines
Diff to previous 1.39 (colored) next main 1.40 (colored)

Sync with HEAD

Revision 1.41 / (download) - annotate - [select for diffs], Sun Apr 19 17:49:41 2020 UTC (3 years, 11 months ago) by maya
Branch: MAIN
CVS Tags: thorpej-i2c-spi-conf2-base, thorpej-i2c-spi-conf2, thorpej-i2c-spi-conf-base, thorpej-i2c-spi-conf, thorpej-futex2-base, thorpej-futex2, thorpej-futex-base, thorpej-futex, thorpej-cfargs2-base, thorpej-cfargs2, thorpej-cfargs-base, thorpej-cfargs, phil-wifi-20200421, cjep_sun2x-base1, cjep_sun2x-base, cjep_sun2x, cjep_staticlib_x-base1, cjep_staticlib_x-base, cjep_staticlib_x, bouyer-xenpvh-base2, bouyer-xenpvh-base1
Changes since 1.40: +2 -1 lines
Diff to previous 1.40 (colored)

Include dev/sysmon/sysmonvar.h for sysmon_pswitch.

Somehow only triggered by the compat build (which shouldn't have been
enabled!)

Revision 1.40 / (download) - annotate - [select for diffs], Sun Apr 19 17:19:13 2020 UTC (3 years, 11 months ago) by maya
Branch: MAIN
Changes since 1.39: +2 -1 lines
Diff to previous 1.39 (colored)

For drm drivers and on monitor hotplug, report a 'display-cycle' hotkey click

If powerd is running, it will invoke the script
/etc/powerd/actions/display-cycle

Revision 1.13.14.3 / (download) - annotate - [select for diffs], Mon Apr 13 08:04:58 2020 UTC (4 years ago) by martin
Branch: phil-wifi
Changes since 1.13.14.2: +1 -0 lines
Diff to previous 1.13.14.2 (colored) to branchpoint 1.13 (colored)

Mostly merge changes from HEAD upto 20200411

Revision 1.13.14.2 / (download) - annotate - [select for diffs], Wed Apr 8 14:08:27 2020 UTC (4 years ago) by martin
Branch: phil-wifi
Changes since 1.13.14.1: +37 -9 lines
Diff to previous 1.13.14.1 (colored) to branchpoint 1.13 (colored)

Merge changes from current as of 20200406

Revision 1.35.4.2 / (download) - annotate - [select for diffs], Thu Mar 19 19:41:10 2020 UTC (4 years ago) by martin
Branch: netbsd-9
CVS Tags: netbsd-9-3-RELEASE, netbsd-9-2-RELEASE, netbsd-9-1-RELEASE
Changes since 1.35.4.1: +2 -2 lines
Diff to previous 1.35.4.1 (colored) to branchpoint 1.35 (colored) next main 1.36 (colored)

Pull up following revision(s) (requested by riastradh in ticket #787):

	sys/altq/altq_flowvalve.h: revision 1.4
	sys/net/zlib.h: revision 1.15
	sys/dist/pf/net/pfvar.h: revision 1.23
	sys/external/bsd/drm2/dist/include/drm/drmP.h: revision 1.38
	sys/external/bsd/drm2/dist/drm/drm_drv.c: revision 1.13
	sys/net/slcompress.h: revision 1.20

Need opt_inet.h for #ifdef INET, INET6.

Avoid duplicate definition of internal_state struct.

Avoid struct inode.

This is an fs-independent structure in Linux.  We don't actually use
it as such; it's just a dummy struct tag.  But we do have an actual
struct inode in ufs and in lfs, and using the same struct tag here
confuses ctf leading to four copies of pretty much every drm data
structure.

Revision 1.39 / (download) - annotate - [select for diffs], Thu Mar 5 08:36:53 2020 UTC (4 years, 1 month ago) by riastradh
Branch: MAIN
CVS Tags: phil-wifi-20200411, phil-wifi-20200406, bouyer-xenpvh-base
Branch point for: bouyer-xenpvh
Changes since 1.38: +23 -1 lines
Diff to previous 1.38 (colored)

Hackily rename enum pipe for drm, without patching.

The patch we used to maintain to do this rename doubled the pain
of merging drm updates.  But ctf gets confused if we have a struct
and an enum both called `pipe', and it's technically against C99
to do so.  So #define it in all drm code for now to fix dtrace.

Revision 1.38 / (download) - annotate - [select for diffs], Thu Mar 5 07:46:59 2020 UTC (4 years, 1 month ago) by riastradh
Branch: MAIN
Changes since 1.37: +2 -2 lines
Diff to previous 1.37 (colored)

Avoid struct inode.

This is an fs-independent structure in Linux.  We don't actually use
it as such; it's just a dummy struct tag.  But we do have an actual
struct inode in ufs and in lfs, and using the same struct tag here
confuses ctf leading to four copies of pretty much every drm data
structure.

Revision 1.36.2.1 / (download) - annotate - [select for diffs], Sat Feb 29 20:20:17 2020 UTC (4 years, 1 month ago) by ad
Branch: ad-namecache
Changes since 1.36: +14 -8 lines
Diff to previous 1.36 (colored) next main 1.37 (colored)

Sync with head.

Revision 1.37 / (download) - annotate - [select for diffs], Fri Feb 14 14:34:59 2020 UTC (4 years, 1 month ago) by maya
Branch: MAIN
CVS Tags: is-mlppp-base, is-mlppp, ad-namecache-base3
Changes since 1.36: +14 -8 lines
Diff to previous 1.36 (colored)

Reduce diffs by side-loading some header files like Linux.

From riastradh

Revision 1.35.4.1 / (download) - annotate - [select for diffs], Wed Nov 6 09:48:31 2019 UTC (4 years, 5 months ago) by martin
Branch: netbsd-9
CVS Tags: netbsd-9-0-RELEASE, netbsd-9-0-RC2, netbsd-9-0-RC1
Changes since 1.35: +2 -1 lines
Diff to previous 1.35 (colored)

Pull up following revision(s) (requested by jmcneill in ticket #400):

	sys/arch/arm/sunxi/sunxi_drm.c: revision 1.8
	sys/external/bsd/drm2/dist/include/drm/drm_gem_cma_helper.h: revision 1.6
	sys/external/bsd/drm2/dist/include/drm/drmP.h: revision 1.36
	sys/external/bsd/drm2/include/drm/bus_dma_hacks.h: revision 1.18
	sys/external/bsd/drm2/drm/drm_gem_cma_helper.c: revision 1.9
	sys/external/bsd/drm2/include/drm/drm_os_netbsd.h: revision 1.15

Arm DMA tags with _nranges=0 require no address translation. Handle this
in PHYS_TO_BUS_MEM and BUS_TO_PHYS_MEM instead of panicing.

Add support for DRM GEM/CMA helpers using a driver provided vmem arena.

Reserve enough memory at boot to support the drmfb buffer plus a 4K buffer
for Xorg.

Revision 1.36 / (download) - annotate - [select for diffs], Tue Nov 5 23:29:28 2019 UTC (4 years, 5 months ago) by jmcneill
Branch: MAIN
CVS Tags: phil-wifi-20191119, ad-namecache-base2, ad-namecache-base1, ad-namecache-base
Branch point for: ad-namecache
Changes since 1.35: +2 -1 lines
Diff to previous 1.35 (colored)

Add support for DRM GEM/CMA helpers using a driver provided vmem arena.

Revision 1.13.14.1 / (download) - annotate - [select for diffs], Mon Jun 10 22:08:29 2019 UTC (4 years, 10 months ago) by christos
Branch: phil-wifi
Changes since 1.13: +329 -1117 lines
Diff to previous 1.13 (colored)

Sync with HEAD

Revision 1.13.12.2 / (download) - annotate - [select for diffs], Wed Dec 26 14:02:03 2018 UTC (5 years, 3 months ago) by pgoyette
Branch: pgoyette-compat
CVS Tags: pgoyette-compat-merge-20190127
Changes since 1.13.12.1: +5 -1 lines
Diff to previous 1.13.12.1 (colored) to branchpoint 1.13 (colored) next main 1.14 (colored)

Sync with HEAD, resolve a few conflicts

Revision 1.35 / (download) - annotate - [select for diffs], Fri Dec 21 07:51:18 2018 UTC (5 years, 3 months ago) by maya
Branch: MAIN
CVS Tags: phil-wifi-20190609, pgoyette-compat-20190127, pgoyette-compat-20190118, pgoyette-compat-1226, netbsd-9-base, isaki-audio2-base, isaki-audio2
Branch point for: netbsd-9
Changes since 1.34: +5 -1 lines
Diff to previous 1.34 (colored)

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.

Revision 1.13.12.1 / (download) - annotate - [select for diffs], Thu Sep 6 06:56:35 2018 UTC (5 years, 7 months ago) by pgoyette
Branch: pgoyette-compat
Changes since 1.13: +325 -1117 lines
Diff to previous 1.13 (colored)

Sync with HEAD

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

Revision 1.34 / (download) - annotate - [select for diffs], Tue Aug 28 03:41:39 2018 UTC (5 years, 7 months ago) by riastradh
Branch: MAIN
CVS Tags: pgoyette-compat-1126, pgoyette-compat-1020, pgoyette-compat-0930, pgoyette-compat-0906
Changes since 1.33: +9 -28 lines
Diff to previous 1.33 (colored)

Rework PCI and AGP conditionalization.

- Push drm_pci_set_unique into driver callback.
- Eliminate drm_pci_set_unique_hook.
- Gather all drm_agp_* functions into struct drm_agp_hooks.
- Replace the nonsensical old atomic garbage by serious locking.
- Make drm_agpsupport.c its own module.
- Eliminate NDRMKMS_PCI.
- Use NAGP from "agp.h" only in drm_module.c for horrible hack.
  => See comment in file for rationale.
- Always define CONFIG_PCI=1 and CONFIG_AGP=1.
- Always go through the drm_agp_* function hooks.
- Ifdef out nouveau agp stuff that doesn't go through drm_agp_*
  for reasons that I'm too frustrated to figure out tonight.
- pci_iomap no longer automagically does agp_i810_borrow.
  => Use drm_agp_borrow instead.

Revision 1.33 / (download) - annotate - [select for diffs], Tue Aug 28 03:35:08 2018 UTC (5 years, 7 months ago) by riastradh
Branch: MAIN
Changes since 1.32: +1 -0 lines
Diff to previous 1.32 (colored)

Move decl of drm_guarantee_initialized to drmP.h.

Revision 1.32 / (download) - annotate - [select for diffs], Mon Aug 27 15:32:39 2018 UTC (5 years, 7 months ago) by riastradh
Branch: MAIN
Changes since 1.31: +1 -0 lines
Diff to previous 1.31 (colored)

Check for DMA-safe addresses before allowing DRM prime import.

Revision 1.31 / (download) - annotate - [select for diffs], Mon Aug 27 15:32:06 2018 UTC (5 years, 7 months ago) by riastradh
Branch: MAIN
Changes since 1.30: +1 -0 lines
Diff to previous 1.30 (colored)

Tread carefully around DMA subregions.

Not all platforms support it.

- If we want to limit to 32-bit DMA, just use a known 32-bit DMA tag.
- If we want to limit to >32-bit DMA, but the host only has a known
  32-bit DMA tag, then just use that anyway.
- If we want to limit to >32-bit DMA, but the host doesn't support
  bus_dmatag_subregion, then just use the 32-bit DMA tag anyway.

Gives powerpc, sparc a chance of working.

Revision 1.30 / (download) - annotate - [select for diffs], Mon Aug 27 15:28:03 2018 UTC (5 years, 7 months ago) by riastradh
Branch: MAIN
Changes since 1.29: +2 -2 lines
Diff to previous 1.29 (colored)

Clarify what bus_dmat and dmat are.

Revision 1.29 / (download) - annotate - [select for diffs], Mon Aug 27 15:26:50 2018 UTC (5 years, 7 months ago) by riastradh
Branch: MAIN
Changes since 1.28: +3 -3 lines
Diff to previous 1.28 (colored)

Rework drm prime guts.

- Our faux struct sg_table is now just an array of _pages_, not of
  bus dma segments.

- We handle bus dma segments only in the presence of an adult bus dma
  tag.

- All bus dma hacks are once again confined to bus_dma_hacks.h, and
  more neatly organized:
  . bus_dmamem_export_pages translates bus dma segs to vm_page array
  . bus_dmamem_import_pages translates vm_page array to bus dma segs

Revision 1.28 / (download) - annotate - [select for diffs], Mon Aug 27 15:26:00 2018 UTC (5 years, 7 months ago) by riastradh
Branch: MAIN
Changes since 1.27: +3 -0 lines
Diff to previous 1.27 (colored)

Fill out drm_prime_* API a little more for NetBSD.

Add comment explaining our use of struct sg_table.

Revision 1.27 / (download) - annotate - [select for diffs], Mon Aug 27 15:22:54 2018 UTC (5 years, 7 months ago) by riastradh
Branch: MAIN
Changes since 1.26: +11 -3 lines
Diff to previous 1.26 (colored)

Draft support for drm prime.

Revision 1.26 / (download) - annotate - [select for diffs], Mon Aug 27 14:42:43 2018 UTC (5 years, 7 months ago) by riastradh
Branch: MAIN
Changes since 1.25: +4 -0 lines
Diff to previous 1.25 (colored)

Rework vblank locking.  New drm_vblank_get/put_locked subroutines.

Revision 1.25 / (download) - annotate - [select for diffs], Mon Aug 27 13:42:47 2018 UTC (5 years, 7 months ago) by riastradh
Branch: MAIN
Changes since 1.24: +4 -4 lines
Diff to previous 1.24 (colored)

Put file, line, func in DRM_ERROR messages.

Revision 1.24 / (download) - annotate - [select for diffs], Mon Aug 27 13:36:32 2018 UTC (5 years, 7 months ago) by riastradh
Branch: MAIN
Changes since 1.23: +1 -1 lines
Diff to previous 1.23 (colored)

Update comment to reflect reality.

Revision 1.23 / (download) - annotate - [select for diffs], Mon Aug 27 07:46:07 2018 UTC (5 years, 7 months ago) by riastradh
Branch: MAIN
Changes since 1.22: +4 -0 lines
Diff to previous 1.22 (colored)

Move drm_limit_dma_space to drmP.h -- not legacy, used by drivers.

Revision 1.22 / (download) - annotate - [select for diffs], Mon Aug 27 07:03:26 2018 UTC (5 years, 7 months ago) by riastradh
Branch: MAIN
Changes since 1.21: +13 -0 lines
Diff to previous 1.21 (colored)

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).

Revision 1.21 / (download) - annotate - [select for diffs], Mon Aug 27 06:54:08 2018 UTC (5 years, 7 months ago) by riastradh
Branch: MAIN
Changes since 1.20: +2 -0 lines
Diff to previous 1.20 (colored)

Massage drm_drv.c into usability.

- expose drm_minor_lock/drm_minors_idr for drm_init in drm_module.c
- ifdef out Linux driver attachment goo

Revision 1.20 / (download) - annotate - [select for diffs], Mon Aug 27 06:50:58 2018 UTC (5 years, 7 months ago) by riastradh
Branch: MAIN
Changes since 1.19: +4 -2 lines
Diff to previous 1.19 (colored)

Move drm_ioctl to drm_ioctl.c.

Previously it was in drm_drv.c upstream, which we overrode; then it
got moved to drm_ioctl.c and drm_drv.c got deleted, so we no longer
need to maintain a separate copy of the table in what we now call
drm_cdevsw.c.

Revision 1.19 / (download) - annotate - [select for diffs], Mon Aug 27 06:43:24 2018 UTC (5 years, 7 months ago) by riastradh
Branch: MAIN
Changes since 1.18: +1 -0 lines
Diff to previous 1.18 (colored)

just include linux/err.h instead of matching side loading

(it's included by fence.h, for example)

switch void* -> char* because of void pointer arithmetic.


Author: coypu <coypu@sdf.org>
Committer: Taylor R Campbell <riastradh@NetBSD.org>

Revision 1.18 / (download) - annotate - [select for diffs], Mon Aug 27 06:42:41 2018 UTC (5 years, 7 months ago) by riastradh
Branch: MAIN
Changes since 1.17: +6 -5 lines
Diff to previous 1.17 (colored)

Include drm_os_* earlier.

Revision 1.17 / (download) - annotate - [select for diffs], Mon Aug 27 06:42:00 2018 UTC (5 years, 7 months ago) by riastradh
Branch: MAIN
Changes since 1.16: +2 -0 lines
Diff to previous 1.16 (colored)

Ifdef out gem_prime_mmap for now.

Revision 1.16 / (download) - annotate - [select for diffs], Mon Aug 27 06:39:05 2018 UTC (5 years, 7 months ago) by riastradh
Branch: MAIN
Changes since 1.15: +4 -0 lines
Diff to previous 1.15 (colored)

drm_crtc_vblank_waitqueue has to have a sane type.

Revision 1.15 / (download) - annotate - [select for diffs], Mon Aug 27 06:17:30 2018 UTC (5 years, 7 months ago) by riastradh
Branch: MAIN
Changes since 1.14: +1 -0 lines
Diff to previous 1.14 (colored)

begin fixing -Werror build:

Provide missing declarations from older drm
provide more definitions used by code
no idea what might_lock is, but it might be some error-checking
lockdep thing.


Author: coypu <coypu@sdf.org>
Committer: Taylor R Campbell <riastradh@NetBSD.org>

Revision 1.14 / (download) - annotate - [select for diffs], Mon Aug 27 04:58:37 2018 UTC (5 years, 7 months ago) by riastradh
Branch: MAIN
Changes since 1.13: +264 -1085 lines
Diff to previous 1.13 (colored)

merge linux-drm-v4-4-143

Revision 1.1.1.3 / (download) - annotate - [select for diffs] (vendor branch), Mon Aug 27 01:35:00 2018 UTC (5 years, 7 months ago) by riastradh
Branch: LINUX
CVS Tags: linux-drm-v4-4-143
Changes since 1.1.1.2: +250 -788 lines
Diff to previous 1.1.1.2 (colored)

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.

Revision 1.7.4.3 / (download) - annotate - [select for diffs], Sun Dec 3 11:37:58 2017 UTC (6 years, 4 months ago) by jdolecek
Branch: tls-maxphys
Changes since 1.7.4.2: +6 -4 lines
Diff to previous 1.7.4.2 (colored) to branchpoint 1.7 (colored) next main 1.8 (colored)

update from HEAD

Revision 1.13 / (download) - annotate - [select for diffs], Mon Feb 27 23:52:05 2017 UTC (7 years, 1 month ago) by nonaka
Branch: MAIN
CVS Tags: tls-maxphys-base-20171202, prg-localcount2-base3, prg-localcount2-base2, prg-localcount2-base1, prg-localcount2-base, prg-localcount2, phil-wifi-base, pgoyette-localcount-20170426, pgoyette-localcount-20170320, pgoyette-compat-base, pgoyette-compat-0728, pgoyette-compat-0625, pgoyette-compat-0521, pgoyette-compat-0502, pgoyette-compat-0422, pgoyette-compat-0415, pgoyette-compat-0407, pgoyette-compat-0330, pgoyette-compat-0322, pgoyette-compat-0315, perseant-stdc-iso10646-base, perseant-stdc-iso10646, nick-nhusb-base-20170825, netbsd-8-base, netbsd-8-2-RELEASE, netbsd-8-1-RELEASE, netbsd-8-1-RC1, netbsd-8-0-RELEASE, netbsd-8-0-RC2, netbsd-8-0-RC1, netbsd-8, matt-nb8-mediatek-base, matt-nb8-mediatek, jdolecek-ncq-base, jdolecek-ncq, bouyer-socketcan-base1
Branch point for: phil-wifi, pgoyette-compat
Changes since 1.12: +0 -1 lines
Diff to previous 1.12 (colored)

Revert "drmkms_pci: use MSI if available."

Fix PR/51997.

Revision 1.12 / (download) - annotate - [select for diffs], Tue Feb 21 14:19:39 2017 UTC (7 years, 1 month ago) by nonaka
Branch: MAIN
Changes since 1.11: +1 -0 lines
Diff to previous 1.11 (colored)

drmkms_pci: use MSI if available.

Revision 1.7.2.3 / (download) - annotate - [select for diffs], Thu Jul 30 15:43:37 2015 UTC (8 years, 8 months ago) by snj
Branch: netbsd-7
CVS Tags: netbsd-7-nhusb-base-20170116, netbsd-7-nhusb-base, netbsd-7-nhusb, netbsd-7-2-RELEASE, netbsd-7-1-RELEASE, netbsd-7-1-RC2, netbsd-7-1-RC1, netbsd-7-1-2-RELEASE, netbsd-7-1-1-RELEASE, netbsd-7-1, netbsd-7-0-RELEASE, netbsd-7-0-RC3, netbsd-7-0-2-RELEASE, netbsd-7-0-1-RELEASE, netbsd-7-0
Changes since 1.7.2.2: +1 -3 lines
Diff to previous 1.7.2.2 (colored) to branchpoint 1.7 (colored) next main 1.8 (colored)

Pull up following revision(s) (requested by riastradh in ticket #904):
	sys/external/bsd/drm2/dist/drm/drm_bufs.c: revision 1.7
	sys/external/bsd/drm2/dist/include/drm/drmP.h: revision 1.11
	sys/external/bsd/drm2/drm/drm_memory.c: revision 1.7
	sys/external/bsd/drm2/pci/drm_pci.c: revision 1.13
Replace drm_ioremap by drm_core_ioremap, reducing diff a little.

Revision 1.8.2.2 / (download) - annotate - [select for diffs], Sat Jun 6 14:40:19 2015 UTC (8 years, 10 months ago) by skrll
Branch: nick-nhusb
Changes since 1.8.2.1: +1 -3 lines
Diff to previous 1.8.2.1 (colored) to branchpoint 1.8 (colored) next main 1.9 (colored)

Sync with HEAD

Revision 1.11 / (download) - annotate - [select for diffs], Wed Apr 29 04:38:55 2015 UTC (8 years, 11 months ago) by riastradh
Branch: MAIN
CVS Tags: pgoyette-localcount-base, pgoyette-localcount-20170107, pgoyette-localcount-20161104, pgoyette-localcount-20160806, pgoyette-localcount-20160726, pgoyette-localcount, nick-nhusb-base-20170204, nick-nhusb-base-20161204, nick-nhusb-base-20161004, nick-nhusb-base-20160907, nick-nhusb-base-20160529, nick-nhusb-base-20160422, nick-nhusb-base-20160319, nick-nhusb-base-20151226, nick-nhusb-base-20150921, nick-nhusb-base-20150606, localcount-20160914, bouyer-socketcan-base, bouyer-socketcan
Changes since 1.10: +1 -3 lines
Diff to previous 1.10 (colored)

Replace drm_ioremap by drm_core_ioremap, reducing diff a little.

Revision 1.8.2.1 / (download) - annotate - [select for diffs], Mon Apr 6 15:18:17 2015 UTC (9 years ago) by skrll
Branch: nick-nhusb
Changes since 1.8: +3 -1 lines
Diff to previous 1.8 (colored)

Sync with HEAD

Revision 1.7.2.2 / (download) - annotate - [select for diffs], Fri Mar 6 21:39:10 2015 UTC (9 years, 1 month ago) by snj
Branch: netbsd-7
CVS Tags: netbsd-7-0-RC2, netbsd-7-0-RC1
Changes since 1.7.2.1: +1 -0 lines
Diff to previous 1.7.2.1 (colored) to branchpoint 1.7 (colored)

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.

Revision 1.10 / (download) - annotate - [select for diffs], Fri Mar 6 01:24:24 2015 UTC (9 years, 1 month ago) by riastradh
Branch: MAIN
CVS Tags: nick-nhusb-base-20150406
Changes since 1.9: +1 -0 lines
Diff to previous 1.9 (colored)

Adapt drmkms_pci module initialization to work as builtin, for agp.

Revision 1.7.2.1 / (download) - annotate - [select for diffs], Sun Jan 11 05:59:17 2015 UTC (9 years, 3 months ago) by snj
Branch: netbsd-7
Changes since 1.7: +4 -1 lines
Diff to previous 1.7 (colored)

Pull up following revision(s) (requested by chs in ticket #401):
	distrib/sets/lists/modules/md.amd64: revisions 1.46, 1.47 via patch
	distrib/sets/lists/modules/md.i386: revisions 1.49, 1.50
	sys/dev/ic/pcdisplayvar.h: revision 1.20
	sys/dev/ic/vgavar.h: revision 1.32
	sys/external/bsd/drm/dist/bsd-core/drm_drv.c: revision 1.26
	sys/external/bsd/drm2/dist/drm/drm_agpsupport.c: revisions 1.5, 1.6
	sys/external/bsd/drm2/dist/drm/drm_pci.c: revisions 1.4, 1.5
	sys/external/bsd/drm2/dist/drm/drm_stub.c: revisions 1.6-1.8
	sys/external/bsd/drm2/dist/drm/i915/i915_drv.h: revision 1.11
	sys/external/bsd/drm2/dist/drm/radeon/cik.c: revision 1.3
	sys/external/bsd/drm2/dist/drm/radeon/ni.c: revision 1.3
	sys/external/bsd/drm2/dist/drm/radeon/si.c: revision 1.3
	sys/external/bsd/drm2/dist/include/drm/drmP.h: revisions 1.8, 1.9
	sys/external/bsd/drm2/dist/include/drm/drm_agpsupport.h: revisions 1.3, 1.4
	sys/external/bsd/drm2/drm/drm_drv.c: revision 1.11
	sys/external/bsd/drm2/drm/drm_module.c: revision 1.9
	sys/external/bsd/drm2/drm/drm_sysctl.c: revisions 1.1-1.4
	sys/external/bsd/drm2/drm/drm_vm.c: revision 1.7
	sys/external/bsd/drm2/drm/files.drmkms: revisions 1.8, 1.9
	sys/external/bsd/drm2/i915drm/files.i915drmkms: revision 1.9
	sys/external/bsd/drm2/i915drm/i915_module.c: revisions 1.4, 1.5
	sys/external/bsd/drm2/include/drm/drm_sysctl.h: revisions 1.1, 1.2
	sys/external/bsd/drm2/include/linux/hdmi.h: revisions 1.3-1.5
	sys/external/bsd/drm2/include/linux/module.h: revision 1.5
	sys/external/bsd/drm2/include/linux/moduleparam.h: revisions 1.3, 1.4
	sys/external/bsd/drm2/include/linux/pci.h: revision 1.11
	sys/external/bsd/drm2/linux/linux_module.c: revision 1.5
	sys/external/bsd/drm2/nouveau/files.nouveau: revision 1.4
	sys/external/bsd/drm2/nouveau/nouveau_module.c: revision 1.3
	sys/external/bsd/drm2/pci/drm_pci.c: revision 1.8
	sys/external/bsd/drm2/pci/drm_pci_module.c: revision 1.3
	sys/external/bsd/drm2/radeon/radeon_module.c: revision 1.3
	sys/external/bsd/drm2/ttm/files.ttm: revision 1.1
	sys/modules/drm2pci/Makefile: file removal
	sys/modules/drmkms/Makefile: revisions 1.4-1.7
	sys/modules/drmkms_linux/Makefile: revision 1.5
	sys/modules/drmkms_pci/Makefile: revisions 1.3, 1.4
	sys/modules/i915drmkms/Makefile: revisions 1.5-1.7
Split drm ttm config into a separate file.
--
Fix module build of drmkms_linux.
--
Remove vestigial drm2pci module, replaced by drmkms_pci.
--
fix the module class.
--
add the drmkms modules
--
make a drm_agp_destroy() function to resolve the circular dependency between
drmkms and drmkms_pci
--
finalize the idr code.
--
add drm_agp_destroy
--
fix drmkms module path for xen.
--
fix build failure.
/tmp/bracket/build/2014.11.10.22.43.46-i386/src/sys/external/bsd/drm2/include/linux/pci.h:36:20: fatal error: acpica.h: No such file or directory
--
make this work: add agpsupport and sysctl code
--
move agpsupport to drmkms to avoid circular dependencies.
--
turn on dynamic ldscript creation to handle link set symbol definitions
used in the automatic sysctl creation.
--
Add __link_set based code to automatically convert the linux module parameters
into sysctls.
--
this module needs MKLDSCRIPT too now
--
more _KERNEL_OPT
--
prettify and add to all the modules that have it.
--
fix description setting.
--
Adjust flags to allow building with clang.
--
Fix build with clang.
--
Drop casts in favour of expressions that actually give the right
pointer.
--
Move all PCI/AGP code back to drmkms_pci module where it belongs.
--
Use correct length for hdmi_infoframe_header_pack in <linux/hdmi.h>.
Fixes PR kern/49411.
--
Back out previous, fix PR kern/49411 correctly.
frame->header.length is not initialized in the vendor packet case.
Instead, make hdmi_infoframe_header_pack take the packet length and
subtract the size of the header when packing the header.
(Could make it take the payload length instead, but for callers it is
more convenient to have a name for the whole packet length.)
--
Fix bounds checking in hdmi_infoframe_header_pack (PR kern/49411).
--
Trivial build fix for no options SYSCTL_INCLUDE_DESCR case, to
avoid -Werror.
OK christos@ and riastradh@
--
fix debugging compilation (ALL kernel)
--
nouveau_nv50_fence.c needs -Wno-shadow.
--
fix a confusion between dev_t and devmajor_t, and include the primary
minor when calling makedev().

Revision 1.9 / (download) - annotate - [select for diffs], Tue Dec 2 21:49:36 2014 UTC (9 years, 4 months ago) by christos
Branch: MAIN
Changes since 1.8: +2 -1 lines
Diff to previous 1.8 (colored)

fix debugging compilation (ALL kernel)

Revision 1.8 / (download) - annotate - [select for diffs], Sat Nov 22 19:18:07 2014 UTC (9 years, 4 months ago) by riastradh
Branch: MAIN
CVS Tags: nick-nhusb-base
Branch point for: nick-nhusb
Changes since 1.7: +2 -0 lines
Diff to previous 1.7 (colored)

Move all PCI/AGP code back to drmkms_pci module where it belongs.

Revision 1.7.4.2 / (download) - annotate - [select for diffs], Wed Aug 20 00:04:20 2014 UTC (9 years, 7 months ago) by tls
Branch: tls-maxphys
Changes since 1.7.4.1: +2087 -0 lines
Diff to previous 1.7.4.1 (colored) to branchpoint 1.7 (colored)

Rebase to HEAD as of a few days ago.

Revision 1.3.2.1 / (download) - annotate - [select for diffs], Sun Aug 10 06:55:38 2014 UTC (9 years, 8 months ago) by tls
Branch: tls-earlyentropy
Changes since 1.3: +345 -468 lines
Diff to previous 1.3 (colored) next main 1.4 (colored)

Rebase.

Revision 1.7.4.1, Sat Jul 26 21:15:45 2014 UTC (9 years, 8 months ago) by tls
Branch: tls-maxphys
Changes since 1.7: +0 -2087 lines
FILE REMOVED

file drmP.h was added on branch tls-maxphys on 2014-08-20 00:04:20 +0000

Revision 1.7 / (download) - annotate - [select for diffs], Sat Jul 26 21:15:45 2014 UTC (9 years, 8 months ago) by riastradh
Branch: MAIN
CVS Tags: tls-maxphys-base, tls-earlyentropy-base, netbsd-7-base
Branch point for: tls-maxphys, netbsd-7
Changes since 1.6: +6 -2 lines
Diff to previous 1.6 (colored)

Let the drm driver decide what part of what object gets mmapped.

Pass the file around too so radeon/ttm can get at it to verify access.

Add drm_gem_or_legacy_mmap_object for drivers to choose the previous
behaviour, like i915.

Revision 1.6 / (download) - annotate - [select for diffs], Wed Jul 16 20:56:25 2014 UTC (9 years, 8 months ago) by riastradh
Branch: MAIN
Changes since 1.5: +25 -37 lines
Diff to previous 1.5 (colored)

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.

Revision 1.5 / (download) - annotate - [select for diffs], Wed Jul 16 20:03:56 2014 UTC (9 years, 8 months ago) by riastradh
Branch: MAIN
Changes since 1.4: +325 -440 lines
Diff to previous 1.4 (colored)

fix merge conflicts

Revision 1.1.1.2 / (download) - annotate - [select for diffs] (vendor branch), Wed Jul 16 19:35:29 2014 UTC (9 years, 8 months ago) by riastradh
Branch: LINUX
CVS Tags: linux-3-15-drm-bsd
Changes since 1.1.1.1: +314 -414 lines
Diff to previous 1.1.1.1 (colored)

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.

Revision 1.4.2.2 / (download) - annotate - [select for diffs], Thu May 22 11:40:54 2014 UTC (9 years, 10 months ago) by yamt
Branch: yamt-pagecache
Changes since 1.4.2.1: +2210 -0 lines
Diff to previous 1.4.2.1 (colored) to branchpoint 1.4 (colored) next main 1.5 (colored)

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")

Revision 1.1.1.1.4.3 / (download) - annotate - [select for diffs], Sun May 18 17:46:00 2014 UTC (9 years, 10 months ago) by rmind
Branch: rmind-smpnet
Changes since 1.1.1.1.4.2: +435 -4 lines
Diff to previous 1.1.1.1.4.2 (colored) to branchpoint 1.1.1.1 (colored) next main 1.1.1.2 (colored)

sync with head

Revision 1.4.2.1, Thu May 1 15:19:16 2014 UTC (9 years, 11 months ago) by yamt
Branch: yamt-pagecache
Changes since 1.4: +0 -2210 lines
FILE REMOVED

file drmP.h was added on branch yamt-pagecache on 2014-05-22 11:40:54 +0000

Revision 1.4 / (download) - annotate - [select for diffs], Thu May 1 15:19:16 2014 UTC (9 years, 11 months ago) by riastradh
Branch: MAIN
CVS Tags: yamt-pagecache-base9, rmind-smpnet-nbase, rmind-smpnet-base
Branch point for: yamt-pagecache
Changes since 1.3: +2 -2 lines
Diff to previous 1.3 (colored)

Tweak some DRM GEM page indexing crap.

- Fix order of subtraction in drm_mmap_paddr_locked.
- Address GEM objects' pages from 0, not from the mmap cookie.
- Check page alignment earlier in mmap code paths.
- Sprinkle kasserts throughout.

Still doesn't fix the garbage that is sometimes being scribbled all
over kernel memory!

Revision 1.3 / (download) - annotate - [select for diffs], Thu Apr 3 19:18:29 2014 UTC (10 years ago) by riastradh
Branch: MAIN
Branch point for: tls-earlyentropy
Changes since 1.2: +33 -4 lines
Diff to previous 1.2 (colored)

Miscellaneous fixes for drm2 on i386.

Revision 1.2 / (download) - annotate - [select for diffs], Tue Mar 18 18:20:42 2014 UTC (10 years ago) by riastradh
Branch: MAIN
CVS Tags: riastradh-xf86-video-intel-2-7-1-pre-2-21-15
Changes since 1.1: +406 -4 lines
Diff to previous 1.1 (colored)

Merge riastradh-drm2 to HEAD.

Revision 1.1.1.1.2.58 / (download) - annotate - [select for diffs], Wed Mar 5 14:42:27 2014 UTC (10 years, 1 month ago) by riastradh
Branch: riastradh-drm2
Changes since 1.1.1.1.2.57: +1 -1 lines
Diff to previous 1.1.1.1.2.57 (colored) to branchpoint 1.1.1.1 (colored) next main 1.1.1.2 (colored)

Handle attach failure and don't try a framebuffer in i915 on failure.

Revision 1.1.1.1.2.57 / (download) - annotate - [select for diffs], Tue Mar 4 20:45:16 2014 UTC (10 years, 1 month ago) by riastradh
Branch: riastradh-drm2
Changes since 1.1.1.1.2.56: +23 -0 lines
Diff to previous 1.1.1.1.2.56 (colored) to branchpoint 1.1.1.1 (colored)

Rework drm2 configuration and modularization.

- Split drm2.kmod into drmkms_linux, drmkms, drmkms_pci.
- Split up drmkms-related files.* similarly.
- Make drm_agp_* routines hooks that the drmkms_pci module installs.
- Reuse drm device major 180 for (old) drm and drmkms.

Now old drm and new drmkms can coexist happily in the same tree, with
or without PCI, and require no changes to userland.

Revision 1.1.1.1.2.56 / (download) - annotate - [select for diffs], Wed Jan 22 16:40:44 2014 UTC (10 years, 2 months ago) by riastradh
Branch: riastradh-drm2
Changes since 1.1.1.1.2.55: +3 -1 lines
Diff to previous 1.1.1.1.2.55 (colored) to branchpoint 1.1.1.1 (colored)

Tidy up and reuse the code I had already written for gem mmapping.

Revision 1.1.1.1.2.55 / (download) - annotate - [select for diffs], Wed Jan 15 21:25:29 2014 UTC (10 years, 2 months ago) by riastradh
Branch: riastradh-drm2
Changes since 1.1.1.1.2.54: +1 -6 lines
Diff to previous 1.1.1.1.2.54 (colored) to branchpoint 1.1.1.1 (colored)

Hack up vblank events and make them work.

Revision 1.1.1.1.2.54 / (download) - annotate - [select for diffs], Wed Jan 15 13:53:53 2014 UTC (10 years, 2 months ago) by riastradh
Branch: riastradh-drm2
Changes since 1.1.1.1.2.53: +0 -7 lines
Diff to previous 1.1.1.1.2.53 (colored) to branchpoint 1.1.1.1 (colored)

Rewrite drm locking support for NetBSD.

Revision 1.1.1.1.2.53 / (download) - annotate - [select for diffs], Sun Sep 8 16:30:13 2013 UTC (10 years, 7 months ago) by riastradh
Branch: riastradh-drm2
Changes since 1.1.1.1.2.52: +0 -1 lines
Diff to previous 1.1.1.1.2.52 (colored) to branchpoint 1.1.1.1 (colored)

Simplify drm_ioremap and map only what is requested, exclusively.

Revision 1.1.1.1.2.52 / (download) - annotate - [select for diffs], Sun Sep 8 16:11:29 2013 UTC (10 years, 7 months ago) by riastradh
Branch: riastradh-drm2
Changes since 1.1.1.1.2.51: +0 -13 lines
Diff to previous 1.1.1.1.2.51 (colored) to branchpoint 1.1.1.1 (colored)

Remove some more needless #ifdef __NetBSD__.

Revision 1.1.1.1.2.51 / (download) - annotate - [select for diffs], Sun Sep 8 15:41:07 2013 UTC (10 years, 7 months ago) by riastradh
Branch: riastradh-drm2
Changes since 1.1.1.1.2.50: +5 -1 lines
Diff to previous 1.1.1.1.2.50 (colored) to branchpoint 1.1.1.1 (colored)

Implement drm_cache.c, for x86 only at the moment.

Revision 1.1.1.1.4.2 / (download) - annotate - [select for diffs], Wed Aug 28 23:59:34 2013 UTC (10 years, 7 months ago) by rmind
Branch: rmind-smpnet
Changes since 1.1.1.1.4.1: +1779 -0 lines
Diff to previous 1.1.1.1.4.1 (colored) to branchpoint 1.1.1.1 (colored)

sync with head

Revision 1.1.1.1.2.50 / (download) - annotate - [select for diffs], Wed Jul 24 03:53:46 2013 UTC (10 years, 8 months ago) by riastradh
Branch: riastradh-drm2
Changes since 1.1.1.1.2.49: +4 -0 lines
Diff to previous 1.1.1.1.2.49 (colored) to branchpoint 1.1.1.1 (colored)

Constify bus member of struct drm_driver.

Revision 1.1.1.1.2.49 / (download) - annotate - [select for diffs], Wed Jul 24 03:24:03 2013 UTC (10 years, 8 months ago) by riastradh
Branch: riastradh-drm2
Changes since 1.1.1.1.2.48: +5 -0 lines
Diff to previous 1.1.1.1.2.48 (colored) to branchpoint 1.1.1.1 (colored)

Kludge up Linux PCI device shims.

. New drm_pci_attach/drm_pci_detach simplify initialization of
autoconf-derived struct pci_dev.

. New linux_pci_dev_init initializes struct pci_dev so that there's
one place where all its fields are listed.  The kludge parameter is,
well, kludgey.  Sorry.

. Replace pci_kludgey_find_dev by pci_get_bus_and_slot with the same
interface as Linux's, but some kasserts requiring it to look for the
one bus/device/function tuple that i915drm is interested in.

. Add pci_get_class which does similarly, for intel_detect_pch.

Later pci_get_bus_and_slot and pci_get_class should be fixed once we
can pass a cookie through PCI bus enumeration and pci_find_device.

Revision 1.1.1.1.2.48 / (download) - annotate - [select for diffs], Wed Jul 24 03:23:31 2013 UTC (10 years, 8 months ago) by riastradh
Branch: riastradh-drm2
Changes since 1.1.1.1.2.47: +6 -0 lines
Diff to previous 1.1.1.1.2.47 (colored) to branchpoint 1.1.1.1 (colored)

Constify name, desc, and date strings in struct drm_driver.

Revision 1.1.1.1.2.47 / (download) - annotate - [select for diffs], Wed Jul 24 03:23:00 2013 UTC (10 years, 8 months ago) by riastradh
Branch: riastradh-drm2
Changes since 1.1.1.1.2.46: +5 -0 lines
Diff to previous 1.1.1.1.2.46 (colored) to branchpoint 1.1.1.1 (colored)

Add drm_config_found for foodrm_attach to call to attach drm(4).

Revision 1.1.1.1.2.46 / (download) - annotate - [select for diffs], Wed Jul 24 03:18:05 2013 UTC (10 years, 8 months ago) by riastradh
Branch: riastradh-drm2
Changes since 1.1.1.1.2.45: +15 -0 lines
Diff to previous 1.1.1.1.2.45 (colored) to branchpoint 1.1.1.1 (colored)

Add drm_io_mapping_create_wc to drmP.h.

Linux's io_mapping_create_wc just takes a bus address and a size, but
we need to pass along extra information, namely the bus space tag,
which we shall pass via a struct drm_device.

Revision 1.1.1.1.2.45 / (download) - annotate - [select for diffs], Wed Jul 24 03:15:28 2013 UTC (10 years, 8 months ago) by riastradh
Branch: riastradh-drm2
Changes since 1.1.1.1.2.44: +20 -0 lines
Diff to previous 1.1.1.1.2.44 (colored) to branchpoint 1.1.1.1 (colored)

Add DRM_READ64 and DRM_WRITE64 to drmP.h.

Revision 1.1.1.1.2.44 / (download) - annotate - [select for diffs], Wed Jul 24 03:12:33 2013 UTC (10 years, 8 months ago) by riastradh
Branch: riastradh-drm2
Changes since 1.1.1.1.2.43: +6 -0 lines
Diff to previous 1.1.1.1.2.43 (colored) to branchpoint 1.1.1.1 (colored)

Add drm_limit_dma_space to limit the memory available for DMA.

Designed as a compatibility stub to replace dma_set_coherent_mask in
Linux.  Not exactly the same, but probably close enough for all uses
of dma_set_coherent_mask in Linux.

Revision 1.1.1.1.2.43 / (download) - annotate - [select for diffs], Wed Jul 24 03:04:34 2013 UTC (10 years, 8 months ago) by riastradh
Branch: riastradh-drm2
Changes since 1.1.1.1.2.42: +3 -0 lines
Diff to previous 1.1.1.1.2.42 (colored) to branchpoint 1.1.1.1 (colored)

Add a default (panic) case to DRM_IS_BUS_SPACE_P in drmP.h.

Revision 1.1.1.1.2.42 / (download) - annotate - [select for diffs], Wed Jul 24 02:54:09 2013 UTC (10 years, 8 months ago) by riastradh
Branch: riastradh-drm2
Changes since 1.1.1.1.2.41: +7 -0 lines
Diff to previous 1.1.1.1.2.41 (colored) to branchpoint 1.1.1.1 (colored)

Add local drm_gem_vm.c, utilities for mapping gem objects into vm.

Revision 1.1.1.1.2.41 / (download) - annotate - [select for diffs], Wed Jul 24 02:53:31 2013 UTC (10 years, 8 months ago) by riastradh
Branch: riastradh-drm2
Changes since 1.1.1.1.2.40: +3 -1 lines
Diff to previous 1.1.1.1.2.40 (colored) to branchpoint 1.1.1.1 (colored)

Add local drm_vm.c with uvm-style (but non-gem) drm page mapping.

Revision 1.1.1.1.2.40 / (download) - annotate - [select for diffs], Wed Jul 24 02:52:22 2013 UTC (10 years, 8 months ago) by riastradh
Branch: riastradh-drm2
Changes since 1.1.1.1.2.39: +12 -0 lines
Diff to previous 1.1.1.1.2.39 (colored) to branchpoint 1.1.1.1 (colored)

Adjust fields of struct drm_gem_object for uvm.

Add a struct uvm_object pointer gemo_uao for an anonymous object to
back shared memory, and a struct uvm_object gemo_uvmobj for custom
device page mapping.

In struct drm_driver, replace the Linux VM operations gem_vm_ops by
NetBSD UVM operations gem_uvm_ops, so that the compiler will catch
any extant references to the Linux structure that will need changing.

Revision 1.1.1.1.2.39 / (download) - annotate - [select for diffs], Wed Jul 24 02:51:51 2013 UTC (10 years, 8 months ago) by riastradh
Branch: riastradh-drm2
Changes since 1.1.1.1.2.38: +4 -0 lines
Diff to previous 1.1.1.1.2.38 (colored) to branchpoint 1.1.1.1 (colored)

Ifdef out some drm prime stuff in drmP.h.

Revision 1.1.1.1.2.38 / (download) - annotate - [select for diffs], Wed Jul 24 02:47:05 2013 UTC (10 years, 8 months ago) by riastradh
Branch: riastradh-drm2
Changes since 1.1.1.1.2.37: +98 -0 lines
Diff to previous 1.1.1.1.2.37 (colored) to branchpoint 1.1.1.1 (colored)

Add operations to drmP.h for access to drm_local_map memory or I/O.

Revision 1.1.1.1.2.37 / (download) - annotate - [select for diffs], Wed Jul 24 02:46:49 2013 UTC (10 years, 8 months ago) by riastradh
Branch: riastradh-drm2
Changes since 1.1.1.1.2.36: +24 -2 lines
Diff to previous 1.1.1.1.2.36 (colored) to branchpoint 1.1.1.1 (colored)

Replace extra data in struct drm_local_map by a union.

This is a tagged union; only certain variants, specified by the map's
type, need a bus space handle and a drm bus map.  They will also need
a bus space tag later.  Other variants use other data, with more to
be added in the future, probably.

Revision 1.1.1.1.2.36 / (download) - annotate - [select for diffs], Wed Jul 24 02:45:06 2013 UTC (10 years, 8 months ago) by riastradh
Branch: riastradh-drm2
Changes since 1.1.1.1.2.35: +2 -2 lines
Diff to previous 1.1.1.1.2.35 (colored) to branchpoint 1.1.1.1 (colored)

Add drm_bind_agp, drm_unbind_agp, & drm_free_agp to drm_agp_netbsd.h.

These have an extra argument for the agp bridge descriptor, as
NetBSD's AGP KPI requires.

Omit declarations of drm_bind_agp, drm_unbind_agp, and drm_free_agp
from drmP.h, now that these are all declared (and defined) in
drm_agp_netbsd.h instead.

Revision 1.1.1.1.2.35 / (download) - annotate - [select for diffs], Wed Jul 24 02:39:57 2013 UTC (10 years, 8 months ago) by riastradh
Branch: riastradh-drm2
Changes since 1.1.1.1.2.34: +9 -0 lines
Diff to previous 1.1.1.1.2.34 (colored) to branchpoint 1.1.1.1 (colored)

Add fields to struct drm_sg_mem for NetBSD bus_dma.

Revision 1.1.1.1.2.34 / (download) - annotate - [select for diffs], Wed Jul 24 02:39:42 2013 UTC (10 years, 8 months ago) by riastradh
Branch: riastradh-drm2
Changes since 1.1.1.1.2.33: +2 -0 lines
Diff to previous 1.1.1.1.2.33 (colored) to branchpoint 1.1.1.1 (colored)

Ifdef out declaration of drm_agp_bind_pages in drmP.h.

Nothing seems to use it, and it uses Linux's struct page anyway, so
if anything did use it it would need to be adapted.

Revision 1.1.1.1.2.33 / (download) - annotate - [select for diffs], Wed Jul 24 02:39:11 2013 UTC (10 years, 8 months ago) by riastradh
Branch: riastradh-drm2
Changes since 1.1.1.1.2.32: +1 -0 lines
Diff to previous 1.1.1.1.2.32 (colored) to branchpoint 1.1.1.1 (colored)

Add a bus_dma tag to struct drm_device.

Old drm got at this through the struct pci_attach_args sequestered
away somewhere in struct drm_device, but this way access to the dma
tag is bus-independent.

Revision 1.1.1.1.2.32 / (download) - annotate - [select for diffs], Wed Jul 24 02:38:55 2013 UTC (10 years, 8 months ago) by riastradh
Branch: riastradh-drm2
Changes since 1.1.1.1.2.31: +5 -0 lines
Diff to previous 1.1.1.1.2.31 (colored) to branchpoint 1.1.1.1 (colored)

Add fields to struct drm_dma_handle for NetBSD bus_dma.

Revision 1.1.1.1.2.31 / (download) - annotate - [select for diffs], Wed Jul 24 02:38:06 2013 UTC (10 years, 8 months ago) by riastradh
Branch: riastradh-drm2
Changes since 1.1.1.1.2.30: +1 -0 lines
Diff to previous 1.1.1.1.2.30 (colored) to branchpoint 1.1.1.1 (colored)

Expose drm_lastclose from (our local) drm_fops.c.

Linux drm_stub.c wants it.

Revision 1.1.1.1.2.30 / (download) - annotate - [select for diffs], Wed Jul 24 02:32:56 2013 UTC (10 years, 8 months ago) by riastradh
Branch: riastradh-drm2
Changes since 1.1.1.1.2.29: +7 -0 lines
Diff to previous 1.1.1.1.2.29 (colored) to branchpoint 1.1.1.1 (colored)

Tweak struct drm_lock_data.

Revision 1.1.1.1.2.29 / (download) - annotate - [select for diffs], Wed Jul 24 02:32:10 2013 UTC (10 years, 8 months ago) by riastradh
Branch: riastradh-drm2
Changes since 1.1.1.1.2.28: +3 -0 lines
Diff to previous 1.1.1.1.2.28 (colored) to branchpoint 1.1.1.1 (colored)

Add a drm bus irq cookie to struct drm_device.

Revision 1.1.1.1.2.28 / (download) - annotate - [select for diffs], Wed Jul 24 02:31:54 2013 UTC (10 years, 8 months ago) by riastradh
Branch: riastradh-drm2
Changes since 1.1.1.1.2.27: +13 -0 lines
Diff to previous 1.1.1.1.2.27 (colored) to branchpoint 1.1.1.1 (colored)

Extend struct drm_bus with irq_install and irq_uninstall operations.

These allow us to pass an intr handler cookie from install to
uninstall, which Linux doesn't do in its request_irq/free_irq but
which we need for pci_intr_establish/pci_intr_disestablish.

Revision 1.1.1.1.2.27 / (download) - annotate - [select for diffs], Wed Jul 24 02:30:26 2013 UTC (10 years, 8 months ago) by riastradh
Branch: riastradh-drm2
Changes since 1.1.1.1.2.26: +6 -0 lines
Diff to previous 1.1.1.1.2.26 (colored) to branchpoint 1.1.1.1 (colored)

Define DRM_INFO appropriately for NetBSD in drmP.h.

Revision 1.1.1.1.2.26 / (download) - annotate - [select for diffs], Wed Jul 24 02:23:06 2013 UTC (10 years, 8 months ago) by riastradh
Branch: riastradh-drm2
Changes since 1.1.1.1.2.25: +27 -0 lines
Diff to previous 1.1.1.1.2.25 (colored) to branchpoint 1.1.1.1 (colored)

Add local drm_memory.c to implement drm_ioremap and drm_iounmap.

Revision 1.1.1.1.2.25 / (download) - annotate - [select for diffs], Wed Jul 24 02:21:22 2013 UTC (10 years, 8 months ago) by riastradh
Branch: riastradh-drm2
Changes since 1.1.1.1.2.24: +10 -3 lines
Diff to previous 1.1.1.1.2.24 (colored) to branchpoint 1.1.1.1 (colored)

Fix up drm_read and drm_poll a little.

Still #ifdef'd out because it needs some selnotify calls to actually
work, but the #ifdef'd code now compiles and looks more plausible --
doesn't hold onto spin locks during loops and uiomoves.

Revision 1.1.1.1.2.24 / (download) - annotate - [select for diffs], Wed Jul 24 02:19:53 2013 UTC (10 years, 8 months ago) by riastradh
Branch: riastradh-drm2
Changes since 1.1.1.1.2.23: +9 -1 lines
Diff to previous 1.1.1.1.2.23 (colored) to branchpoint 1.1.1.1 (colored)

Move OS-independent cruft from drm_drv.c to a new drm_fops.c.

Revision 1.1.1.1.2.23 / (download) - annotate - [select for diffs], Wed Jul 24 02:18:42 2013 UTC (10 years, 8 months ago) by riastradh
Branch: riastradh-drm2
Changes since 1.1.1.1.2.22: +6 -0 lines
Diff to previous 1.1.1.1.2.22 (colored) to branchpoint 1.1.1.1 (colored)

First draft of NetBSD drm(4) driver attachment goop.

- Attachments will look like: drm0 at i915drm0 at pci0.  In the
future, we may have wsdisplay0 at (drmfb0 at) drm0 at pci0.  The
intent is to avoid having vga0, radeonfb0, &c., attach at pci0, and
then having drm0 parasitically sucking their memory as we currently
do with old drm.  The drm0 device exists only so that we can have a
unified /dev/drm device node exposed to userland (i.e., a single drm
device major).

- There are some OS-independent subroutines here that don't belong.
I wrote them by
  . studying the Linux driver attachment goop in dist/drm/drm_drv.c,
    drm_fops.c, and drm_stub.c;
  . identifying what logic is about DRM rather than about Linux's
    driver KPI; and
  . writing NetBSD driver attachment goop based on that information,
    with the logic that is about DRM and independent of driver KPI
    separated out into separate subroutines (drm_open_file, &c.).

- Initialization of struct drm_device is missing.  It's not clear yet
whether this should be done by i915drm_attach &c., perhaps using some
utility (say, drm_device_initialize) defined here, or whether this
should be done mostly by drm_attach.

- Poll and read are missing.  I suspect they will have to be filled
in at some point, in spite of comments in the old drm code to the
effect that they exist only for legacy X servers -- it looks like
more recent libdrms rely on them.

- Compile-tested only so far; this code is far from running.

Revision 1.1.1.1.2.22 / (download) - annotate - [select for diffs], Wed Jul 24 02:17:14 2013 UTC (10 years, 8 months ago) by riastradh
Branch: riastradh-drm2
Changes since 1.1.1.1.2.21: +1 -1 lines
Diff to previous 1.1.1.1.2.21 (colored) to branchpoint 1.1.1.1 (colored)

Need to mask off IOC_DIRMASK too in DRM_IOCTL_NR.

Revision 1.1.1.1.2.21 / (download) - annotate - [select for diffs], Wed Jul 24 02:16:56 2013 UTC (10 years, 8 months ago) by riastradh
Branch: riastradh-drm2
Changes since 1.1.1.1.2.20: +2 -0 lines
Diff to previous 1.1.1.1.2.20 (colored) to branchpoint 1.1.1.1 (colored)

Ifdef out unused and now uninitialized fields of drm_agp_head.

Revision 1.1.1.1.2.20 / (download) - annotate - [select for diffs], Wed Jul 24 02:16:40 2013 UTC (10 years, 8 months ago) by riastradh
Branch: riastradh-drm2
Changes since 1.1.1.1.2.19: +7 -0 lines
Diff to previous 1.1.1.1.2.19 (colored) to branchpoint 1.1.1.1 (colored)

Define DRM_IOCTL_NR and DRM_MAJOR appropriately for NetBSD.

Revision 1.1.1.1.2.19 / (download) - annotate - [select for diffs], Wed Jul 24 02:13:23 2013 UTC (10 years, 8 months ago) by riastradh
Branch: riastradh-drm2
Changes since 1.1.1.1.2.18: +2 -0 lines
Diff to previous 1.1.1.1.2.18 (colored) to branchpoint 1.1.1.1 (colored)

Sprinkle const into drm_crtc.c where string literals are involved.

Omit unused drm_get_connector_status_name (was used only by sysfs)
and drm_get_dirty_info_name (seems to have been completely unused).

Revision 1.1.1.1.2.18 / (download) - annotate - [select for diffs], Wed Jul 24 02:08:17 2013 UTC (10 years, 8 months ago) by riastradh
Branch: riastradh-drm2
Changes since 1.1.1.1.2.17: +3 -0 lines
Diff to previous 1.1.1.1.2.17 (colored) to branchpoint 1.1.1.1 (colored)

Remove apparently unused struct drm_context::last_switch.

Revision 1.1.1.1.2.17 / (download) - annotate - [select for diffs], Wed Jul 24 02:05:49 2013 UTC (10 years, 8 months ago) by riastradh
Branch: riastradh-drm2
Changes since 1.1.1.1.2.16: +4 -0 lines
Diff to previous 1.1.1.1.2.16 (colored) to branchpoint 1.1.1.1 (colored)

Declare compatibility frobs drm_ioremap and drm_iounmap in drmP.h.

To be implemented later.

Revision 1.1.1.1.2.16 / (download) - annotate - [select for diffs], Wed Jul 24 02:05:33 2013 UTC (10 years, 8 months ago) by riastradh
Branch: riastradh-drm2
Changes since 1.1.1.1.2.15: +2 -0 lines
Diff to previous 1.1.1.1.2.15 (colored) to branchpoint 1.1.1.1 (colored)

Unifdef declaration of drm_global_mutex in drmP.h.

XXX Should probably be declared as drm_interlock_t instead.

Revision 1.1.1.1.2.15 / (download) - annotate - [select for diffs], Wed Jul 24 01:59:37 2013 UTC (10 years, 8 months ago) by riastradh
Branch: riastradh-drm2
Changes since 1.1.1.1.2.14: +0 -15 lines
Diff to previous 1.1.1.1.2.14 (colored) to branchpoint 1.1.1.1 (colored)

Kill some #ifs in drmP.h by adding Linuxoid PCI goo to <linux/pci.h>.

Revision 1.1.1.1.2.14 / (download) - annotate - [select for diffs], Wed Jul 24 01:58:36 2013 UTC (10 years, 8 months ago) by riastradh
Branch: riastradh-drm2
Changes since 1.1.1.1.2.13: +4 -0 lines
Diff to previous 1.1.1.1.2.13 (colored) to branchpoint 1.1.1.1 (colored)

Implement drm_can_sleep by always returning false.

Not quite correct, but all we have in the kernel is assert_sleepable,
no sleepable_p, and it's not obvious to me that asking whether it's
kosher to sleep is ever a sensible thing to do.

Revision 1.1.1.1.2.13 / (download) - annotate - [select for diffs], Wed Jul 24 01:58:05 2013 UTC (10 years, 8 months ago) by riastradh
Branch: riastradh-drm2
Changes since 1.1.1.1.2.12: +1 -0 lines
Diff to previous 1.1.1.1.2.12 (colored) to branchpoint 1.1.1.1 (colored)

Provisionally forward-declare struct pci_dev in drmP.h.

Revision 1.1.1.1.2.12 / (download) - annotate - [select for diffs], Wed Jul 24 01:57:06 2013 UTC (10 years, 8 months ago) by riastradh
Branch: riastradh-drm2
Changes since 1.1.1.1.2.11: +14 -0 lines
Diff to previous 1.1.1.1.2.11 (colored) to branchpoint 1.1.1.1 (colored)

Dribble some PCI device goo into drmP.h.

Revision 1.1.1.1.2.11 / (download) - annotate - [select for diffs], Wed Jul 24 01:55:29 2013 UTC (10 years, 8 months ago) by riastradh
Branch: riastradh-drm2
Changes since 1.1.1.1.2.10: +18 -0 lines
Diff to previous 1.1.1.1.2.10 (colored) to branchpoint 1.1.1.1 (colored)

Ifdef out a bunch of stuff in <drm/drmP.h>.

Some of it is for debugs/sysfs/procfs and not fit for NetBSD.
Some of it is to be revisited later and adapted to NetBSD.

Revision 1.1.1.1.2.10 / (download) - annotate - [select for diffs], Wed Jul 24 01:55:14 2013 UTC (10 years, 8 months ago) by riastradh
Branch: riastradh-drm2
Changes since 1.1.1.1.2.9: +1 -0 lines
Diff to previous 1.1.1.1.2.9 (colored) to branchpoint 1.1.1.1 (colored)

Include <asm/barrier.h> in <drm/drmP.h>.

Revision 1.1.1.1.2.9 / (download) - annotate - [select for diffs], Wed Jul 24 01:54:35 2013 UTC (10 years, 8 months ago) by riastradh
Branch: riastradh-drm2
Changes since 1.1.1.1.2.8: +1 -0 lines
Diff to previous 1.1.1.1.2.8 (colored) to branchpoint 1.1.1.1 (colored)

Include <linux/timer.h> in <drm/drmP.h>.

Revision 1.1.1.1.2.8 / (download) - annotate - [select for diffs], Wed Jul 24 01:53:03 2013 UTC (10 years, 8 months ago) by riastradh
Branch: riastradh-drm2
Changes since 1.1.1.1.2.7: +1 -0 lines
Diff to previous 1.1.1.1.2.7 (colored) to branchpoint 1.1.1.1 (colored)

Add shim pm_message_t in crude imitation of Linux.

Revision 1.1.1.1.2.7 / (download) - annotate - [select for diffs], Wed Jul 24 01:51:52 2013 UTC (10 years, 8 months ago) by riastradh
Branch: riastradh-drm2
Changes since 1.1.1.1.2.6: +1 -0 lines
Diff to previous 1.1.1.1.2.6 (colored) to branchpoint 1.1.1.1 (colored)

Include <linux/kref.h> in <drm/drmP.h>.

Revision 1.1.1.1.2.6 / (download) - annotate - [select for diffs], Wed Jul 24 01:50:10 2013 UTC (10 years, 8 months ago) by riastradh
Branch: riastradh-drm2
Changes since 1.1.1.1.2.5: +41 -0 lines
Diff to previous 1.1.1.1.2.5 (colored) to branchpoint 1.1.1.1 (colored)

Convert drmP.h to use drm_waitqueue_t instead of wait_queue_head_t.

Revision 1.1.1.1.2.5 / (download) - annotate - [select for diffs], Wed Jul 24 01:49:50 2013 UTC (10 years, 8 months ago) by riastradh
Branch: riastradh-drm2
Changes since 1.1.1.1.2.4: +2 -0 lines
Diff to previous 1.1.1.1.2.4 (colored) to branchpoint 1.1.1.1 (colored)

Remove Linuxoid definitions of __OS_HAS_{AGP,MTRR} from drmP.h.

Revision 1.1.1.1.2.4 / (download) - annotate - [select for diffs], Wed Jul 24 00:52:41 2013 UTC (10 years, 8 months ago) by riastradh
Branch: riastradh-drm2
Changes since 1.1.1.1.2.3: +2 -0 lines
Diff to previous 1.1.1.1.2.3 (colored) to branchpoint 1.1.1.1 (colored)

Include <linux/atomic.h> and <linux/uidgid.h> in <drm/drmP.h>.

Revision 1.1.1.1.2.3 / (download) - annotate - [select for diffs], Wed Jul 24 00:51:31 2013 UTC (10 years, 8 months ago) by riastradh
Branch: riastradh-drm2
Changes since 1.1.1.1.2.2: +4 -0 lines
Diff to previous 1.1.1.1.2.2 (colored) to branchpoint 1.1.1.1 (colored)

Add <drm/drm_os_netbsd.h> and include it in <drm/drmP.h>.

Revision 1.1.1.1.2.2 / (download) - annotate - [select for diffs], Tue Jul 23 21:28:23 2013 UTC (10 years, 8 months ago) by riastradh
Branch: riastradh-drm2
Changes since 1.1.1.1.2.1: +1779 -0 lines
Diff to previous 1.1.1.1.2.1 (colored) to branchpoint 1.1.1.1 (colored)

sync with HEAD and actually get the drm2 import

Revision 1.1.1.1.4.1, Tue Jul 23 02:13:29 2013 UTC (10 years, 8 months ago) by rmind
Branch: rmind-smpnet
Changes since 1.1.1.1: +0 -1779 lines
FILE REMOVED

file drmP.h was added on branch rmind-smpnet on 2013-08-28 23:59:34 +0000

Revision 1.1.1.1.2.1, Tue Jul 23 02:13:29 2013 UTC (10 years, 8 months ago) by riastradh
Branch: riastradh-drm2
Changes since 1.1.1.1: +0 -1779 lines
FILE REMOVED

file drmP.h was added on branch riastradh-drm2 on 2013-07-23 21:28:23 +0000

Revision 1.1.1.1 / (download) - annotate - [select for diffs] (vendor branch), Tue Jul 23 02:13:29 2013 UTC (10 years, 8 months ago) by riastradh
Branch: LINUX
CVS Tags: riastradh-drm2-base3, riastradh-drm2-base2, linux-3-6-rc8-drm2-bsd
Branch point for: rmind-smpnet, riastradh-drm2
Changes since 1.1: +0 -0 lines
Diff to previous 1.1 (colored)

Import drm sources from Linux v3.8-rc6.
(commit id 88b62b915b0b7e25870eb0604ed9a92ba4bfc9f7)

Linux                   NetBSD
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

Files/subtrees excluded because of licence issues, to be either
revisited later (particularly nouveau and radeon, which are mostly
permissively licensed but a number of whose files have no licence
statements), rewritten/ignored, or imported later as kernel modules
under external/gpl2 instead:

   include/drm/drm_fb_cma_helper.h
   include/drm/drm_gem_cma_helper.h
   include/drm/drm_os_linux.h
   include/drm/drm_pciids.h
   include/drm/drm_sysfs.h
   include/drm/drm_usb.h
   include/drm/exynos_drm.h
   include/drm/gma_drm.h
   include/drm/intel-gtt.h
   drm/cirrus
   drm/drm_edid_load.c
   drm/drm_fb_cma_helper.c
   drm/drm_gem_cma_helper.c
   drm/drm_sysfs.c
   drm/drm_trace.h
   drm/drm_trace_points.c
   drm/drm_usb.c
   drm/exynos
   drm/gma500
   drm/i915/i915_trace.h
   drm/i915/i915_trace_points.c
   drm/i915/intel_acpi.c
   drm/mgag200
   drm/nouveau
   drm/radeon
   drm/shmobile
   drm/tegra
   drm/udl
   uapi/exynos_drm.h

Revision 1.1 / (download) - annotate - [select for diffs], Tue Jul 23 02:13:29 2013 UTC (10 years, 8 months ago) by riastradh
Branch: MAIN

Initial revision

This form allows you to request diff's between any two revisions of a file. You may select a symbolic revision name using the selection box or you may type in a numeric name using the type-in text box.




CVSweb <webmaster@jp.NetBSD.org>