Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 15 Jan 2003 20:20:33 +0000
From:      Josef Karthauser <joe@FreeBSD.org>
To:        Maxime Henrion <mux@freebsd.org>
Cc:        current@freebsd.org
Subject:   Re: Bus DMA for USB - compilation problems.
Message-ID:  <20030115202033.GA13368@genius.tao.org.uk>
In-Reply-To: <20030115200519.GH16775@elvis.mu.org>
References:  <20030115195607.GA13076@genius.tao.org.uk> <20030115200519.GH16775@elvis.mu.org>

next in thread | previous in thread | raw e-mail | index | archive | help

--gKMricLos+KVdGMg
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

On Wed, Jan 15, 2003 at 12:05:20PM -0800, Maxime Henrion wrote:
> Josef Karthauser wrote:
> > I've partially ported the NetBSD busdma code for USB to FreeBSD, but
> > it doesn't compile, probably for a trivial reason.
> >=20
> > Anyone fancy helping me out?
>=20
> I didn't look at the patches yet, but could you give me the compilation
> error you are getting ?
>=20

cc -c -O -pipe -march=3Dpentium3 -Wall -Wredundant-decls -Wnested-externs
-Wstrict-prototypes  -Wmissing-prototypes -Wpointer-arith -Winline
-Wcast-qual  -fformat-extensions -ansi -g -nostdinc -I-  -I.
-I/usr/src/sys -I/usr/src/sys/dev -I/usr/src/sys/contrib/dev/acpica
-I/usr/src/sys/contrib/ipfilter -D_KERNEL -include opt_global.h
-fno-common  -mno-align-long-strings -mpreferred-stack-boundary=3D2
-ffreestanding -Werror  /usr/src/sys/dev/usb/uhci.c
/usr/src/sys/dev/usb/uhci.c: In function `uhci_init':
/usr/src/sys/dev/usb/uhci.c:425: dereferencing pointer to incomplete type
/usr/src/sys/dev/usb/uhci.c: In function `uhci_power':
/usr/src/sys/dev/usb/uhci.c:714: dereferencing pointer to incomplete type
/usr/src/sys/dev/usb/uhci.c: In function `uhci_alloc_std':

It's failing at lines like:

        UWRITE4(sc, UHCI_FLBASEADDR, DMAADDR(&sc->sc_dma, 0)); /* set frame=
 list */

The problematic is DMAADDR, and it's because the sc->sc_dma, which is
defined as usb_dma_t.  This is defined in usb_port.h, and it uses
usb_dma_block which is defined in usb_mem.h.  I think that it's the
usb_dma_block that is coming up as incomplete, but I'm not sure.

Joe
--=20
Josef Karthauser (joe@tao.org.uk)	       http://www.josef-k.net/
FreeBSD (cvs meister, admin and hacker)     http://www.uk.FreeBSD.org/
Physics Particle Theory (student)   http://www.pact.cpes.sussex.ac.uk/
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D An eclectic mix of fact an=
d theory. =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D

--gKMricLos+KVdGMg
Content-Type: application/pgp-signature
Content-Disposition: inline

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.1 (FreeBSD)

iEYEARECAAYFAj4lwpEACgkQXVIcjOaxUBZsTQCgkk7XDrb9gjqfYAUB0OBdbs3O
grkAn1U5EcpfJikS7E9sFMTognmuWb0j
=RGQ0
-----END PGP SIGNATURE-----

--gKMricLos+KVdGMg--

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-current" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20030115202033.GA13368>