From a98ca9da1bd21dd8b5b0161eb59d550bf26e70e2 Mon Sep 17 00:00:00 2001 From: Tom Pothier Date: Thu, 5 Aug 2010 08:19:42 -0400 Subject: 6972333 fans and psu are not part of the chassis topology --- usr/src/lib/fm/topo/modules/i86pc/x86pi/x86pi.c | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) (limited to 'usr/src/lib/fm') diff --git a/usr/src/lib/fm/topo/modules/i86pc/x86pi/x86pi.c b/usr/src/lib/fm/topo/modules/i86pc/x86pi/x86pi.c index a3b537587d..2e78a755fe 100644 --- a/usr/src/lib/fm/topo/modules/i86pc/x86pi/x86pi.c +++ b/usr/src/lib/fm/topo/modules/i86pc/x86pi/x86pi.c @@ -50,6 +50,13 @@ static int x86pi_enum_gentopo(topo_mod_t *, tnode_t *); */ static topo_enum_f x86pi_enum; /* libtopo enumeration entry point */ +/* + * Top level chassis node in a multiple chassis system; or the chassis + * node in a single chassis system. + */ +static tnode_t *motherchassis_node = NULL; + + /* * Declare the operations vector and information structure used during * module registration @@ -208,11 +215,11 @@ x86pi_enum_start(topo_mod_t *mod, x86pi_enum_t *x86pi) x86pi->mod = mod; if (fac_done == 0) { - (void) topo_mod_enummap(mod, x86pi->t_parent, "chassis", + (void) topo_mod_enummap(mod, motherchassis_node, "chassis", FM_FMRI_SCHEME_HC); - (void) topo_mod_enummap(mod, x86pi->t_parent, "fan", + (void) topo_mod_enummap(mod, motherchassis_node, "fan", FM_FMRI_SCHEME_HC); - (void) topo_mod_enummap(mod, x86pi->t_parent, "psu", + (void) topo_mod_enummap(mod, motherchassis_node, "psu", FM_FMRI_SCHEME_HC); } @@ -246,7 +253,6 @@ x86pi_enum_gentopo(topo_mod_t *mod, tnode_t *t_parent) tnode_t *chassis_node = NULL; tnode_t *basebd_node = NULL; smbs_cnt_t *smbc; - tnode_t *motherchassis_node = NULL; tnode_t *pnode = NULL; id_t psmbid; int notvisited; -- cgit v1.2.3