[Skiboot] [PATCH v2] xive: Disable block tracker

Cédric Le Goater clg at kaod.org
Thu Aug 2 00:36:11 AEST 2018


On 08/01/2018 04:02 PM, Benjamin Herrenschmidt wrote:
> Due to some HW errata, the block tracking facility (performance optimisation
> for large systems) should be disabled on Nimbus chips. Disable it unconditionally
> for now.
> 
> Signed-off-by: Benjamin Herrenschmidt <benh at kernel.crashing.org>

As I understand it, this feature is tightly coupled with the update
of the block scope tables which track which XIVE blocks are active 
in which chips. 

The current XIVE configuration is set to "one block per chip" and 
the chip id is used as a block identifier. The block scope table 
are not used and not even initialized by skiboot.


Reviewed-by: Cédric Le Goater <clg at kaod.org>


C.

> ---
> v2. Fix typo in comment
> 
> --- a/hw/xive.c
> +++ b/hw/xive.c
> @@ -1762,9 +1762,11 @@ static bool xive_config_init(struct xive *x)
>  	val |= VC_SBC_CONF_NO_UPD_PRF;
>  	xive_regw(x, VC_SBC_CONFIG, val);
>  
> -	/* Enable block tracking */
> +	/* Disable block tracking on Nimbus (we may want to enable
> +	 * it on Cumulus later). HW Erratas.
> +	 */
>  	val = xive_regr(x, PC_TCTXT_TRACK);
> -	val |= PC_TCTXT_TRACK_EN;
> +	val &= ~PC_TCTXT_TRACK_EN;
>  	xive_regw(x, PC_TCTXT_TRACK, val);
>  
>  	/* Enable relaxed ordering of trigger forwarding */
> 
> _______________________________________________
> Skiboot mailing list
> Skiboot at lists.ozlabs.org
> https://lists.ozlabs.org/listinfo/skiboot
> 



More information about the Skiboot mailing list