Broadcom 440x on FreeBSD 6.0/6.1

Pyun YongHyeon pyunyh at gmail.com
Thu Apr 20 01:20:31 UTC 2006


On Wed, Apr 19, 2006 at 08:55:04PM +0200, Andreas Bachmann wrote:
 > > It seems that BCM440x has DMA address limit at 1GB.
 > > How about this?
 > > 
 > > Index: if_bfe.c
 > > ===================================================================
 > > RCS file: /pool/ncvs/src/sys/dev/bfe/if_bfe.c,v
 > > retrieving revision 1.32
 > > diff -u -r1.32 if_bfe.c
 > > --- if_bfe.c	4 Apr 2006 22:30:12 -0000	1.32
 > > +++ if_bfe.c	19 Apr 2006 04:01:47 -0000
 > > @@ -200,7 +200,7 @@
 > >  	/* parent tag */
 > >  	error = bus_dma_tag_create(NULL,  /* parent */
 > >  			PAGE_SIZE, 0,             /* alignment, boundary */
 > > -			BUS_SPACE_MAXADDR,        /* lowaddr */
 > > +			0x3fffffff,               /* lowaddr */
 > >  			BUS_SPACE_MAXADDR_32BIT,  /* highaddr */
 > >  			NULL, NULL,               /* filter, filterarg */
 > >  			MAXBSIZE,                 /* maxsize */
 > Don't work with my Dell Inspiron 9400 notebook.
 > Have replaced the following and have no change found.
 > When I set an IP address for my bfe (Broadcom 440x),
 > the system hangs...
 > 

Quick reading the source shows very strange/incorrect arguments
in DMA tag creations and manipulations. It seems that busdma(9)
portion of bfe(4) should be rewritten. Unfortunately I don't have
the hardware and confirming to busdma(9) needs a working hardware.
Sorry. You may contact the author of the driver or ship the
hardware to me.

-- 
Regards,
Pyun YongHyeon


More information about the freebsd-hardware mailing list