svn commit: r204389 - in user/jmallett/octeon/sys/mips: include mips

M. Warner Losh imp at bsdimp.com
Sat Feb 27 21:03:28 UTC 2010


In message: <201002270333.o1R3XVJb039720 at svn.freebsd.org>
            Juli Mallett <jmallett at freebsd.org> writes:
: Author: jmallett
: Date: Sat Feb 27 03:33:31 2010
: New Revision: 204389
: URL: http://svn.freebsd.org/changeset/base/204389
: 
: Log:
:   Check for __mips_n32, not ISA_MIPS32, on Octeon to tell whether we have
:   longer-than-pointer bus addresses.  It's the ABI that matters (or at least
:   it's more like the ABI than the ISA that matters.)
: 
: Modified:
:   user/jmallett/octeon/sys/mips/include/_bus.h
:   user/jmallett/octeon/sys/mips/mips/bus_space_generic.c
: 
: Modified: user/jmallett/octeon/sys/mips/include/_bus.h
: ==============================================================================
: --- user/jmallett/octeon/sys/mips/include/_bus.h	Sat Feb 27 03:30:48 2010	(r204388)
: +++ user/jmallett/octeon/sys/mips/include/_bus.h	Sat Feb 27 03:33:31 2010	(r204389)
: @@ -35,10 +35,10 @@
:   * Bus address and size types
:   */
:  #include "opt_cputype.h" 
: -#if !(defined(TARGET_OCTEON) && defined(ISA_MIPS32))
: -typedef uintptr_t bus_addr_t;
: -#else
: +#if defined(TARGET_OCTEON) && defined(__mips_n32)
:  typedef uint64_t bus_addr_t;
: +#else
: +typedef uintptr_t bus_addr_t;
:  #endif
:  typedef uintptr_t bus_size_t;

I'm starting to think that we need this to be subport specific...


: Modified: user/jmallett/octeon/sys/mips/mips/bus_space_generic.c
: ==============================================================================
: --- user/jmallett/octeon/sys/mips/mips/bus_space_generic.c	Sat Feb 27 03:30:48 2010	(r204388)
: +++ user/jmallett/octeon/sys/mips/mips/bus_space_generic.c	Sat Feb 27 03:33:31 2010	(r204389)
: @@ -198,7 +198,7 @@ static struct bus_space generic_space = 
:  
:  /* Ultra-gross kludge */
:  #include "opt_cputype.h"
: -#if defined(TARGET_OCTEON) && defined(ISA_MIPS32)
: +#if defined(TARGET_OCTEON) && defined(__mips_n32)
:  #include <mips/cavium/octeon_pcmap_regs.h>
:  #define rd8(a) oct_read8(a)
:  #define rd16(a) oct_read16(a)

this doesn't seem quite right...  This kludge is also likely to go
away in the future...

Warner


More information about the svn-src-user mailing list