Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 22 Nov 2005 15:39:09 -0700
From:      Scott Long <scottl@samsco.org>
To:        Marius Strobl <marius@FreeBSD.org>
Cc:        cvs-src@FreeBSD.org, src-committers@FreeBSD.org, cvs-all@FreeBSD.org
Subject:   Re: cvs commit: src/sys/sparc64/pci psycho.c psychovar.h
Message-ID:  <43839E0D.2080108@samsco.org>
In-Reply-To: <200511222232.jAMMWo6u088484@repoman.freebsd.org>
References:  <200511222232.jAMMWo6u088484@repoman.freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help
Marius Strobl wrote:

> marius      2005-11-22 22:32:50 UTC
> 
>   FreeBSD src repository
> 
>   Modified files:
>     sys/sparc64/pci      psycho.c psychovar.h 
>   Log:
>   - Add a workaround (change the interrupt map mask to compare the full
>     INO) for incorrect interrupt map entries on E250 machines. These
>     incorrect entries caused the INO of the on-board HME to be also
>     assigned to the second on-board NS16550 and to the on-board printer
>     port controller. Further down the road caused hme(4) to fail to attach
>     to the on-board HME in FreeBSD 5 and 6 as INTR_FAST and non-INTR_FAST
>     handlers can't share the same IRQ there (it's unknown what whould
>     happen in -CURRENT now that INTR_FAST and non-INTR_FAST handlers can
>     share an IRQ but I'd expect funny problems with uart(4)).
>   - Make sure there are exactly 4 PCI ranges instead of just checking
>     that the bridge has a 'ranges' property in the OFW device tree at all.
>     Besides the fact that currently the 64bit memory range isn't used by
>     this driver it we can't really work with less than 4 ranges and don't
>     have memory for more than 4 bus handles for the ranges in the softc.
>   - Remove sc_range and sc_nrange from softc; for the bridges supported
>     by this driver we no longer need to know the ranges besides the bus
>     handles obtained from them once this driver is attached. That way we
>     also can free the memory allocated for sc_range during attach again.
>   - Remove sc_dvmabase from the softc and pass it to psycho_iommu_init()
>     via an additional argument as we no longer need to know the DVMA base
>     in this driver once the IOMMU is initialized.
>   - Remove sc_dmatag from the softc, there isn't much sense in keeping
>     the nexus dma tag around locally.
> 

It's been a TODO item forever to merge busdma tag management with
newbus, so that a driver can request the tag of its newbus's parent
instead of just guessing what constraints the parent allows.

Scott



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