Subject: Re: acorn32 cross
To: None <>
From: Havard Eidnes <>
List: port-arm
Date: 09/06/2004 13:50:42
> > ./ -m acorn32 kernel=3DGENERIC
> Thanks - that's it! =

> (but there seems to be a problem in the ncr5380sbc.c - see below)
> when I leave out the SCSI support, I could compile the kernel complet=

Yep, someone made a change which makes it now mandatory for ports
using this driver to have a bus_space implementation.  It appears that
the acorn32 port is using a front-end for this chip (csa) which is not
bus_space'ified.  In sys/dev/ic/ncr5380var.h it says:

 * Currently acorn26, amd64, alpha, i386, mips, news68k, sparc, sun2, a=
nd vax
 * use real bus space:
 *      acorn32: csa driver; easy to convert
 *      mac68k: sbc driver; easy to convert
 *      pc532: ncr driver; need bus.h first
 *      sun3: si driver; need bus.h first

So, apparently this "easy to convert" has not been picked up by anyone
yet.  For the time being, you can put a slightly ugly band-aid on this
problem by applying this patch:

Index: ncr5380sbc.c
RCS file: /usr/users/he/nbcvs/netbsd/src/sys/dev/ic/ncr5380sbc.c,v
retrieving revision 1.52
diff -u -r1.52 ncr5380sbc.c
--- ncr5380sbc.c        10 Aug 2004 07:00:30 -0000      1.52
+++ ncr5380sbc.c        20 Aug 2004 12:41:29 -0000
@@ -374,9 +374,11 @@
        sc->sc_prevphase =3D PHASE_INVALID;
        sc->sc_state =3D NCR_IDLE;

+#ifdef NCR5380_USE_BUS_SPACE
        if (sc->sc_rev =3D=3D NCR_VARIANT_NCR53C400)
                bus_space_write_1(sc->sc_regt, sc->sc_regh, C400_CSR,

        NCR5380_WRITE(sc, sci_tcmd, PHASE_INVALID);
        NCR5380_WRITE(sc, sci_icmd, 0);

...which means that the non-bus-space'd ports cannot use that variant
of the chip, which they probably don't anyway.


- H=E5vard