On Fri, Apr 16, 2021 at 06:02:15PM -0300, Daniel Henrique Barboza wrote: > Next patch will execute a set-indicator call in hotplug-cpu.c. > > Create a dlpar_unisolate_drc() helper to avoid spreading more > rtas_set_indicator() calls outside of dlpar.c. > > Signed-off-by: Daniel Henrique Barboza Reviewed-by: David Gibson > --- > arch/powerpc/platforms/pseries/dlpar.c | 14 ++++++++++++++ > arch/powerpc/platforms/pseries/pseries.h | 1 + > 2 files changed, 15 insertions(+) > > diff --git a/arch/powerpc/platforms/pseries/dlpar.c b/arch/powerpc/platforms/pseries/dlpar.c > index 233503fcf8f0..3ac70790ec7a 100644 > --- a/arch/powerpc/platforms/pseries/dlpar.c > +++ b/arch/powerpc/platforms/pseries/dlpar.c > @@ -329,6 +329,20 @@ int dlpar_release_drc(u32 drc_index) > return 0; > } > > +int dlpar_unisolate_drc(u32 drc_index) > +{ > + int dr_status, rc; > + > + rc = rtas_call(rtas_token("get-sensor-state"), 2, 2, &dr_status, > + DR_ENTITY_SENSE, drc_index); > + if (rc || dr_status != DR_ENTITY_PRESENT) > + return -1; > + > + rtas_set_indicator(ISOLATION_STATE, drc_index, UNISOLATE); > + > + return 0; > +} > + > int handle_dlpar_errorlog(struct pseries_hp_errorlog *hp_elog) > { > int rc; > diff --git a/arch/powerpc/platforms/pseries/pseries.h b/arch/powerpc/platforms/pseries/pseries.h > index 4fe48c04c6c2..4ea12037c920 100644 > --- a/arch/powerpc/platforms/pseries/pseries.h > +++ b/arch/powerpc/platforms/pseries/pseries.h > @@ -55,6 +55,7 @@ extern int dlpar_attach_node(struct device_node *, struct device_node *); > extern int dlpar_detach_node(struct device_node *); > extern int dlpar_acquire_drc(u32 drc_index); > extern int dlpar_release_drc(u32 drc_index); > +extern int dlpar_unisolate_drc(u32 drc_index); > > void queue_hotplug_event(struct pseries_hp_errorlog *hp_errlog); > int handle_dlpar_errorlog(struct pseries_hp_errorlog *hp_errlog); -- David Gibson | I'll have my music baroque, and my code david AT gibson.dropbear.id.au | minimalist, thank you. NOT _the_ _other_ | _way_ _around_! http://www.ozlabs.org/~dgibson