summaryrefslogtreecommitdiff
path: root/shared-core/nouveau_irq.c
AgeCommit message (Expand)Author
2008-05-02nv50: enable 0x400500 bit 0 after PGRAPH exception alsoBen Skeggs
2008-05-02nouveau: guard against channels potentially not having a context, fix nv50Ben Skeggs
2008-05-02nouveau: disable all card interrupts when unknown PFIFO IRQ occurs.Ben Skeggs
2008-05-02nouveau: restore original NV_PFIFO_CACHES_REASSIGN value in fifo handlerBen Skeggs
2008-05-02nouveau: gather nsource in trap_info()Ben Skeggs
2008-05-02nv50: PGRAPH exception handling completely different from earlier chipsBen Skeggs
2008-04-05nv50: primitive i2c interrupt handlerMaarten Maathuis
2008-04-03nv50: primitive display interrupt handler.Maarten Maathuis
2008-01-22Merge branch 'master' into vblank-rework, including mach64 supportJesse Barnes
2007-11-14nouveau: funcs to determine active channel on PFIFO.Ben Skeggs
2007-11-05drm: remove lots of spurious whitespace.Dave Airlie
2007-11-05nouveau: Use a sw method instead of notify interrupt to signal fence completion.Ben Skeggs
2007-11-05nouveau: cleanupsBen Skeggs
2007-11-05nouveau: only pass annoying messages if irq isn't handled fully.Ben Skeggs
2007-11-05nouveau: hook up an inital fence irq handlerBen Skeggs
2007-10-30Merge branch 'master' into vblank-rework, fixup remaining driversJesse Barnes
2007-10-16nouveau: Cleanup PGRAPH handler, attempt to survive PGRAPH exceptions.Ben Skeggs
2007-10-16nouveau: Survive PFIFO_CACHE_ERROR.Ben Skeggs
2007-10-16nouveau: Handle multiple PFIFO exceptions per irq, cleanup output.Ben Skeggs
2007-10-12nouveau: mandatory "oops I forgot half of the files" commitArthur Huillet
2007-10-10nouveau : nv10 and nv04 PGRAPH_NSTATUS are differentMatthieu Castet
2007-10-06nouveau : print correct value in nouveau_graph_dump_trap_info for nv04Matthieu Castet
2007-09-30nouveau: let nv20 hardware do ctx switching automatically.Pekka Paalanen
2007-09-30nouveau: NV30 should never call nouveau_nv20_context_switch().Pekka Paalanen
2007-08-26nouveau : add NV04_PGRAPH_TRAPPED_ADDR definitionMatthieu Castet
2007-08-09nouveau: silence irq handler a bitBen Skeggs
2007-08-08nouveau: return channel idBen Skeggs
2007-08-08nouveau: enable/disable engine-specific interrupts in _init()/_takedown()Ben Skeggs
2007-08-07nouveau : fix enable irq (in the previous code all irq were masked by engineMatthieu Castet
2007-08-06nouveau: Determine trapped channel id from active grctx on >=NV40Ben Skeggs
2007-07-18nouveau: Add bitfield names for NSOURCE and NSTATUS.Pekka Paalanen
2007-07-18nouveau: Replace 0x00400104 and 0x00400108 with names.Pekka Paalanen
2007-07-14nouveau: nv10 and nv11/15 are differentPatrice Mandin
2007-07-13nouveau: nuke internal typedefs, and drm_device_t use.Ben Skeggs
2007-07-09nouveau/nv50: Initial channel/object supportBen Skeggs
2007-07-09nouveau: enable reporting for all PFIFO/PGRAPH irqsBen Skeggs
2007-05-08nouveau : fix fifo context size for nv10Matthieu Castet
2007-03-26nouveau: move card initialisation into the drmBen Skeggs
2007-03-07nouveau: ack PFIFO interrupts at PFIFO, not PMC.Ben Skeggs
2007-02-28nouveau: intrusive drm interface changesBen Skeggs
2007-02-03nouveau: and of course, I was missing the last nv04 piece.Stephane Marchesin
2007-02-03nouveau: rename registers to their proper names.Stephane Marchesin
2007-01-25nouveau: always print nsource/nstatus regs on PGRAPH errorsBen Skeggs
2007-01-17nouveau: Try to get nv35 pgraph switching working. Doesn't quite yet.Jeremy Kolb
2007-01-13nouveau: nv20 graph ctx switch.Matthieu Castet
2007-01-13nouveau: first step to make graph ctx worksMatthieu Castet
2007-01-05Add basic pgraph context for nv10.Matthieu Castet
2006-11-21Don't spam dmesg if PMC_INTSTAT is 0Ben Skeggs
2006-11-17Dump some useful info when a PGRAPH error occurs.Ben Skeggs
2006-10-18Oops, we have more than 4 subchannels..Ben Skeggs
pan class="hl opt">-pedantic -DPOSIX_C_SOURCE=199309L \ -D_POSIX_SOURCE -D_XOPEN_SOURCE -D_BSD_SOURCE -D_SVID_SOURCE \ -I../../../../../../include -I../../../../../../../../include \ -I../../../../../../../../programs/Xserver/hw/xfree86/common \ -I. -I../../.. -I../../../../../../../../lib/X11 PRGLIBS = # **** Start of SMP/MODVERSIONS detection # First, locate correct tree for this kernel version. If we find a # matching tree, we assume that we can rely on that tree's autoconf.h. # This may not be correct, but it is the best assumption we can make. VERSION := $(shell uname -r) # For Red Hat... RHVERS := $(shell uname -r)custom A := /lib/modules/$(VERSION)/build/include B := /usr/src/linux-$(VERSION)/include C := /usr/src/linux/include D := /usr/include V := $(shell gcc -E -nostdinc -I$A picker.c 2>/dev/null \ | grep -s 'RELEASE = ' | cut -d' ' -f3) ifeq ($(V),"$(VERSION)") TREE := $A else ifeq ($(V),"$(RHVERS)") TREE := $A else V := $(shell gcc -E -nostdinc -I$B picker.c 2>/dev/null \ | grep -s 'RELEASE = ' | cut -d' ' -f3) ifeq ($(V),"$(VERSION)") TREE := $B else ifeq ($(V),"$(RHVERS)") TREE := $B else V := $(shell gcc -E -nostdinc -I$C picker.c 2>/dev/null \ | grep -s 'RELEASE = ' | cut -d' ' -f3) ifeq ($(V),"$(VERSION)") TREE := $C else V := $(shell gcc -E -nostdinc -I$D picker.c 2>/dev/null \ | grep -s 'RELEASE = ' | cut -d' ' -f3) ifeq ($(V),"$(VERSION)") TREE := $D else TREE := 0 endif endif endif endif endif endif ifeq ($(TREE),0) all:; @echo Error: Could not locate kernel tree in $A $B $C $D else SMP := $(shell gcc -E -nostdinc -I$(TREE) picker.c 2>/dev/null \ | grep -s 'SMP = ' | cut -d' ' -f3) MODULES := $(shell gcc -E -nostdinc -I$(TREE) picker.c 2>/dev/null \ | grep -s 'MODULES = ' | cut -d' ' -f3) MODVERSIONS := $(shell gcc -E -nostdinc -I$(TREE) picker.c 2>/dev/null \ | grep -s 'MODVERSIONS = ' | cut -d' ' -f3) AGP := $(shell gcc -E -nostdinc -I$(TREE) picker.c 2>/dev/null \ | grep -s 'AGP = ' | cut -d' ' -f3) MACHINE := $(shell echo `uname -m`) # Red Hat's kernels have 4 args to do_munmap() DOMUNMAP := $(shell grep do_munmap $(TREE)/linux/mm.h | grep -c acct) ifeq ($(AGP),0) AGP := $(shell gcc -E -nostdinc -I$(TREE) picker.c 2>/dev/null \ | grep -s 'AGP_MODULE = ' | cut -d' ' -f3) endif ifeq ($(DOMUNMAP),1) MODCFLAGS += -DDO_MUNMAP_4_ARGS endif ifeq ($(AGP),1) MODCFLAGS += -DCONFIG_AGP -DCONFIG_AGP_MODULE DRMTEMPLATES += drm_agpsupport.h MODS += mga.o ifeq ($(MACHINE),i386) MODS += i810.o MODS += i830.o endif ifeq ($(MACHINE),i686) MODS += i810.o MODS += i830.o endif MGAOBJS = mga_drv.o mga_dma.o mga_state.o mga_warp.o MGAHEADERS = mga.h mga_drv.h mga_drm.h $(DRMHEADERS) $(DRMTEMPLATES) I810OBJS = i810_drv.o i810_dma.o I810HEADERS = i810.h i810_drv.h i810_drm.h $(DRMHEADERS) $(DRMTEMPLATES) I830OBJS = i830_drv.o i830_dma.o I830HEADERS = i830.h i830_drv.h i830_drm.h $(DRMHEADERS) $(DRMTEMPLATES) endif ifeq ($(MACHINE),alpha) MODCFLAGS+= -ffixed-8 -mno-fp-regs -mcpu=ev56 -Wa,-mev6 endif MODS += sis.o SISOBJS= sis_drv.o sis_mm.o sis_ds.o SISHEADERS= sis_drv.h sis_drm.h $(DRMHEADERS) MODCFLAGS += -DCONFIG_DRM_SIS all::;@echo === KERNEL HEADERS IN $(TREE) all::;@echo === SMP=${SMP} MODULES=${MODULES} MODVERSIONS=${MODVERSIONS} AGP=${AGP} all::;@echo === Compiling for machine $(MACHINE) all::;@echo === WARNING all::;@echo === WARNING Use 2.4.x kernels ONLY ! all::;@echo === WARNING ifeq ($(MODULES),0) all::;@echo all::;@echo "*** Kernel modules must be configured. Build aborted." all::;@echo else all:: $(LIBS) $(MODS) $(PROGS) endif endif # **** End of SMP/MODVERSIONS detection # **** Handle SMP/MODVERSIONS ifeq ($(SMP),1) MODCFLAGS += -D__SMP__ endif ifeq ($(MODVERSIONS),1) MODCFLAGS += -DMODVERSIONS -include $(TREE)/linux/modversions.h endif # **** End of configuration dristat: dristat.c $(CC) $(PRGCFLAGS) $< -o $@ DRIsetup: DRIsetup.c $(CC) $(PRGCFLAGS) $< -o $@ -L/usr/X11R6/lib -lGL -lm ../../../../parser/libxf86config.a ../libdrm.a gamma_drv.o: gamma_drv.c $(CC) $(MODCFLAGS) -DEXPORT_SYMTAB -I$(TREE) -c $< -o $@ gamma.o: $(GAMMAOBJS) $(LD) -r $^ -o $@ tdfx_drv.o: tdfx_drv.c $(CC) $(MODCFLAGS) -DEXPORT_SYMTAB -I$(TREE) -c $< -o $@ tdfx.o: $(TDFXOBJS) $(LIBS) $(LD) -r $^ -o $@ sis.o: $(SISOBJS) $(LIBS) $(LD) -r $^ -o $@ r128_drv.o: r128_drv.c $(CC) $(MODCFLAGS) -DEXPORT_SYMTAB -I$(TREE) -c $< -o $@ r128.o: $(R128OBJS) $(LIBS) $(LD) -r $^ -o $@ radeon_drv.o: radeon_drv.c $(CC) $(MODCFLAGS) -DEXPORT_SYMTAB -I$(TREE) -c $< -o $@ radeon.o: $(RADEONOBJS) $(LIBS) $(LD) -r $^ -o $@ ifeq ($(AGP),1) mga_drv.o: mga_drv.c $(CC) $(MODCFLAGS) -DEXPORT_SYMTAB -I$(TREE) -c $< -o $@ mga.o: $(MGAOBJS) $(LD) -r $^ -o $@ i810_drv.o: i810_drv.c $(CC) $(MODCFLAGS) -DEXPORT_SYMTAB -I$(TREE) -c $< -o $@ i810.o: $(I810OBJS) $(LIBS) $(LD) -r $^ -o $@ i830_drv.o: i830_drv.c $(CC) $(MODCFLAGS) -DEXPORT_SYMTAB -I$(TREE) -c $< -o $@ i830.o: $(I830OBJS) $(LIBS) $(LD) -r $^ -o $@ endif .PHONY: ChangeLog ChangeLog: @rm -f Changelog @rcs2log -i 2 -r -l \ | sed 's,@.*light,,' \ | sed 's,/cvsroot/.*/drm/kernel/,,g' \ > ChangeLog # .o files are used for modules %.o: %.c $(CC) $(MODCFLAGS) -I$(TREE) -c $< -o $@ $(GAMMAOBJS): $(GAMMAHEADERS) $(TDFXOBJS): $(TDFXHEADERS) $(R128OBJS): $(R128HEADERS) $(RADEONOBJS): $(RADEONHEADERS) ifeq ($(AGP),1) $(MGAOBJS): $(MGAHEADERS) $(I810OBJS): $(I810HEADERS) $(I830OBJS): $(I830HEADERS) endif clean cleandir:: rm -f *.o *.a *~ core