History log of /openbsd/sys/arch/i386/pci/agp_machdep.c (Results 1 – 24 of 24)
Revision Date Author Comments
# 7407cf33 02-Jul-2024 jsg <jsg@openbsd.org>

remove oga's copyright notice, none of those changes remain


# bd8e4671 02-Jul-2024 jsg <jsg@openbsd.org>

remove unused agp_flush_cache_range()


# bb20f6ed 02-Jul-2024 jsg <jsg@openbsd.org>

remove unused agp_map functions
last use (in inteldrm) was removed in March


# f4e70637 30-Jan-2023 jsg <jsg@openbsd.org>

remove unneeded includes in arch/i386
ok krw@ miod@


# 1e8cdc2e 16-Nov-2014 deraadt <deraadt@openbsd.org>

Replace a plethora of historical protection options with just
PROT_NONE, PROT_READ, PROT_WRITE, and PROT_EXEC from mman.h.
PROT_MASK is introduced as the one true way of extracting those bits.
Remove

Replace a plethora of historical protection options with just
PROT_NONE, PROT_READ, PROT_WRITE, and PROT_EXEC from mman.h.
PROT_MASK is introduced as the one true way of extracting those bits.
Remove UVM_ADV_* wrapper, using the standard names.
ok doug guenther kettenis

show more ...


# 2634a123 20-Sep-2014 kettenis <kettenis@openbsd.org>

On i386, agp_map_subregion might sleep, which is not allowed in some of
the inteldrm code. Fix this by adding new interfaces that can map a single
page without sleeping and use that in the execbuffe

On i386, agp_map_subregion might sleep, which is not allowed in some of
the inteldrm code. Fix this by adding new interfaces that can map a single
page without sleeping and use that in the execbuffer fast path that needs
this "atomic" behaviour. Should fix the panic I've seen under memory pressure
on i386.

show more ...


# f8e6c425 12-Jul-2014 tedu <tedu@openbsd.org>

add a size argument to free. will be used soon, but for now default to 0.
after discussions with beck deraadt kettenis.


# 8fe88747 01-Apr-2014 mpi <mpi@openbsd.org>

More <uvm/uvm.h> -> <uvm/uvm_extern.h> cleaning.

ok kettenis@, deraadt@


# d2e977c7 26-Mar-2014 mpi <mpi@openbsd.org>

No need to include <sys/lock.h> when only <sys/rwlock.h> is needed,
so remove the former and include the latter instead of pulling it
in <dev/pci/agpvar.h>. This header already requires various othe

No need to include <sys/lock.h> when only <sys/rwlock.h> is needed,
so remove the former and include the latter instead of pulling it
in <dev/pci/agpvar.h>. This header already requires various other
types anyway. While here remove unneeded headers.

show more ...


# 4d4594ce 09-Dec-2013 kettenis <kettenis@openbsd.org>

Remove MD intagp(4) code that is unused now that inteldrm(4) manages the GTT
all by itself.


# e3408df5 07-Dec-2013 kettenis <kettenis@openbsd.org>

Remove the agp-specific bus_dma code. It is no longer used now that
inteldrm(4) manages the GTT by itself.

ok miod@


# 7c84e9ef 17-Mar-2013 kettenis <kettenis@openbsd.org>

Add an interface to rebind AGP DMA mappings. To be used by the upcoming KMS
support to reload bindings after suspend/resume and to update cachability
flags in the address translation table entries.


# a9eb44cd 10-May-2010 oga <oga@openbsd.org>

Continue with the horrible habit of using agp_machdep.c for agp related MD
things that there really isn't a decent api for elsewhere.

Since on recent intel IGPs the gtt aperture is too big (256meg i

Continue with the horrible habit of using agp_machdep.c for agp related MD
things that there really isn't a decent api for elsewhere.

Since on recent intel IGPs the gtt aperture is too big (256meg is not
uncommon) to be mapped on a kva-constrained arch like i386, introduce an agp
mapping api that does things depending on arch.

On amd64 which can afford the space (and will use the direct mapping
again soon)just do bus_space_map() on init, then parcels things out
using bus_space_subregion(), thus avoiding map/unmap overhead on every
call (this is how inteldrm does things right now).

On i386, we do bus_space_map() and bus_space_unmap as appropriate. Linux
has some tricks here involving ``atomic'' maps that are on only one cpu
and that you may not sleep with to avoid the ipi overhead for tlb
flushing. For now we don't go down that route but it is being
considered.

I am also considering if it is worth abstracting this a little more,
improving the api and making it a general MD interface.

Tested by myself on i386 and amd64 and by drahn@ (who has one of the
machines with an aperture that is too big) on i386.

show more ...


# 4cebeb63 08-Apr-2010 oga <oga@openbsd.org>

Fill in the bus_dma_sync for intagp to use clflush instead of wbinvd()
if supported.

When we do memory management on intel this would lead to a LOT of
wbinvd() to deal with gpu->cpu incoherency. no

Fill in the bus_dma_sync for intagp to use clflush instead of wbinvd()
if supported.

When we do memory management on intel this would lead to a LOT of
wbinvd() to deal with gpu->cpu incoherency. no one wants that.

Needed for sanity of inteldrm memory management which is coming up next.

show more ...


# 14f2d5f5 06-Jun-2009 oga <oga@openbsd.org>

add an interface to agp to create a bus_dma_tag over a range of the
aperture, which will take your memory, bind it to agp, and return you the
aperture address. It's essentially the same as iommu on a

add an interface to agp to create a bus_dma_tag over a range of the
aperture, which will take your memory, bind it to agp, and return you the
aperture address. It's essentially the same as iommu on amd64 in the way it
works.

This will be used by the upcoming (works but is slow and will not be
enabled at first) drm memory management code for intel igp chipsets.

Right now the sync function for intagp is really slow (doing a wbinvd()
on every sync), this is in the process of getting fixed, but the size of
the diffs in my trees was getting silly.

show more ...


# 40d7c10b 25-Nov-2007 oga <oga@openbsd.org>

Make agp attach as a device. This means that many more agp bridges
actually get detected and attached. Also adds a kernel api for
manipulating agp.

Enable this on i386 and amd64.

"I think you shoul

Make agp attach as a device. This means that many more agp bridges
actually get detected and attached. Also adds a kernel api for
manipulating agp.

Enable this on i386 and amd64.

"I think you should commit it" deraadt@, ok matthieu. Looked over by
several others.

show more ...


# 7f10d90b 04-Aug-2007 reyk <reyk@openbsd.org>

Add AGP support for the intel i965 chipset, this also extends the
internal AGP API to work with 64bit PCI-Express memory and
non-standard AGP aperture bases.

tested by many
ok matthieu@, deraadt@


# b96775a3 15-May-2006 dim <dim@openbsd.org>

Add AGP support for Intel 945G/GM chipsets. The 945GM (mobile) variant
also needs a X.org update, which will go in later.

Tested by a bunch of people; ok deraadt@


# 24b9eeb5 11-Feb-2006 matthieu <matthieu@openbsd.org>

New version of i915 supprotm adapted from freebsd by Dimitry Andric, with
one tweak suggested by miod@.


# 17d09c16 03-Feb-2006 millert <millert@openbsd.org>

Back out i915 changes; they broke some i810-based machines.


# 8a5a0f02 13-Jan-2006 deraadt <deraadt@openbsd.org>

support i915. adapted from freebsd by Dimitry Andric. does not break
at least i810 on x40, but made x41 work. ok matthieu


# f2888860 20-Jan-2004 grange <grange@openbsd.org>

Support for i852/855/865 AGP; from NetBSD via Michael van der
Westhuizen <michael@skanky.homeunix.net> with little tweaks.

Tested by millert@ todd@ jmc@ andreas@ and jcs@'s friend
ok millert@


# 2d6329e6 19-Mar-2003 millert <millert@openbsd.org>

Add i830 support from NetBSD via patch in kernel/3150.
Verified to not break i81[05] and tested on two i830s.


# 0b027a24 12-Jul-2002 mickey <mickey@openbsd.org>

support for the agp gart on various agp chipsets.
only i810 driver was tested though.
based on the netbsd's lkm, initially ported
by hunter@dg.net.ua and later made into shape by mickey.
testing by a

support for the agp gart on various agp chipsets.
only i810 driver was tested though.
based on the netbsd's lkm, initially ported
by hunter@dg.net.ua and later made into shape by mickey.
testing by art@ and millert@ .

show more ...