[Skiboot] [PATCH v7 8/9] nest abus and xbus units support
Joel Stanley
joel at jms.id.au
Wed Mar 2 18:36:03 AEDT 2016
On Tue, Mar 1, 2016 at 9:10 PM, Madhavan Srinivasan
<maddy at linux.vnet.ibm.com> wrote:
> Add support for nest abus and xbus units. In general xbus connects
> the chips within the dual chip modules(dcm) and abus connects sockets.
>
> Signed-off-by: Madhavan Srinivasan <maddy at linux.vnet.ibm.com>
> ---
> hw/nest.c | 59 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
> 1 file changed, 59 insertions(+)
>
> diff --git a/hw/nest.c b/hw/nest.c
> index 18780ea7f874..fc02a11f2aa7 100644
> --- a/hw/nest.c
> +++ b/hw/nest.c
> @@ -58,6 +58,23 @@ struct catalog_grp_to_dt_node dev_grp_map[NEST_DT_DEVICE_MAX];
> */
> struct nest_catalog_page_0 *page0_desc;
>
> +static bool is_P8_proc(void)
> +{
> + struct proc_chip *chip;
> +
> + chip = get_chip(this_cpu()->chip_id);
> + switch(chip->type) {
> + case PROC_CHIP_P8_VENICE:
> + case PROC_CHIP_P8_NAPLES:
No Murano? If so, is_p8_proc is a confusing name.
If it's supposed to include all of the p8s, you could use this
function in opal_nest_counters_control() in your other patch.
> + return true;
> + default:
> + break;
> + }
> +
> + return false;
> +}
> +
> +
> static struct dt_node *
> dt_add_device_node(struct dt_node *ptr, const char *name)
> {
> @@ -192,6 +209,34 @@ static int dt_create_nest_powerbus_node(struct dt_node *type,
> return 0;
> }
>
> +static int dt_create_nest_abus_xbus_node(struct dt_node *type,
> + struct nest_catalog_group_data *gptr, char *name)
> +{
> + int idx;
> + u32 offset;
> + const char *unit = "MiB", *scale = "7.629e-6";
> +
> + for(idx = 0; idx < 3; idx++) {
Spacing.
> + offset = get_chip_event_offset(gptr->event_index[idx],
> + DOMAIN_CHIP);
More information about the Skiboot
mailing list