RE: [PATCH v2 1/1] power: reset: pwr-mlxbf: support graceful shutdown

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hello,

Kind reminder.

Thank you.
Asmaa

> -----Original Message-----
> From: Asmaa Mnebhi <asmaa@xxxxxxxxxx>
> Sent: Friday, August 9, 2024 4:21 PM
> To: sebastian.reichel@xxxxxxxxxxxxx; linux-pm@xxxxxxxxxxxxxxx; linux-
> acpi@xxxxxxxxxxxxxxx
> Cc: David Thompson <davthompson@xxxxxxxxxx>
> Subject: RE: [PATCH v2 1/1] power: reset: pwr-mlxbf: support graceful
> shutdown
> 
> Hi Sebastian,
> 
> Did you get a chance to review this second patch?
> 
> Thank you!
> Asmaa
> 
> > -----Original Message-----
> > From: Asmaa Mnebhi <asmaa@xxxxxxxxxx>
> > Sent: Tuesday, June 11, 2024 9:43 AM
> > To: sebastian.reichel@xxxxxxxxxxxxx; linux-pm@xxxxxxxxxxxxxxx; linux-
> > acpi@xxxxxxxxxxxxxxx
> > Cc: Asmaa Mnebhi <asmaa@xxxxxxxxxx>; David Thompson
> > <davthompson@xxxxxxxxxx>
> > Subject: [PATCH v2 1/1] power: reset: pwr-mlxbf: support graceful
> > shutdown
> >
> > The OCP board used a BlueField's GPIO pin for entering low power mode.
> > That board was not commercialized and has been dropped from
> production
> > so all its code is unused.
> > The new hardware requirement is to trigger a graceful shutdown when
> > that GPIO pin is toggled. So replace the unused low power mode with a
> > graceful shutdown.
> >
> > Signed-off-by: Asmaa Mnebhi <asmaa@xxxxxxxxxx>
> > Reviewed-by: David Thompson <davthompson@xxxxxxxxxx>
> > ---
> >  drivers/power/reset/pwr-mlxbf.c | 16 +++-------------
> >  1 file changed, 3 insertions(+), 13 deletions(-)
> >
> > diff --git a/drivers/power/reset/pwr-mlxbf.c
> > b/drivers/power/reset/pwr- mlxbf.c index 1775b318d0ef..4f1cd1c0018c
> > 100644
> > --- a/drivers/power/reset/pwr-mlxbf.c
> > +++ b/drivers/power/reset/pwr-mlxbf.c
> > @@ -18,7 +18,6 @@
> >
> >  struct pwr_mlxbf {
> >  	struct work_struct reboot_work;
> > -	struct work_struct shutdown_work;
> >  	const char *hid;
> >  };
> >
> > @@ -27,22 +26,17 @@ static void pwr_mlxbf_reboot_work(struct
> > work_struct *work)
> >  	acpi_bus_generate_netlink_event("button/reboot.*", "Reboot
> Button",
> > 0x80, 1);  }
> >
> > -static void pwr_mlxbf_shutdown_work(struct work_struct *work) -{
> > -	acpi_bus_generate_netlink_event("button/power.*", "Power
> > Button", 0x80, 1);
> > -}
> > -
> >  static irqreturn_t pwr_mlxbf_irq(int irq, void *ptr)  {
> >  	const char *rst_pwr_hid = "MLNXBF24";
> > -	const char *low_pwr_hid = "MLNXBF29";
> > +	const char *shutdown_hid = "MLNXBF29";
> >  	struct pwr_mlxbf *priv = ptr;
> >
> >  	if (!strncmp(priv->hid, rst_pwr_hid, 8))
> >  		schedule_work(&priv->reboot_work);
> >
> > -	if (!strncmp(priv->hid, low_pwr_hid, 8))
> > -		schedule_work(&priv->shutdown_work);
> > +	if (!strncmp(priv->hid, shutdown_hid, 8))
> > +		orderly_poweroff(true);
> >
> >  	return IRQ_HANDLED;
> >  }
> > @@ -70,10 +64,6 @@ static int pwr_mlxbf_probe(struct platform_device
> > *pdev)
> >  	if (irq < 0)
> >  		return dev_err_probe(dev, irq, "Error getting %s irq.\n", priv-
> > >hid);
> >
> > -	err = devm_work_autocancel(dev, &priv->shutdown_work,
> > pwr_mlxbf_shutdown_work);
> > -	if (err)
> > -		return err;
> > -
> >  	err = devm_work_autocancel(dev, &priv->reboot_work,
> > pwr_mlxbf_reboot_work);
> >  	if (err)
> >  		return err;
> > --
> > 2.30.1






[Index of Archives]     [Linux IBM ACPI]     [Linux Power Management]     [Linux Kernel]     [Linux Laptop]     [Kernel Newbies]     [Share Photos]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Video 4 Linux]     [Device Mapper]     [Linux Resources]
  Powered by Linux