ARM9E missing l2cache_* entries

M. Warner Losh imp at bsdimp.com
Thu Nov 8 09:18:44 PST 2007


In message: <20071108141341.GA35343 at ci0.org>
            Olivier Houchard <mlfbsd at ci0.org> writes:
: On Thu, Nov 08, 2007 at 02:14:43PM +0100, Rafal Jaworowski wrote:
: > Hi,
: > 
: > It seems there are missing entries for the l2cache_* calls in current
: > armv5_ec_cpufuncs initialization:
: > 
: > --- a/src/sys/arm/arm/cpufunc.c
: > +++ b/src/sys/arm/arm/cpufunc.c
: > @@ -332,6 +332,10 @@ struct cpu_functions armv5_ec_cpufuncs =
: > 
: >         armv5_ec_idcache_wbinv_all,     /* idcache_wbinv_all    */
: >         armv5_ec_idcache_wbinv_range,   /* idcache_wbinv_range  */
: > +       cpufunc_nullop,                 /* l2cache_wbinv_all    */
: > +       (void *)cpufunc_nullop,         /* l2cache_wbinv_range  */
: > +       (void *)cpufunc_nullop,         /* l2cache_inv_range    */
: > +       (void *)cpufunc_nullop,         /* l2cache_wb_range     */
: > 
: >         /* Other functions */
: > 
: > 
: 
: I committed it. Thanks !

Looks like I oopsed this.

: > BTW: is really both CPU_ARM9 and CPU_ARM9E needed like we have in the
: > sys/arm/at91/std.at91? I'm a bit confused when looking at the cpufunc.c if
: > they are meant mutually exclusive or not?
: > 
: > Rafal
: 
: I'd guess yes. CPU_ARM9 is armv4, CPU_ARM9E is armv5.

They are supposed to be.  I've never tried.  The reason they are both
in std.at91 is because tha AT91RM9200 is ARM9 and the AT91SAM962x
devices are ARM9E and some of the work I've done to implement it has
leaked into CVS already.  The rest of the system support isn't done
yet.

Warner


More information about the freebsd-arm mailing list