The NetBSD Project

CVS log for src/sys/arch/powerpc/pic/intr.c

[BACK] Up to [cvs.NetBSD.org] / src / sys / arch / powerpc / pic

Request diff between arbitrary revisions


Default branch: MAIN


Revision 1.34 / (download) - annotate - [select for diffs], Wed Feb 16 23:49:27 2022 UTC (2 years, 1 month ago) by riastradh
Branch: MAIN
CVS Tags: thorpej-ifq-base, thorpej-ifq, thorpej-altq-separation-base, thorpej-altq-separation, netbsd-10-base, netbsd-10-0-RELEASE, netbsd-10-0-RC6, netbsd-10-0-RC5, netbsd-10-0-RC4, netbsd-10-0-RC3, netbsd-10-0-RC2, netbsd-10-0-RC1, netbsd-10, bouyer-sunxi-drm-base, bouyer-sunxi-drm, HEAD
Changes since 1.33: +4 -4 lines
Diff to previous 1.33 (colored) to selected 1.1.2.1 (colored)

powerpc: Sprinkle "memory" clobbers on eieio and nearby asm blocks.

Otherwise the compiler may reorder these around loads and stores,
which mostly defeats the purpose.  `asm volatile' just ensures the
instruction isn't _deleted_; it may still move around.

Revision 1.29.2.1 / (download) - annotate - [select for diffs], Sat Apr 3 22:28:35 2021 UTC (2 years, 11 months ago) by thorpej
Branch: thorpej-futex
Changes since 1.29: +11 -8 lines
Diff to previous 1.29 (colored) next main 1.30 (colored) to selected 1.1.2.1 (colored)

Sync with HEAD.

Revision 1.31.2.1 / (download) - annotate - [select for diffs], Sat Apr 3 21:44:47 2021 UTC (2 years, 11 months ago) by thorpej
Branch: thorpej-cfargs
Changes since 1.31: +10 -7 lines
Diff to previous 1.31 (colored) next main 1.32 (colored) to selected 1.1.2.1 (colored)

Sync with HEAD.

Revision 1.33 / (download) - annotate - [select for diffs], Tue Mar 23 08:07:23 2021 UTC (3 years ago) by skrll
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-cfargs2-base, thorpej-cfargs2, thorpej-cfargs-base, cjep_sun2x-base1, cjep_sun2x-base, cjep_sun2x, cjep_staticlib_x-base1, cjep_staticlib_x-base, cjep_staticlib_x
Changes since 1.32: +4 -3 lines
Diff to previous 1.32 (colored) to selected 1.1.2.1 (colored)

KNF

Revision 1.32 / (download) - annotate - [select for diffs], Mon Mar 22 01:36:10 2021 UTC (3 years ago) by rin
Branch: MAIN
Changes since 1.31: +8 -6 lines
Diff to previous 1.31 (colored) to selected 1.1.2.1 (colored)

Brush up previous, or make things more similar to x86:

- Prevent pic_name from appearing vmstat(1) twice.
- Restore "irq" in interrupt id fields of intrctl(8).

For these purposes,

- Add is_evname member to struct intr_source.
- Bump size of is_source to INTRIDBUF, and rename it to is_intrid for clarity.

Now, outputs from vmstat(1) and intrctl(8) are like:

----
$ vmstat -ev
...
openpic irq 39                                 3967   26 intr
...
$ intrctl list
interrupt id   CPU0  device name(s)
...
openpic irq 39 3967* wdc1
...
----

Revision 1.31 / (download) - annotate - [select for diffs], Sat Mar 6 07:24:24 2021 UTC (3 years ago) by rin
Branch: MAIN
Branch point for: thorpej-cfargs
Changes since 1.30: +4 -4 lines
Diff to previous 1.30 (colored) to selected 1.1.2.1 (colored)

Include PIC name to interrupt source, instead of just "irq", so that
it appears in "interrupt id" field of intrctl(8).

Should be useful when multiple PICs are simultaneously available as in
405EX (where uic[12] are cascaded to uic0).

Revision 1.30 / (download) - annotate - [select for diffs], Tue Mar 2 07:37:27 2021 UTC (3 years ago) by rin
Branch: MAIN
Changes since 1.29: +3 -3 lines
Diff to previous 1.29 (colored) to selected 1.1.2.1 (colored)

Turn imask into static.

XXX
Other macro etc. in powerpc/intr.h should also be moved into
powerpc/pic/intr.c, or protected by __INTR_PRIVATE.

Revision 1.29 / (download) - annotate - [select for diffs], Mon Jul 6 10:31:23 2020 UTC (3 years, 8 months ago) by rin
Branch: MAIN
Branch point for: thorpej-futex
Changes since 1.28: +3 -2 lines
Diff to previous 1.28 (colored) to selected 1.1.2.1 (colored)

Include missing opt_ppcarch.h.

Revision 1.28 / (download) - annotate - [select for diffs], Mon Jul 6 09:34:18 2020 UTC (3 years, 8 months ago) by rin
Branch: MAIN
Changes since 1.27: +6 -4 lines
Diff to previous 1.27 (colored) to selected 1.1.2.1 (colored)

Style and cosmetic changes. No binary changes intended.

Revision 1.25.16.2 / (download) - annotate - [select for diffs], Wed Apr 8 14:07:50 2020 UTC (3 years, 11 months ago) by martin
Branch: phil-wifi
Changes since 1.25.16.1: +17 -8 lines
Diff to previous 1.25.16.1 (colored) to branchpoint 1.25 (colored) next main 1.26 (colored) to selected 1.1.2.1 (colored)

Merge changes from current as of 20200406

Revision 1.26.6.1 / (download) - annotate - [select for diffs], Sat Feb 29 20:18:30 2020 UTC (4 years ago) by ad
Branch: ad-namecache
Changes since 1.26: +17 -8 lines
Diff to previous 1.26 (colored) next main 1.27 (colored) to selected 1.1.2.1 (colored)

Sync with head.

Revision 1.26.4.1 / (download) - annotate - [select for diffs], Tue Feb 25 20:22:14 2020 UTC (4 years, 1 month ago) by martin
Branch: netbsd-9
CVS Tags: netbsd-9-3-RELEASE, netbsd-9-2-RELEASE, netbsd-9-1-RELEASE
Changes since 1.26: +17 -8 lines
Diff to previous 1.26 (colored) next main 1.27 (colored) to selected 1.1.2.1 (colored)

Pull up following revision(s) (requested by rin in ticket #730):

	sys/arch/powerpc/conf/files.powerpc: revision 1.93
	sys/arch/powerpc/include/pio.h: revision 1.8
	sys/arch/powerpc/pic/intr.c: revision 1.27
	sys/arch/powerpc/powerpc/bus_dma.c: revision 1.50
	sys/arch/powerpc/powerpc/pio_subr.S: revision 1.17

Add PPC_IBM440 flag as 440 is significantly different from 40x processors.
(It may be more easily supported by booke than by ibm4xx.)

 -

eieio is implemented as sync on 40x. Therefore, "sync; eieio" and
"eieio; sync" can be replaced by a single sync.

Revision 1.27 / (download) - annotate - [select for diffs], Thu Feb 20 05:10:01 2020 UTC (4 years, 1 month ago) by rin
Branch: MAIN
CVS Tags: phil-wifi-20200421, phil-wifi-20200411, phil-wifi-20200406, is-mlppp-base, is-mlppp, bouyer-xenpvh-base2, bouyer-xenpvh-base1, bouyer-xenpvh-base, bouyer-xenpvh, ad-namecache-base3
Changes since 1.26: +17 -8 lines
Diff to previous 1.26 (colored) to selected 1.1.2.1 (colored)

eieio is implemented as sync on 40x. Therefore, "sync; eieio" and
"eieio; sync" can be replaced by a single sync.

Revision 1.25.16.1 / (download) - annotate - [select for diffs], Mon Jun 10 22:06:39 2019 UTC (4 years, 9 months ago) by christos
Branch: phil-wifi
Changes since 1.25: +5 -5 lines
Diff to previous 1.25 (colored) to selected 1.1.2.1 (colored)

Sync with HEAD

Revision 1.25.14.1 / (download) - annotate - [select for diffs], Thu Sep 6 06:55:39 2018 UTC (5 years, 6 months ago) by pgoyette
Branch: pgoyette-compat
CVS Tags: pgoyette-compat-merge-20190127
Changes since 1.25: +5 -5 lines
Diff to previous 1.25 (colored) next main 1.26 (colored) to selected 1.1.2.1 (colored)

Sync with HEAD

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

Revision 1.26 / (download) - annotate - [select for diffs], Mon Sep 3 16:29:26 2018 UTC (5 years, 6 months ago) by riastradh
Branch: MAIN
CVS Tags: phil-wifi-20191119, phil-wifi-20190609, pgoyette-compat-20190127, pgoyette-compat-20190118, pgoyette-compat-1226, pgoyette-compat-1126, pgoyette-compat-1020, pgoyette-compat-0930, pgoyette-compat-0906, netbsd-9-base, netbsd-9-0-RELEASE, netbsd-9-0-RC2, netbsd-9-0-RC1, isaki-audio2-base, isaki-audio2, ad-namecache-base2, ad-namecache-base1, ad-namecache-base
Branch point for: netbsd-9, ad-namecache
Changes since 1.25: +5 -5 lines
Diff to previous 1.25 (colored) to selected 1.1.2.1 (colored)

Rename min/max -> uimin/uimax for better honesty.

These functions are defined on unsigned int.  The generic name
min/max should not silently truncate to 32 bits on 64-bit systems.
This is purely a name change -- no functional change intended.

HOWEVER!  Some subsystems have

	#define min(a, b)	((a) < (b) ? (a) : (b))
	#define max(a, b)	((a) > (b) ? (a) : (b))

even though our standard name for that is MIN/MAX.  Although these
may invite multiple evaluation bugs, these do _not_ cause integer
truncation.

To avoid `fixing' these cases, I first changed the name in libkern,
and then compile-tested every file where min/max occurred in order to
confirm that it failed -- and thus confirm that nothing shadowed
min/max -- before changing it.

I have left a handful of bootloaders that are too annoying to
compile-test, and some dead code:

cobalt ews4800mips hp300 hppa ia64 luna68k vax
acorn32/if_ie.c (not included in any kernels)
macppc/if_gm.c (superseded by gem(4))

It should be easy to fix the fallout once identified -- this way of
doing things fails safe, and the goal here, after all, is to _avoid_
silent integer truncations, not introduce them.

Maybe one day we can reintroduce min/max as type-generic things that
never silently truncate.  But we should avoid doing that for a while,
so that existing code has a chance to be detected by the compiler for
conversion to uimin/uimax without changing the semantics until we can
properly audit it all.  (Who knows, maybe in some cases integer
truncation is actually intended!)

Revision 1.23.2.1 / (download) - annotate - [select for diffs], Sun Dec 3 11:36:37 2017 UTC (6 years, 3 months ago) by jdolecek
Branch: tls-maxphys
Changes since 1.23: +166 -15 lines
Diff to previous 1.23 (colored) next main 1.24 (colored) to selected 1.1.2.1 (colored)

update from HEAD

Revision 1.23.16.2 / (download) - annotate - [select for diffs], Mon Dec 5 10:54:57 2016 UTC (7 years, 3 months ago) by skrll
Branch: nick-nhusb
Changes since 1.23.16.1: +165 -4 lines
Diff to previous 1.23.16.1 (colored) to branchpoint 1.23 (colored) next main 1.24 (colored) to selected 1.1.2.1 (colored)

Sync with HEAD

Revision 1.24.2.1 / (download) - annotate - [select for diffs], Fri Nov 4 14:49:04 2016 UTC (7 years, 4 months ago) by pgoyette
Branch: pgoyette-localcount
Changes since 1.24: +165 -4 lines
Diff to previous 1.24 (colored) next main 1.25 (colored) to selected 1.1.2.1 (colored)

Sync with HEAD

Revision 1.25 / (download) - annotate - [select for diffs], Wed Oct 19 00:08:42 2016 UTC (7 years, 5 months 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-localcount-20170107, pgoyette-localcount-20161104, 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, nick-nhusb-base-20170204, nick-nhusb-base-20161204, 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, bouyer-socketcan-base, bouyer-socketcan
Branch point for: phil-wifi, pgoyette-compat
Changes since 1.24: +165 -4 lines
Diff to previous 1.24 (colored) to selected 1.1.2.1 (colored)

Added MSI/MSI-X and interrupt_distribute(9) support for powerpc.

Revision 1.23.16.1 / (download) - annotate - [select for diffs], Sun May 29 08:44:18 2016 UTC (7 years, 10 months ago) by skrll
Branch: nick-nhusb
Changes since 1.23: +3 -13 lines
Diff to previous 1.23 (colored) to selected 1.1.2.1 (colored)

Sync with HEAD

Revision 1.24 / (download) - annotate - [select for diffs], Thu May 26 17:38:05 2016 UTC (7 years, 10 months ago) by macallan
Branch: MAIN
CVS Tags: pgoyette-localcount-base, pgoyette-localcount-20160806, pgoyette-localcount-20160726, nick-nhusb-base-20161004, nick-nhusb-base-20160907, nick-nhusb-base-20160529, localcount-20160914
Branch point for: pgoyette-localcount
Changes since 1.23: +3 -13 lines
Diff to previous 1.23 (colored) to selected 1.1.2.1 (colored)

treat IPIs like regular interrupts at IPL_HIGH
should fix port-powerpc/44387
tested by chuq

Revision 1.20.2.1.2.1 / (download) - annotate - [select for diffs], Thu Nov 1 16:45:00 2012 UTC (11 years, 4 months ago) by matt
Branch: matt-nb6-plus
Changes since 1.20.2.1: +12 -9 lines
Diff to previous 1.20.2.1 (colored) next main 1.20.2.2 (colored) to selected 1.1.2.1 (colored)

sync with netbsd-6-0-RELEASE.

Revision 1.18.2.2 / (download) - annotate - [select for diffs], Tue Oct 30 17:20:13 2012 UTC (11 years, 5 months ago) by yamt
Branch: yamt-pagecache
CVS Tags: yamt-pagecache-tag8
Changes since 1.18.2.1: +18 -11 lines
Diff to previous 1.18.2.1 (colored) to branchpoint 1.18 (colored) next main 1.19 (colored) to selected 1.1.2.1 (colored)

sync with head

Revision 1.20.2.2 / (download) - annotate - [select for diffs], Mon Sep 3 19:11:30 2012 UTC (11 years, 6 months ago) by riz
Branch: netbsd-6
CVS Tags: netbsd-6-1-RELEASE, netbsd-6-1-RC4, netbsd-6-1-RC3, netbsd-6-1-RC2, netbsd-6-1-RC1, netbsd-6-1-5-RELEASE, netbsd-6-1-4-RELEASE, netbsd-6-1-3-RELEASE, netbsd-6-1-2-RELEASE, netbsd-6-1-1-RELEASE, netbsd-6-1, netbsd-6-0-RELEASE, netbsd-6-0-RC2, netbsd-6-0-6-RELEASE, netbsd-6-0-5-RELEASE, netbsd-6-0-4-RELEASE, netbsd-6-0-3-RELEASE, netbsd-6-0-2-RELEASE, netbsd-6-0-1-RELEASE, netbsd-6-0, matt-nb6-plus-nbase, matt-nb6-plus-base
Changes since 1.20.2.1: +12 -9 lines
Diff to previous 1.20.2.1 (colored) to branchpoint 1.20 (colored) next main 1.21 (colored) to selected 1.1.2.1 (colored)

Pull up following revision(s) (requested by macallan in ticket #535):
	sys/arch/powerpc/pic/intr.c: revision 1.23
when calculating per-IPL virq masks, take into account that shared =20
IRQs may
request different IPLs
fixes vr(4)-related problems seen on ofppc

Revision 1.23 / (download) - annotate - [select for diffs], Fri Aug 31 13:12:52 2012 UTC (11 years, 6 months ago) by macallan
Branch: MAIN
CVS Tags: yamt-pagecache-base9, yamt-pagecache-base8, yamt-pagecache-base7, yamt-pagecache-base6, tls-maxphys-base, tls-earlyentropy-base, tls-earlyentropy, rmind-smpnet-nbase, rmind-smpnet-base, rmind-smpnet, riastradh-xf86-video-intel-2-7-1-pre-2-21-15, riastradh-drm2-base3, riastradh-drm2-base2, riastradh-drm2-base1, riastradh-drm2-base, riastradh-drm2, nick-nhusb-base-20160422, nick-nhusb-base-20160319, nick-nhusb-base-20151226, nick-nhusb-base-20150921, nick-nhusb-base-20150606, nick-nhusb-base-20150406, nick-nhusb-base, netbsd-7-nhusb-base-20170116, netbsd-7-nhusb-base, netbsd-7-nhusb, netbsd-7-base, 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-RC2, netbsd-7-0-RC1, netbsd-7-0-2-RELEASE, netbsd-7-0-1-RELEASE, netbsd-7-0, netbsd-7, khorben-n900, agc-symver-base, agc-symver
Branch point for: tls-maxphys, nick-nhusb
Changes since 1.22: +12 -9 lines
Diff to previous 1.22 (colored) to selected 1.1.2.1 (colored)

when calculating per-IPL virq masks, take into account that shared IRQs may
request different IPLs
fixes vr(4)-related problems seen on ofppc

Revision 1.20.2.1 / (download) - annotate - [select for diffs], Tue Jun 12 19:35:46 2012 UTC (11 years, 9 months ago) by riz
Branch: netbsd-6
CVS Tags: netbsd-6-0-RC1
Branch point for: matt-nb6-plus
Changes since 1.20: +8 -4 lines
Diff to previous 1.20 (colored) to selected 1.1.2.1 (colored)

Pull up following revision(s) (requested by macallan in ticket #320):
	sys/arch/powerpc/pic/intr.c: revision 1.21
	sys/arch/powerpc/pic/intr.c: revision 1.22
look at the right cpu_softints bits in pic_do_pending_int()
so we call the right softint handlers
fix same thinko as in previous commit, in have_pending_intr_p()

Revision 1.22 / (download) - annotate - [select for diffs], Thu Jun 7 04:37:09 2012 UTC (11 years, 9 months ago) by macallan
Branch: MAIN
Changes since 1.21: +3 -3 lines
Diff to previous 1.21 (colored) to selected 1.1.2.1 (colored)

fix same thinko as in previous commit, in have_pending_intr_p()

Revision 1.21 / (download) - annotate - [select for diffs], Thu Jun 7 02:39:22 2012 UTC (11 years, 9 months ago) by macallan
Branch: MAIN
Changes since 1.20: +7 -3 lines
Diff to previous 1.20 (colored) to selected 1.1.2.1 (colored)

look at the right cpu_softints bits in pic_do_pending_int()
so we call the right softint handlers

Revision 1.18.2.1 / (download) - annotate - [select for diffs], Tue Apr 17 00:06:48 2012 UTC (11 years, 11 months ago) by yamt
Branch: yamt-pagecache
Changes since 1.18: +14 -10 lines
Diff to previous 1.18 (colored) to selected 1.1.2.1 (colored)

sync with head

Revision 1.18.6.1 / (download) - annotate - [select for diffs], Sat Feb 18 07:32:58 2012 UTC (12 years, 1 month ago) by mrg
Branch: jmcneill-usbmp
Changes since 1.18: +14 -10 lines
Diff to previous 1.18 (colored) next main 1.19 (colored) to selected 1.1.2.1 (colored)

merge to -current.

Revision 1.20 / (download) - annotate - [select for diffs], Wed Feb 1 09:54:03 2012 UTC (12 years, 1 month ago) by matt
Branch: MAIN
CVS Tags: yamt-pagecache-base5, yamt-pagecache-base4, netbsd-6-base, jmcneill-usbmp-base9, jmcneill-usbmp-base8, jmcneill-usbmp-base7, jmcneill-usbmp-base6, jmcneill-usbmp-base5, jmcneill-usbmp-base4, jmcneill-usbmp-base3, jmcneill-usbmp-base2, jmcneill-usbmp-base10
Branch point for: netbsd-6
Changes since 1.19: +6 -6 lines
Diff to previous 1.19 (colored) to selected 1.1.2.1 (colored)

Use kmem instead of malloc.  Remove unneeded <sys/malloc.h> includes.

Revision 1.19 / (download) - annotate - [select for diffs], Sat Jan 14 19:35:59 2012 UTC (12 years, 2 months ago) by phx
Branch: MAIN
Changes since 1.18: +10 -6 lines
Diff to previous 1.18 (colored) to selected 1.1.2.1 (colored)

Some PICs have the capability to define the interrupt's polarity (OpenPIC
for example). So the accepted interrupt types have been extended to:
- IST_EDGE_FALLING (which is the same as IST_EDGE)
- IST_EDGE_RISING (new)
- IST_LEVEL_LOW (is the same as IST_LEVEL)
- IST_LEVEL_HIGH (new)
Old code will continue to work without modification.

Revision 1.18 / (download) - annotate - [select for diffs], Tue Sep 27 01:02:36 2011 UTC (12 years, 6 months ago) by jym
Branch: MAIN
CVS Tags: yamt-pagecache-base3, yamt-pagecache-base2, yamt-pagecache-base, jmcneill-usbmp-pre-base2, jmcneill-usbmp-base, jmcneill-audiomp3-base, jmcneill-audiomp3
Branch point for: yamt-pagecache, jmcneill-usbmp
Changes since 1.17: +4 -4 lines
Diff to previous 1.17 (colored) to selected 1.1.2.1 (colored)

Modify *ASSERTMSG() so they are now used as variadic macros. The main goal
is to provide routines that do as KASSERT(9) says: append a message
to the panic format string when the assertion triggers, with optional
arguments.

Fix call sites to reflect the new definition.

Discussed on tech-kern@. See
http://mail-index.netbsd.org/tech-kern/2011/09/07/msg011427.html

Revision 1.10.6.1 / (download) - annotate - [select for diffs], Thu Jun 23 14:19:33 2011 UTC (12 years, 9 months ago) by cherry
Branch: cherry-xenmp
Changes since 1.10: +248 -324 lines
Diff to previous 1.10 (colored) next main 1.11 (colored) to selected 1.1.2.1 (colored)

Catchup with rmind-uvmplock merge.

Revision 1.17 / (download) - annotate - [select for diffs], Tue Jun 21 18:02:43 2011 UTC (12 years, 9 months ago) by rjs
Branch: MAIN
Changes since 1.16: +3 -3 lines
Diff to previous 1.16 (colored) to selected 1.1.2.1 (colored)

Make it compile when PIC_DEBUG is defined.

Revision 1.16 / (download) - annotate - [select for diffs], Mon Jun 20 06:23:52 2011 UTC (12 years, 9 months ago) by matt
Branch: MAIN
Changes since 1.15: +10 -8 lines
Diff to previous 1.15 (colored) to selected 1.1.2.1 (colored)

Cleanup includes.  Explicitly include <powerpc/psl.h>

Revision 1.15 / (download) - annotate - [select for diffs], Fri Jun 17 23:36:18 2011 UTC (12 years, 9 months ago) by matt
Branch: MAIN
Changes since 1.14: +147 -213 lines
Diff to previous 1.14 (colored) to selected 1.1.2.1 (colored)

intr.h must not include cpu due to deadly embrace with SOFTINT_COUNT.
Cleanup intr.h so MD definitions can overload common definitions.
Rototill pic/intr.c.  Virtual IRQs can now be reclaimed.  separate virq
from hwirq from picirq.  Redo intr mask calculations.
tested on pmppc and macppc (MP).

Revision 1.14 / (download) - annotate - [select for diffs], Fri Jun 17 05:15:23 2011 UTC (12 years, 9 months ago) by matt
Branch: MAIN
Changes since 1.13: +77 -98 lines
Diff to previous 1.13 (colored) to selected 1.1.2.1 (colored)

Change from level to ipl since we aren't dealing a mask anymore, just a
simple value.
Fix intr_calculatemasks to deal with ipl isn't a mask.  Let establish
and disestablish determine the highest ipl for the interrut source being
modified.  No reason to recompute that for every source when only one changes
at a time.  Only change idepth while in the loop.

Revision 1.13 / (download) - annotate - [select for diffs], Thu Jun 16 04:37:48 2011 UTC (12 years, 9 months ago) by matt
Branch: MAIN
Changes since 1.12: +17 -6 lines
Diff to previous 1.12 (colored) to selected 1.1.2.1 (colored)

Make sure OEA ports without __HAVE_FAST_SOFTINTS still compile.

Revision 1.12 / (download) - annotate - [select for diffs], Thu Jun 16 02:43:43 2011 UTC (12 years, 9 months ago) by macallan
Branch: MAIN
Changes since 1.11: +35 -37 lines
Diff to previous 1.11 (colored) to selected 1.1.2.1 (colored)

enable FAST_SOFTINTR support for all ports that use powerpc/pic/
This has been successfully tested on macppc
TODO:
- ibm4xx needs to be adapted
- SMP doesn't work yet, 2nd CPU crashes when trying to leave the idle loop

Revision 1.7.2.3 / (download) - annotate - [select for diffs], Sun Jun 12 00:24:05 2011 UTC (12 years, 9 months ago) by rmind
Branch: rmind-uvmplock
Changes since 1.7.2.2: +1 -1 lines
Diff to previous 1.7.2.2 (colored) next main 1.8 (colored) to selected 1.1.2.1 (colored)

sync with head

Revision 1.10.2.1 / (download) - annotate - [select for diffs], Mon Jun 6 09:06:30 2011 UTC (12 years, 9 months ago) by jruoho
Branch: jruoho-x86intr
Changes since 1.10: +3 -3 lines
Diff to previous 1.10 (colored) next main 1.11 (colored) to selected 1.1.2.1 (colored)

Sync with HEAD.

Revision 1.11 / (download) - annotate - [select for diffs], Sun Jun 5 16:52:26 2011 UTC (12 years, 9 months ago) by matt
Branch: MAIN
CVS Tags: rmind-uvmplock-nbase, rmind-uvmplock-base
Changes since 1.10: +3 -3 lines
Diff to previous 1.10 (colored) to selected 1.1.2.1 (colored)

Remove <machine/atomic.h>; use <sys/atomic.h> instead.
Add <powerpc/cpuset.h> (for mpc85xx pmap).
Add some initial MP code for mpc85xx
Rework ipi code to be common across all ppcs
Change PPC to keep curlwp in %r13 while in the kernel.
Move astpending from cpu_info to mdlwp
Improve cpu_need_resched to be more MP friendly.

Revision 1.7.2.2 / (download) - annotate - [select for diffs], Sat Mar 5 20:51:40 2011 UTC (13 years ago) by rmind
Branch: rmind-uvmplock
Changes since 1.7.2.1: +5 -6 lines
Diff to previous 1.7.2.1 (colored) to selected 1.1.2.1 (colored)

sync with head

Revision 1.10 / (download) - annotate - [select for diffs], Mon Dec 20 00:25:41 2010 UTC (13 years, 3 months ago) by matt
Branch: MAIN
CVS Tags: uebayasi-xip-base7, matt-mips64-premerge-20101231, jym-xensuspend-nbase, jym-xensuspend-base, jruoho-x86intr-base, cherry-xenmp-base, bouyer-quota2-nbase, bouyer-quota2-base, bouyer-quota2
Branch point for: jruoho-x86intr, cherry-xenmp
Changes since 1.9: +5 -6 lines
Diff to previous 1.9 (colored) to selected 1.1.2.1 (colored)

Move counting of faults, traps, intrs, soft[intr]s, syscalls, and nswtch
from uvmexp to per-cpu cpu_data and move them to 64bits.  Remove unneeded
includes of <uvm/uvm_extern.h> and/or <uvm/uvm.h>.

Revision 1.6.20.2 / (download) - annotate - [select for diffs], Tue Aug 17 06:45:03 2010 UTC (13 years, 7 months ago) by uebayasi
Branch: uebayasi-xip
Changes since 1.6.20.1: +1 -1 lines
Diff to previous 1.6.20.1 (colored) to branchpoint 1.6 (colored) next main 1.7 (colored) to selected 1.1.2.1 (colored)

Sync with HEAD.

Revision 1.5.4.2 / (download) - annotate - [select for diffs], Wed Aug 11 22:52:36 2010 UTC (13 years, 7 months ago) by yamt
Branch: yamt-nfs-mp
Changes since 1.5.4.1: +37 -40 lines
Diff to previous 1.5.4.1 (colored) to branchpoint 1.5 (colored) next main 1.6 (colored) to selected 1.1.2.1 (colored)

sync with head.

Revision 1.7.2.1 / (download) - annotate - [select for diffs], Sun May 30 05:17:03 2010 UTC (13 years, 10 months ago) by rmind
Branch: rmind-uvmplock
Changes since 1.7: +28 -31 lines
Diff to previous 1.7 (colored) to selected 1.1.2.1 (colored)

sync with head

Revision 1.9 / (download) - annotate - [select for diffs], Wed May 12 06:11:31 2010 UTC (13 years, 10 months ago) by macallan
Branch: MAIN
CVS Tags: yamt-nfs-mp-base11, yamt-nfs-mp-base10, uebayasi-xip-base6, uebayasi-xip-base5, uebayasi-xip-base4, uebayasi-xip-base3, uebayasi-xip-base2
Changes since 1.8: +3 -3 lines
Diff to previous 1.8 (colored) to selected 1.1.2.1 (colored)

make this work again

Revision 1.6.20.1 / (download) - annotate - [select for diffs], Fri Apr 30 14:39:44 2010 UTC (13 years, 11 months ago) by uebayasi
Branch: uebayasi-xip
Changes since 1.6: +38 -41 lines
Diff to previous 1.6 (colored) to selected 1.1.2.1 (colored)

Sync with HEAD.

Revision 1.8 / (download) - annotate - [select for diffs], Sat Apr 24 09:39:57 2010 UTC (13 years, 11 months ago) by kiyohara
Branch: MAIN
CVS Tags: uebayasi-xip-base1
Changes since 1.7: +29 -32 lines
Diff to previous 1.7 (colored) to selected 1.1.2.1 (colored)

Support 64-bit imask for powerpc/pic.

Revision 1.7 / (download) - annotate - [select for diffs], Wed Mar 10 18:28:30 2010 UTC (14 years ago) by kiyohara
Branch: MAIN
Branch point for: rmind-uvmplock
Changes since 1.6: +11 -11 lines
Diff to previous 1.6 (colored) to selected 1.1.2.1 (colored)

Remove white-spaces.

Revision 1.4.8.1 / (download) - annotate - [select for diffs], Mon Jun 2 13:22:33 2008 UTC (15 years, 9 months ago) by mjf
Branch: mjf-devfs2
Changes since 1.4: +3 -6 lines
Diff to previous 1.4 (colored) next main 1.5 (colored) to selected 1.1.2.1 (colored)

Sync with HEAD.

Revision 1.5.2.1 / (download) - annotate - [select for diffs], Sun May 18 12:32:38 2008 UTC (15 years, 10 months ago) by yamt
Branch: yamt-pf42
Changes since 1.5: +2 -5 lines
Diff to previous 1.5 (colored) next main 1.6 (colored) to selected 1.1.2.1 (colored)

sync with head.

Revision 1.5.4.1 / (download) - annotate - [select for diffs], Fri May 16 02:23:02 2008 UTC (15 years, 10 months ago) by yamt
Branch: yamt-nfs-mp
Changes since 1.5: +2 -5 lines
Diff to previous 1.5 (colored) to selected 1.1.2.1 (colored)

sync with head.

Revision 1.6 / (download) - annotate - [select for diffs], Tue Apr 29 06:53:02 2008 UTC (15 years, 11 months ago) by martin
Branch: MAIN
CVS Tags: yamt-pf42-base4, yamt-pf42-base3, yamt-pf42-base2, yamt-nfs-mp-base9, yamt-nfs-mp-base8, yamt-nfs-mp-base7, yamt-nfs-mp-base6, yamt-nfs-mp-base5, yamt-nfs-mp-base4, yamt-nfs-mp-base3, yamt-nfs-mp-base2, wrstuden-revivesa-base-4, wrstuden-revivesa-base-3, wrstuden-revivesa-base-2, wrstuden-revivesa-base-1, wrstuden-revivesa-base, wrstuden-revivesa, uebayasi-xip-base, simonb-wapbl-nbase, simonb-wapbl-base, simonb-wapbl, nick-hppapmap-base4, nick-hppapmap-base3, nick-hppapmap-base2, nick-hppapmap-base, nick-hppapmap, netbsd-5-base, netbsd-5-2-RELEASE, netbsd-5-2-RC1, netbsd-5-2-3-RELEASE, netbsd-5-2-2-RELEASE, netbsd-5-2-1-RELEASE, netbsd-5-2, netbsd-5-1-RELEASE, netbsd-5-1-RC4, netbsd-5-1-RC3, netbsd-5-1-RC2, netbsd-5-1-RC1, netbsd-5-1-5-RELEASE, netbsd-5-1-4-RELEASE, netbsd-5-1-3-RELEASE, netbsd-5-1-2-RELEASE, netbsd-5-1-1-RELEASE, netbsd-5-1, netbsd-5-0-RELEASE, netbsd-5-0-RC4, netbsd-5-0-RC3, netbsd-5-0-RC2, netbsd-5-0-RC1, netbsd-5-0-2-RELEASE, netbsd-5-0-1-RELEASE, netbsd-5-0, netbsd-5, mjf-devfs2-base, matt-premerge-20091211, matt-nb5-pq3-base, matt-nb5-pq3, matt-nb5-mips64-u2-k2-k4-k7-k8-k9, matt-nb5-mips64-u1-k1-k5, matt-nb5-mips64-premerge-20101231, matt-nb5-mips64-premerge-20091211, matt-nb5-mips64-k15, matt-nb5-mips64, matt-nb4-mips64-k7-u2a-k9b, matt-mips64-base2, jymxensuspend-base, jym-xensuspend, hpcarm-cleanup-nbase, haad-nbase2, haad-dm-base2, haad-dm-base1, haad-dm-base, haad-dm, ad-audiomp2-base, ad-audiomp2
Branch point for: uebayasi-xip
Changes since 1.5: +2 -5 lines
Diff to previous 1.5 (colored) to selected 1.1.2.1 (colored)

Convert to new 2 clause license

Revision 1.5 / (download) - annotate - [select for diffs], Tue Apr 8 02:33:03 2008 UTC (15 years, 11 months ago) by garbled
Branch: MAIN
CVS Tags: yamt-pf42-baseX, yamt-pf42-base, yamt-nfs-mp-base
Branch point for: yamt-pf42, yamt-nfs-mp
Changes since 1.4: +3 -3 lines
Diff to previous 1.4 (colored) to selected 1.1.2.1 (colored)

SMP support for ofppc.  (finally)  Much thanks to Matt Thomas for help in
figuring out all the crazy nuances of getting this working, and to
Michael Lorenz for testing/fixing my changes on macppc.  Tested with a
quad-proc 7044-270.
Summary of changes:

Bumped CPU_MAXNUM to 16 on ofppc.
Added md_* routines to ofppc/cpu.c, to sync the timebase, and awaken the CPUs.
Fixed a bug in the test for a 64bit bridge cpu early in locore.S
Added code to set the interrupt priority for all CPUs with an openpic.
Change rtas to probe before cpus, to allow use of the rtas freeze/thaw
timebase code routines.
Fix CPU_INFO_FOREACH macro to iterate through detected cpus, not CPU_MAXNUM.
Change most uses of ci_cpuid to ci_index, to deal with CPUs that do not allow
writing to SPR_PIR.  Don't write SPR_PIR unless the secondary cpu identifies
itself as 0.
Change the hatchstack/interrupt stack allocations to allocate a 8192byte
interrupt stack, and a 4096 byte hatch stack, align them to 16 bytes, and
allocate them no lower than 0x10000.  Allocate them separately to prevent the
hatch stack corrupting the interrupt stack later on.
If the CPU is a 64bit cpu, copy SPR_ASR in cpu_hatch()
Set the idle stack to ci->ci_data.cpu_idlelwp->l_addr->u_pcb.pcb_sp.
Add OF_start_cpu().  Add a routine to ofwoea_initppc to spin up secondary
procs early, and place them into a spinloop waiting for the hatch routines
to be ready.
Modify the ipi routines to deal with openpics that reverse byte order on read
from an ipi register. (such as on the 7044)
Change the rtas setup to allocate the rtas physical base address above
the kernel, to avoid mucking up the hatch/interrupt stacks.

Revision 1.2.4.4 / (download) - annotate - [select for diffs], Mon Jan 21 09:38:26 2008 UTC (16 years, 2 months ago) by yamt
Branch: yamt-lazymbuf
Changes since 1.2.4.3: +5 -5 lines
Diff to previous 1.2.4.3 (colored) to branchpoint 1.2 (colored) next main 1.3 (colored) to selected 1.1.2.1 (colored)

sync with head

Revision 1.2.8.3 / (download) - annotate - [select for diffs], Wed Jan 9 01:47:54 2008 UTC (16 years, 2 months ago) by matt
Branch: matt-armv6
Changes since 1.2.8.2: +26 -23 lines
Diff to previous 1.2.8.2 (colored) to branchpoint 1.2 (colored) next main 1.3 (colored) to selected 1.1.2.1 (colored)

sync with HEAD

Revision 1.2.6.2 / (download) - annotate - [select for diffs], Thu Dec 27 00:43:16 2007 UTC (16 years, 3 months ago) by mjf
Branch: mjf-devfs
Changes since 1.2.6.1: +5 -5 lines
Diff to previous 1.2.6.1 (colored) to branchpoint 1.2 (colored) next main 1.3 (colored) to selected 1.1.2.1 (colored)

Sync with HEAD.

Revision 1.3.2.1 / (download) - annotate - [select for diffs], Wed Dec 26 19:42:38 2007 UTC (16 years, 3 months ago) by ad
Branch: vmlocking2
Changes since 1.3: +5 -5 lines
Diff to previous 1.3 (colored) next main 1.4 (colored) to selected 1.1.2.1 (colored)

Sync with head.

Revision 1.3.6.1 / (download) - annotate - [select for diffs], Thu Dec 13 21:54:53 2007 UTC (16 years, 3 months ago) by bouyer
Branch: bouyer-xeni386
CVS Tags: bouyer-xeni386-merge1
Changes since 1.3: +5 -5 lines
Diff to previous 1.3 (colored) next main 1.4 (colored) to selected 1.1.2.1 (colored)

Sync with HEAD

Revision 1.3.4.1 / (download) - annotate - [select for diffs], Thu Dec 13 05:05:21 2007 UTC (16 years, 3 months ago) by yamt
Branch: yamt-kmem
Changes since 1.3: +5 -5 lines
Diff to previous 1.3 (colored) next main 1.4 (colored) to selected 1.1.2.1 (colored)

sync with head.

Revision 1.4 / (download) - annotate - [select for diffs], Tue Dec 11 18:04:19 2007 UTC (16 years, 3 months ago) by garbled
Branch: MAIN
CVS Tags: yamt-lazymbuf-base15, yamt-lazymbuf-base14, yamt-kmem-base3, vmlocking2-base3, nick-net80211-sync-base, nick-net80211-sync, mjf-devfs-base, matt-armv6-nbase, matt-armv6-base, keiichi-mipv6-nbase, keiichi-mipv6-base, keiichi-mipv6, hpcarm-cleanup-base, cube-autoconf-base, cube-autoconf, bouyer-xeni386-nbase, bouyer-xeni386-base, ad-socklock-base1
Branch point for: mjf-devfs2
Changes since 1.3: +5 -5 lines
Diff to previous 1.3 (colored) to selected 1.1.2.1 (colored)

Fix the endless stream of 7's problem on i8259-like interrupt controllers
once and for all.  The i8259 does not like to be read in a loop, when an
interrupt comes in, it will return a valid value, however, if you keep
reading it until there are no outstanding interrupts, it will return 7
(which is the lpt interrupt).  Change the pic handler to give an argument
to the get_irq functions of mode, which indicates if this is the first
time we are asking, or if we are just rechecking in a loop.  Non-i8259
handlers can safely ignore this argument.

Tested to fix the stream of 7's problem on prep and ofppc.  Got rid of
the nasty hack in ofppc with this too, and the prep machine seems to take
less interrupts now, which is a good thing.

Revision 1.1.6.2 / (download) - annotate - [select for diffs], Sun Dec 9 19:36:02 2007 UTC (16 years, 3 months ago) by jmcneill
Branch: jmcneill-pm
Changes since 1.1.6.1: +23 -20 lines
Diff to previous 1.1.6.1 (colored) to branchpoint 1.1 (colored) next main 1.2 (colored) to selected 1.1.2.1 (colored)

Sync with HEAD.

Revision 1.2.6.1 / (download) - annotate - [select for diffs], Sat Dec 8 18:17:41 2007 UTC (16 years, 3 months ago) by mjf
Branch: mjf-devfs
Changes since 1.2: +23 -20 lines
Diff to previous 1.2 (colored) to selected 1.1.2.1 (colored)

Sync with HEAD.

Revision 1.2.4.3 / (download) - annotate - [select for diffs], Fri Dec 7 17:25:58 2007 UTC (16 years, 3 months ago) by yamt
Branch: yamt-lazymbuf
Changes since 1.2.4.2: +23 -20 lines
Diff to previous 1.2.4.2 (colored) to branchpoint 1.2 (colored) to selected 1.1.2.1 (colored)

sync with head

Revision 1.2.2.3 / (download) - annotate - [select for diffs], Mon Dec 3 18:38:30 2007 UTC (16 years, 3 months ago) by ad
Branch: vmlocking
Changes since 1.2.2.2: +23 -20 lines
Diff to previous 1.2.2.2 (colored) to branchpoint 1.2 (colored) next main 1.3 (colored) to selected 1.1.2.1 (colored)

Sync with HEAD.

Revision 1.3 / (download) - annotate - [select for diffs], Mon Dec 3 15:34:14 2007 UTC (16 years, 3 months ago) by ad
Branch: MAIN
CVS Tags: yamt-kmem-base2, yamt-kmem-base, vmlocking2-base2, vmlocking2-base1, vmlocking-nbase, reinoud-bufcleanup-nbase, reinoud-bufcleanup-base, jmcneill-pm-base
Branch point for: yamt-kmem, vmlocking2, bouyer-xeni386
Changes since 1.2: +23 -20 lines
Diff to previous 1.2 (colored) to selected 1.1.2.1 (colored)

Interrupt handling changes, in discussion since February:

- Reduce available SPL levels for hardware devices to none, vm, sched, high.
- Acquire kernel_lock only for interrupts at IPL_VM.
- Implement threaded soft interrupts.

Revision 1.2.8.2 / (download) - annotate - [select for diffs], Tue Nov 6 23:20:53 2007 UTC (16 years, 4 months ago) by matt
Branch: matt-armv6
CVS Tags: matt-armv6-prevmlocking
Changes since 1.2.8.1: +799 -0 lines
Diff to previous 1.2.8.1 (colored) to branchpoint 1.2 (colored) to selected 1.1.2.1 (colored)

sync with HEAD

Revision 1.1.6.1 / (download) - annotate - [select for diffs], Fri Nov 2 13:34:45 2007 UTC (16 years, 4 months ago) by joerg
Branch: jmcneill-pm
Changes since 1.1: +799 -0 lines
Diff to previous 1.1 (colored) to selected 1.1.2.1 (colored)

More diff reduce to HEAD due to botched up merging.

Revision 1.2.4.2 / (download) - annotate - [select for diffs], Sat Oct 27 11:27:59 2007 UTC (16 years, 5 months ago) by yamt
Branch: yamt-lazymbuf
Changes since 1.2.4.1: +799 -0 lines
Diff to previous 1.2.4.1 (colored) to branchpoint 1.2 (colored) to selected 1.1.2.1 (colored)

sync with head.

Revision 1.2.2.2 / (download) - annotate - [select for diffs], Tue Oct 23 20:36:18 2007 UTC (16 years, 5 months ago) by ad
Branch: vmlocking
Changes since 1.2.2.1: +799 -0 lines
Diff to previous 1.2.2.1 (colored) to branchpoint 1.2 (colored) to selected 1.1.2.1 (colored)

Sync with head.

Revision 1.1.8.1 / (download) - annotate - [select for diffs], Thu Oct 18 08:32:45 2007 UTC (16 years, 5 months ago) by yamt
Branch: yamt-x86pmap
Changes since 1.1: +799 -0 lines
Diff to previous 1.1 (colored) next main 1.2 (colored) to selected 1.1.2.1 (colored)

sync with head.

Revision 1.2.8.1, Wed Oct 17 19:56:45 2007 UTC (16 years, 5 months ago) by matt
Branch: matt-armv6
Changes since 1.2: +0 -799 lines
FILE REMOVED

file intr.c was added on branch matt-armv6 on 2007-11-06 23:20:53 +0000

Revision 1.2.4.1, Wed Oct 17 19:56:45 2007 UTC (16 years, 5 months ago) by yamt
Branch: yamt-lazymbuf
Changes since 1.2: +0 -799 lines
FILE REMOVED

file intr.c was added on branch yamt-lazymbuf on 2007-10-27 11:27:59 +0000

Revision 1.2.2.1, Wed Oct 17 19:56:45 2007 UTC (16 years, 5 months ago) by ad
Branch: vmlocking
Changes since 1.2: +0 -799 lines
FILE REMOVED

file intr.c was added on branch vmlocking on 2007-10-23 20:36:17 +0000

Revision 1.2 / (download) - annotate - [select for diffs], Wed Oct 17 19:56:45 2007 UTC (16 years, 5 months ago) by garbled
Branch: MAIN
CVS Tags: yamt-x86pmap-base4, jmcneill-base, bouyer-xenamd64-base2, bouyer-xenamd64-base
Branch point for: yamt-lazymbuf, vmlocking, mjf-devfs, matt-armv6
Changes since 1.1: +799 -0 lines
Diff to previous 1.1 (colored) to selected 1.1.2.1 (colored)

Merge the ppcoea-renovation branch to HEAD.

This branch was a major cleanup and rototill of many of the various OEA
cpu based PPC ports that focused on sharing as much code as possible
between the various ports to eliminate near-identical copies of files in
every tree.  Additionally there is a new PIC system that unifies the
interface to interrupt code for all different OEA ppc arches.  The work
for this branch was done by a variety of people, too long to list here.

TODO:
bebox still needs work to complete the transition to -renovation.
ofppc still needs a bunch of work, which I will be looking at.
ev64260 still needs to be renovated
amigappc was not attempted.

NOTES:
pmppc was removed as an arch, and moved to a evbppc target.

Revision 1.1.2.22 / (download) - annotate - [select for diffs], Thu Oct 11 06:17:10 2007 UTC (16 years, 5 months ago) by macallan
Branch: ppcoea-renovation
Changes since 1.1.2.21: +18 -27 lines
Diff to previous 1.1.2.21 (colored) to branchpoint 1.1 (colored) next main 1.2 (colored) to selected 1.1.2.1 (colored)

remove code that would restrict IRQs and softintrs to cpu0

Revision 1.1.2.21 / (download) - annotate - [select for diffs], Thu Oct 11 00:11:31 2007 UTC (16 years, 5 months ago) by macallan
Branch: ppcoea-renovation
Changes since 1.1.2.20: +2 -3 lines
Diff to previous 1.1.2.20 (colored) to branchpoint 1.1 (colored) to selected 1.1.2.1 (colored)

don't declare ipiops again

Revision 1.1.2.20 / (download) - annotate - [select for diffs], Wed Oct 10 18:41:34 2007 UTC (16 years, 5 months ago) by garbled
Branch: ppcoea-renovation
Changes since 1.1.2.19: +13 -6 lines
Diff to previous 1.1.2.19 (colored) to branchpoint 1.1 (colored) to selected 1.1.2.1 (colored)

New ppcoea-MI IPI infrastructure.  This is similar to the PIC
infrastructure, but simplified greatly.

Also, convert macppc (the only port currently using IPI's) over to this new
infrastructure.  Still some minor work left to do here.

Revision 1.1.2.19 / (download) - annotate - [select for diffs], Thu Oct 4 18:17:08 2007 UTC (16 years, 5 months ago) by macallan
Branch: ppcoea-renovation
Changes since 1.1.2.18: +6 -9 lines
Diff to previous 1.1.2.18 (colored) to branchpoint 1.1 (colored) to selected 1.1.2.1 (colored)

fix pasto - now we actually run IPIs on cpu0 again

Revision 1.1.2.18 / (download) - annotate - [select for diffs], Fri Sep 7 04:47:11 2007 UTC (16 years, 6 months ago) by macallan
Branch: ppcoea-renovation
Changes since 1.1.2.17: +9 -4 lines
Diff to previous 1.1.2.17 (colored) to branchpoint 1.1 (colored) to selected 1.1.2.1 (colored)

calculate interrupt maks after establishing the handler - otherwise the
last established IRQ handler would never be unblocked

Revision 1.1.2.17 / (download) - annotate - [select for diffs], Thu May 10 15:43:36 2007 UTC (16 years, 10 months ago) by garbled
Branch: ppcoea-renovation
Changes since 1.1.2.16: +3 -3 lines
Diff to previous 1.1.2.16 (colored) to branchpoint 1.1 (colored) to selected 1.1.2.1 (colored)

Change the biomask printf to aprint_normal.

Revision 1.1.2.16 / (download) - annotate - [select for diffs], Thu May 10 15:25:38 2007 UTC (16 years, 10 months ago) by garbled
Branch: ppcoea-renovation
Changes since 1.1.2.15: +13 -2 lines
Diff to previous 1.1.2.15 (colored) to branchpoint 1.1 (colored) to selected 1.1.2.1 (colored)

More cleanup:
1) Remove lcsplx, strayintr, and foosoft from all the converted ports.
None of this stuff is needed anymore.
2) because lcsplx is just "return spllower", just call spllower from
locore_subr.S instead.
3) Every port (except macppc) had a pretty similar cpu_configure(), so
take the common parts out and make a genppc_cpu_configure() in an attempt
to stop using imask[] outside of intr.c

Revision 1.1.2.15 / (download) - annotate - [select for diffs], Wed May 9 21:09:58 2007 UTC (16 years, 10 months ago) by matt
Branch: ppcoea-renovation
Changes since 1.1.2.14: +12 -15 lines
Diff to previous 1.1.2.14 (colored) to branchpoint 1.1 (colored) to selected 1.1.2.1 (colored)

Simplify intr_typename

Revision 1.1.2.14 / (download) - annotate - [select for diffs], Wed May 9 04:15:58 2007 UTC (16 years, 10 months ago) by macallan
Branch: ppcoea-renovation
Changes since 1.1.2.13: +10 -21 lines
Diff to previous 1.1.2.13 (colored) to branchpoint 1.1 (colored) to selected 1.1.2.1 (colored)

nuke #if(n)def __HAVE_GENERIC_SOFT_INTERRUPTS

Revision 1.1.2.13 / (download) - annotate - [select for diffs], Mon May 7 18:11:41 2007 UTC (16 years, 10 months ago) by garbled
Branch: ppcoea-renovation
Changes since 1.1.2.12: +63 -2 lines
Diff to previous 1.1.2.12 (colored) to branchpoint 1.1 (colored) to selected 1.1.2.1 (colored)

Rewrite how shared isa is done slightly.  This will allow the individual
ports to override the shared functions if needed.  Also, implement
isa_intr_alloc, which needed to be done inside pic/intr.c because it
needs access to structs which are static to the file.

Revision 1.1.2.12 / (download) - annotate - [select for diffs], Fri May 4 10:03:28 2007 UTC (16 years, 10 months ago) by nisimura
Branch: ppcoea-renovation
Changes since 1.1.2.11: +3 -3 lines
Diff to previous 1.1.2.11 (colored) to branchpoint 1.1 (colored) to selected 1.1.2.1 (colored)

follow up to the previous change for struct pic_ops, and make
pic_i8259.c compilable.

Revision 1.1.2.11 / (download) - annotate - [select for diffs], Fri May 4 02:53:51 2007 UTC (16 years, 10 months ago) by macallan
Branch: ppcoea-renovation
Changes since 1.1.2.10: +13 -6 lines
Diff to previous 1.1.2.10 (colored) to branchpoint 1.1 (colored) to selected 1.1.2.1 (colored)

adapt to picvar changes, call pic_establish_irq() with max priority in use on
the resp. IRQ

Revision 1.1.2.10 / (download) - annotate - [select for diffs], Thu May 3 19:54:41 2007 UTC (16 years, 10 months ago) by garbled
Branch: ppcoea-renovation
Changes since 1.1.2.9: +55 -2 lines
Diff to previous 1.1.2.9 (colored) to branchpoint 1.1 (colored) to selected 1.1.2.1 (colored)

Add splraise, splx, spllower and softintr here.

Revision 1.1.2.9 / (download) - annotate - [select for diffs], Thu May 3 19:38:37 2007 UTC (16 years, 10 months ago) by garbled
Branch: ppcoea-renovation
Changes since 1.1.2.8: +5 -4 lines
Diff to previous 1.1.2.8 (colored) to branchpoint 1.1 (colored) to selected 1.1.2.1 (colored)

Move the functions down from openpic.c into pic_openpic.c, as there
really is no need to have them over there when all the interrupt routines
will be using pic_openpic.c
Change the openpic setup to set all the irqs except 0 to negative polarity.
Set the spurious vector reg to 0xff.
Emit a nice printf showing the version of the openpic, and getrid of the
maxint thing.
Add a global, primary_pic, so machines can elect any registered pic as
the primary interrupt controller.
Clean up a few nits in pic_prepivr to make it more similar to the openpic
one, add a prototype for the setup_prepivr function, etc etc.

Revision 1.1.2.8 / (download) - annotate - [select for diffs], Thu May 3 18:13:04 2007 UTC (16 years, 10 months ago) by nisimura
Branch: ppcoea-renovation
Changes since 1.1.2.7: +2 -3 lines
Diff to previous 1.1.2.7 (colored) to branchpoint 1.1 (colored) to selected 1.1.2.1 (colored)

These two have no <machine/autoconf.h> dependency.

Revision 1.1.2.7 / (download) - annotate - [select for diffs], Thu May 3 03:28:28 2007 UTC (16 years, 11 months ago) by macallan
Branch: ppcoea-renovation
Changes since 1.1.2.6: +7 -3 lines
Diff to previous 1.1.2.6 (colored) to branchpoint 1.1 (colored) to selected 1.1.2.1 (colored)

add dummy establish_intr method

Revision 1.1.2.6 / (download) - annotate - [select for diffs], Thu May 3 00:42:03 2007 UTC (16 years, 11 months ago) by garbled
Branch: ppcoea-renovation
Changes since 1.1.2.5: +3 -3 lines
Diff to previous 1.1.2.5 (colored) to branchpoint 1.1 (colored) to selected 1.1.2.1 (colored)

Fix typo in pic_ack_irq

Revision 1.1.2.5 / (download) - annotate - [select for diffs], Thu May 3 00:13:11 2007 UTC (16 years, 11 months ago) by garbled
Branch: ppcoea-renovation
Changes since 1.1.2.4: +2 -0 lines
Diff to previous 1.1.2.4 (colored) to branchpoint 1.1 (colored) to selected 1.1.2.1 (colored)

Add some additional functions (pic_establish_irq) to enable use with an 8259

Revision 1.1.2.4 / (download) - annotate - [select for diffs], Thu May 3 00:02:21 2007 UTC (16 years, 11 months ago) by macallan
Branch: ppcoea-renovation
Changes since 1.1.2.3: +2 -4 lines
Diff to previous 1.1.2.3 (colored) to branchpoint 1.1 (colored) to selected 1.1.2.1 (colored)

remove pic_reenable_irq() from pic_handle_intr()

Revision 1.1.2.3 / (download) - annotate - [select for diffs], Thu May 3 00:00:33 2007 UTC (16 years, 11 months ago) by macallan
Branch: ppcoea-renovation
Changes since 1.1.2.2: +5 -4 lines
Diff to previous 1.1.2.2 (colored) to branchpoint 1.1 (colored) to selected 1.1.2.1 (colored)

fix some compiler warnings

Revision 1.1.2.2 / (download) - annotate - [select for diffs], Wed May 2 19:28:01 2007 UTC (16 years, 11 months ago) by macallan
Branch: ppcoea-renovation
Changes since 1.1.2.1: +15 -12 lines
Diff to previous 1.1.2.1 (colored) to branchpoint 1.1 (colored)

cosmetics:
- remove CPU number from pic_get_irq()
- add type parameter to enable/reenable
- add IRQ parameter to pic_ack_irq()
... and make intr.c compile again

Revision 1.1.2.1 / (download) - annotate - [selected], Wed May 2 02:59:01 2007 UTC (16 years, 11 months ago) by macallan
Branch: ppcoea-renovation
Changes since 1.1: +674 -0 lines
Diff to previous 1.1 (colored)

first try on a generic interrupt handler.
Features:
- PIC details are hidden by struct pic_ops
- PICs can easily be cascaded
- support for soft interrupts
tested so far only on macppc with a PowerBook 3400c

Revision 1.1, Wed May 2 02:59:01 2007 UTC (16 years, 11 months ago) by macallan
Branch: MAIN
CVS Tags: yamt-x86pmap-base3, yamt-x86pmap-base2, yamt-x86pmap-base, yamt-idlelwp-base8, vmlocking-base, ppcoea-renovation-base, mjf-ufs-trans-base, hpcarm-cleanup, bouyer-xenamd64
Branch point for: yamt-x86pmap, ppcoea-renovation, jmcneill-pm
FILE REMOVED

file intr.c was initially added on branch ppcoea-renovation.

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>