NetBSD/sys/arch
bouyer 8282898f08 The loongon2f+cs5526+jmicron PATA->SATA bridge cause an interresting issue:
1) because the CS5536 is not associated with a x86 CPU, interrupts are not
  ack'ed as it expects so interrupts cannot configured as edge-triggered
  (as is expected for a PCIIDE in compat mode)
2) the PATA->SATA bridge ignores the WDC_IDS (interrupt disable bit) so
  the PATA IRQ line gets asserted when resetting or running some polled
  commands. It also wrongly asserts IRQ when the (nonexistent) slave
  device is selected
2) wouldn't be an issue with edge-triggered interrupt because we would
   get a spurious interrupt and continue operation, a new interrupt only shows
   up when the PATA IRQ line goes low and high again. But because of 1),
   we get an unclearable interrupt instead, and the system loops on the
   interrupt handler.

To workaround this, introduce a WDC_NO_IDS compile option which runs
all polled commands (including reset) at splbio() and without sleeps,
so that the controller's interrupt is effectively disabled and
won't be reenabled before the interrupt can be cleared.

The conditions triggering this problem are speficic enough to handle
this via a compile-time option; no need for a run-time (e.g. a
config(9), device property or callback to disable interrupts) solution.
2011-08-27 17:05:57 +00:00
..
acorn26 Revert. 2011-08-26 09:26:14 +00:00
acorn32 Change <machine/bus.h> to <sys/bus.h> throughout. 2011-07-19 15:59:51 +00:00
algor Increase SYMTAB_SPACE. How do we automate this? 2011-07-17 23:39:46 +00:00
alpha Straggler from last: add bus_user.h to the repository. 2011-08-12 22:23:12 +00:00
amd64 Implement sparse dumps for amd64 (copied from i386). Disabled for now via 2011-08-27 16:23:44 +00:00
amiga Add basic PCI support for amiga port. 2011-08-04 17:48:50 +00:00
amigappc Delete an unnecessary #include and an unnecessary comment. 2011-08-25 02:05:27 +00:00
arc Change bcond/BCOND to regimm/REGIMM to better match the MIPS nomenclature. 2011-08-18 21:04:23 +00:00
arm In *find_pending_irqs() return the value of pic_mark_pending_sources() instead 2011-08-13 15:38:47 +00:00
atari Switch to new-style <sys/bus.h>. 2011-07-17 23:40:16 +00:00
bebox Fix build failed. mouse.h and pccons.h already removed. 2011-08-09 00:39:35 +00:00
cats On ARM-ish ports having PCI support, use new-style <sys/bus.h>. Do not 2011-07-17 23:46:49 +00:00
cesfic Retire varargs.h support. Move machine/stdarg.h logic into MI 2011-07-17 20:54:30 +00:00
cobalt Retire varargs.h support. Move machine/stdarg.h logic into MI 2011-07-17 20:54:30 +00:00
dreamcast Change <machine/bus.h> to <sys/bus.h> throughout. 2011-07-19 15:52:29 +00:00
emips Try fixing stand.h include. Add RCS ID. 2011-07-21 11:04:24 +00:00
evbarm INSTALL kernel for SheevaPlug 2011-07-28 15:50:46 +00:00
evbmips The loongon2f+cs5526+jmicron PATA->SATA bridge cause an interresting issue: 2011-08-27 17:05:57 +00:00
evbppc Need pci_machdep_common.c now 2011-08-19 02:18:26 +00:00
evbsh3 Don't set the iobase and iosize members of pcmciabus_attach_args because 2011-07-26 22:52:47 +00:00
evbsh5
ews4800mips Retire varargs.h support. Move machine/stdarg.h logic into MI 2011-07-17 20:54:30 +00:00
hp300 dev_t is uint64_t; use PRIx64 to print it. Fix DEBUG build. 2011-07-28 03:42:20 +00:00
hp700 Switch to new-style <sys/bus.h>. hp700 releases are unbuildable for 2011-07-17 23:32:21 +00:00
hpc Retire varargs.h support. Move machine/stdarg.h logic into MI 2011-07-17 20:54:30 +00:00
hpcarm Add support for PSIONTEKLOGIX NETBOOK PRO. 2011-08-06 03:53:40 +00:00
hpcmips Add to pci_bus_devorder() an argument that tells the number of slots 2011-08-24 20:27:35 +00:00
hpcsh Don't set the iobase and iosize members of pcmciabus_attach_args because 2011-07-26 22:52:47 +00:00
hppa Retire varargs.h support. Move machine/stdarg.h logic into MI 2011-07-17 20:54:30 +00:00
i386 Split gcscpcib into MI part, and MD pci attachement which is also in 2011-08-27 12:47:49 +00:00
ia64 Retire varargs.h support. Move machine/stdarg.h logic into MI 2011-07-17 20:54:30 +00:00
ibmnws Switch more PowerPC ports having PCI support to new-style <sys/bus.h>. 2011-07-17 23:27:02 +00:00
iyonix Enable or note aubtfwl(4) wherever ubt(4) is enabled or noted. 2011-07-23 21:12:57 +00:00
landisk Build sh3/sh3/sh3_bus_space.c only for mmeye. 2011-07-26 16:24:43 +00:00
luna68k Explicitly print uPD7201A name, which is a Z80 SIO like serial chip 2011-07-28 10:01:44 +00:00
m68k fix indent again. 2011-07-18 14:11:27 +00:00
mac68k ncr53c9x was converted to use mutex(9), follow that. Fix DEBUG build too. 2011-08-02 05:17:18 +00:00
macppc sanitize sysctl interface in order to appease gcc 4.5 2011-08-01 22:40:21 +00:00
mips There are non-writable bits in MIPS_COP_0_TLB_HI between ASID and VPN, so 2011-08-27 16:54:14 +00:00
mipsco Retire varargs.h support. Move machine/stdarg.h logic into MI 2011-07-17 20:54:30 +00:00
mmeye Don't set the iobase and iosize members of pcmciabus_attach_args because 2011-07-26 22:52:47 +00:00
mvme68k Retire varargs.h support. Move machine/stdarg.h logic into MI 2011-07-17 20:54:30 +00:00
mvmeppc Enable new-style <sys/bus.h> on several PowerPC ports supporting PCI 2011-07-17 23:23:53 +00:00
netwinder Bump SYMTAB_SPACE so that it fits again. 2011-08-11 08:39:35 +00:00
news68k Retire varargs.h support. Move machine/stdarg.h logic into MI 2011-07-17 20:54:30 +00:00
newsmips Retire varargs.h support. Move machine/stdarg.h logic into MI 2011-07-17 20:54:30 +00:00
next68k Retire varargs.h support. Move machine/stdarg.h logic into MI 2011-07-17 20:54:30 +00:00
ofppc Fixed booting from disks without a valid disklabel (e.g. CDROM). This 2011-08-21 13:12:48 +00:00
pmax Retire varargs.h support. Move machine/stdarg.h logic into MI 2011-07-17 20:54:30 +00:00
powerpc First pass of the new PCI MSI/MSI ABI definitions. (return EOPNOTSUPP for 2011-08-17 18:52:00 +00:00
prep more PCI_MAGIC_IO_RANGE fixes 2011-07-28 01:44:50 +00:00
rs6000 Do the bus.h -> bus_{defs,funcs}.h split and change all occurrences of 2011-07-18 17:26:55 +00:00
sandpoint Always provide a meaningful short name for the kobj in the error message, 2011-08-13 21:04:05 +00:00
sbmips Do not install bus.h. 2011-07-17 23:52:12 +00:00
sgimips device_t-ify 2011-08-18 02:56:21 +00:00
sh3 Build sh3/sh3/sh3_bus_space.c only for mmeye. 2011-07-26 16:24:43 +00:00
sh5
shark convert to device_t, cfdata_t and CFATTACH_DECL_NEW. 2011-07-26 08:56:26 +00:00
sparc normalise #if defined(MULTIPROCESSOR) usage. 2011-08-24 02:51:13 +00:00
sparc64 shut up some debug output accidentially left in 2011-08-18 12:53:25 +00:00
sun2 Retire varargs.h support. Move machine/stdarg.h logic into MI 2011-07-17 20:54:30 +00:00
sun3 Retire varargs.h support. Move machine/stdarg.h logic into MI 2011-07-17 20:54:30 +00:00
sun68k Retire varargs.h support. Move machine/stdarg.h logic into MI 2011-07-17 20:54:30 +00:00
usermode pmap_remove_all: change panic to warning 2011-08-26 11:16:50 +00:00
vax Add macros for polyd and polyf 2011-07-28 22:54:02 +00:00
x68k fix non-literal format strings 2011-08-25 17:00:55 +00:00
x86 use c99 struct initializers 2011-08-27 09:32:11 +00:00
xen use c99 struct initializers 2011-08-27 09:32:11 +00:00
zaurus Change <machine/bus.h> to <sys/bus.h> throughout. 2011-07-19 15:11:49 +00:00
Makefile Retire varargs.h support. Move machine/stdarg.h logic into MI 2011-07-17 20:54:30 +00:00
README plop new emips port into various places it should be plopped in to 2011-01-27 19:09:06 +00:00

$NetBSD: README,v 1.54 2011/01/27 19:09:06 pooka Exp $

acorn26:	Acorn ARM2- and ARM3-based machines (arm, 20000509)
acorn32:	Acorn computers Ltd. ARM 6/7/SA based machines (arm, 20011118)
algor:		Algorithmics, Ltd. MIPS evaluation boards (mips, 20010528)
alpha:		Compaq (formerly Digital Equipment Corp.) Alpha (alpha, 19950213)
amd64:		AMD's x86 64 bit architecture (x86_64, 20010619)
amiga:		Commodore et al. Amiga (m68k, 19930902)
amigappc:	Phase 5 Amiga (powerpc, 20000525)
arc:		MIPS Advanced Risc Computing spec machines (mips, 20000123)
atari:		Atari TT30, Falcon, and Hades (m68k, 19950326)
bebox:		Be Inc. BeBox (powerpc, 19971014)
cats:		Chalice Technologies, CATS motherboard (arm, 19981005)
cesfic:		FIC8234 VME processor board (m68k, 20010514)
cobalt:		Cobalt Networks Microservers (mips, 20000319)
dreamcast:	SEGA Dreamcast (sh3, 20010107)
emips:		Machines based on Extensible MIPS (mips, 20110126)
evbarm:		ARM-based eval boards (arm, 20010905)
evbmips:	MIPS-based eval boards (mips, 20020307)
evbppc:		PowerPC-based eval boards (powerpc, 20021209)
evbsh3:		Hitachi SuperH(TM) sh3 and sh4 eval boards (sh3, 20010206)
ews4800mips:	NEC's MIPS based EWS4800 workstations (ews4800mips, 20051229)
hp300:		Hewlett Packard 300- and 400-series machines (m68k, 19930512)
hp700:		Hewlett Packard 700-series machines (hppa, 20020606)
hpcarm:		ARM based handheld PCs (arm, 20010220)
hpcmips:	MIPS based handheld PCs (mips, 19990925)
hpcsh:		Hitachi SuperH(TM) based handheld PCs (sh3, 20010117)
i386:		Intel/AMD etc. x86 processor line (i386, 19930321)
ia64:		Intel Itanium/Itanium2 processor based workstations (ia64, -)
ibmnws:		IBM Network Station Thin Clients (powerpc, -)
iyonix:		Castle Technology xscale based workstations (arm, 20040713)
landisk:	SH4 processor based NAS appliances by I-O DATA (sh3, 20060901)
luna68k:	LUNA product line of OMRON Tateishi Electric (m68k, 20000105)
mac68k:		Apple Macintosh (m68k, 19930929)
macppc:		Apple Power Macintosh and clones (powerpc, 19980515)
mipsco:		MIPS Corp Magnum 3000 computers (mips, 20000812)
mmeye:		Hitachi SuperH(TM) computer controlled camera (sh3)
mvme68k:	Motorola's VMEbus 68K based single board computers (m68k, 19950725)
mvmeppc:	Motorola's PowerPC machines running older PPCBUG
		(powerpc, 20020227)
netwinder:	StrongARM based Netwinder machines (arm, 20010609)
news68k:	Sony's m68k based NET WORK STATION (m68k, 19991209)
newsmips:	Sony's MIPS based NET WORK STATION (mips, 19980218)
next68k:	NeXT Computer's cubes and slabs (m68k, 19980609)
ofppc:		Open Firmware based PowerPC machines (powerpc, 19980528)
pmax:		Digital Equipment Corp. MIPS based machines (mips, 19931012)
prep:		PowerPC Reference Platform machines (powerpc, 20000229)
sandpoint:	Motorola Sandpoint reference platform and DINK32 machines
		(powerpc, 20010211)
sbmips:		Broadcom's SiByte processor evaluation boards (mips, 20020306)
sgimips:	MIPS based Silicon Graphics machines (mips, 20000614)
shark:		Digital Network Appliance Reference Design ("Shark") (arm, 19960131)
sparc:		Sun Microsystems SPARC (sun4, sun4c, sun4m) 32 bit machines
		(sparc, 19931002)
sparc64:	Sun Microsystems UltraSPARC 64 bit machines (sparc64/sparc, 19980620)
sun2:		Sun m68010 based machines (m68k, 20010328)
sun3:		Sun m680[23]0 based machines (m68k, 19930625)
vax:		Digital Equipment Corp. VAX machines (vax, 19940802)
x68k:		Sharp X68000, X68030 (m68k, 19960505)
xen:		Xen virtual machine monitor (xen, 20040311)
zaurus:		Sharp Zaurus C3x00 PDAs (arm, 20061217)

Generic cpu features shared among multiple ports
arm:		ARM CPU based platform files
hppa:		Hewlett Packard PA-RISC CPU based platform files
m68k:		Motorola 680x0 CPU based platform files
mips:		MIPS CPU based platform files
powerpc:	PowerPC CPU based platform files
sh3:		Hitachi SuperH(TM) sh3 and sh4 CPU based platform files
sparc:		Sun Microsystems SPARC(TM) CPU based platform files
x86:		Intel x86 based platform files.

Generic architectural features shared among multiple ports
hpc:		Handheld PC reference platform files
sun68k:		Sun Microsystems Motorola 680x0 CPU based platform files

Single port cpu families
alpha:		Digital Equipment Alpha processor
ia64:		Intel Itanium/Itanium2 processor