From: Guenter Roeck <linux@roeck-us.net> To: Kuppuswamy Sathyanarayanan <sathyanarayanan.kuppuswamy@linux.intel.com>, andy@infradead.org, qipeng.zha@intel.com, dvhart@infradead.org Cc: wim@iguana.be, sathyaosid@gmail.com, david.e.box@linux.intel.com, rajneesh.bhardwaj@intel.com, platform-driver-x86@vger.kernel.org, linux-kernel@vger.kernel.org, linux-watchdog@vger.kernel.org Subject: Re: [PATCH v5 4/6] watchdog: iTCO_wdt: cleanup set/unset no_reboot calls Date: Mon, 3 Apr 2017 20:22:59 -0700 [thread overview] Message-ID: <d50aed46-40e1-cfba-e3c2-a637f38f32b6@roeck-us.net> (raw) In-Reply-To: <26b8a87af5084168576cba4feaca689a84abd867.1491264643.git.sathyanarayanan.kuppuswamy@linux.intel.com> On 04/03/2017 05:24 PM, Kuppuswamy Sathyanarayanan wrote: > Both iTCO_wdt_unset_NO_REBOOT_bit() and iTCO_wdt_unset_NO_REBOOT_bit() I think you mean s/set/unset/ once. > functions has lot of common code between them. So merging these two > functions would remove these unnecessary code duplications. This patch > fixes this issue by creating single update function to handle both > set/unset functionalities. > > Signed-off-by: Kuppuswamy Sathyanarayanan <sathyanarayanan.kuppuswamy@linux.intel.com> > --- > drivers/watchdog/iTCO_wdt.c | 53 ++++++++++++++++----------------------------- > 1 file changed, 19 insertions(+), 34 deletions(-) > > diff --git a/drivers/watchdog/iTCO_wdt.c b/drivers/watchdog/iTCO_wdt.c > index 521ae95..cddfa00 100644 > --- a/drivers/watchdog/iTCO_wdt.c > +++ b/drivers/watchdog/iTCO_wdt.c > @@ -172,50 +172,35 @@ static inline u32 no_reboot_bit(struct iTCO_wdt_private *p) > return enable_bit; > } > > -static void iTCO_wdt_set_NO_REBOOT_bit(struct iTCO_wdt_private *p) > +static int iTCO_wdt_update_no_reboot_flag(struct iTCO_wdt_private *p, Why not stick with bit ? > + bool status) I think 'set' would be better than 'status'. > { > - u32 val32; > + u32 val32 = 0, newval32 = 0; > > - /* Set the NO_REBOOT bit: this disables reboots */ > if (p->iTCO_version >= 2) { > if (p->update_noreboot_flag) > - p->update_noreboot_flag(true); > + return p->update_noreboot_flag(status); > else { > val32 = readl(p->gcs_pmc); > - val32 |= no_reboot_bit(p); > - writel(val32, p->gcs_pmc); > - } > - } else if (p->iTCO_version == 1) { > - pci_read_config_dword(p->pci_dev, 0xd4, &val32); > - val32 |= no_reboot_bit(p); > - pci_write_config_dword(p->pci_dev, 0xd4, val32); > - } > -} > - > -static int iTCO_wdt_unset_NO_REBOOT_bit(struct iTCO_wdt_private *p) > -{ > - u32 enable_bit = no_reboot_bit(p); > - u32 val32 = 0; > + if (status) > + val32 |= no_reboot_bit(p); > + else > + val32 &= ~no_reboot_bit(p); > > - /* Unset the NO_REBOOT bit: this enables reboots */ > - if (p->iTCO_version >= 2) { > - if (p->update_noreboot_flag) > - return p->update_noreboot_flag(false); > - else { > - val32 = readl(p->gcs_pmc); > - val32 &= ~enable_bit; > writel(val32, p->gcs_pmc); > - val32 = readl(p->gcs_pmc); > + newval32 = readl(p->gcs_pmc); > } > } else if (p->iTCO_version == 1) { > pci_read_config_dword(p->pci_dev, 0xd4, &val32); > - val32 &= ~enable_bit; > + if (status) > + val32 |= no_reboot_bit(p); > + else > + val32 &= ~no_reboot_bit(p); > pci_write_config_dword(p->pci_dev, 0xd4, val32); > - > - pci_read_config_dword(p->pci_dev, 0xd4, &val32); > + pci_read_config_dword(p->pci_dev, 0xd4, &newval32); > } > > - if (val32 & enable_bit) > + if (val32 != newval32) > return -EIO; > > return 0; > @@ -231,7 +216,7 @@ static int iTCO_wdt_start(struct watchdog_device *wd_dev) > iTCO_vendor_pre_start(p->smi_res, wd_dev->timeout); > > /* disable chipset's NO_REBOOT bit */ > - if (iTCO_wdt_unset_NO_REBOOT_bit(p)) { > + if (iTCO_wdt_update_no_reboot_flag(p, false)) { > spin_unlock(&p->io_lock); > pr_err("failed to reset NO_REBOOT flag, reboot disabled by hardware/BIOS\n"); > return -EIO; > @@ -272,7 +257,7 @@ static int iTCO_wdt_stop(struct watchdog_device *wd_dev) > val = inw(TCO1_CNT(p)); > > /* Set the NO_REBOOT bit to prevent later reboots, just for sure */ > - iTCO_wdt_set_NO_REBOOT_bit(p); > + iTCO_wdt_update_no_reboot_flag(p, true); > > spin_unlock(&p->io_lock); > > @@ -452,14 +437,14 @@ static int iTCO_wdt_probe(struct platform_device *pdev) > } > > /* Check chipset's NO_REBOOT bit */ > - if (iTCO_wdt_unset_NO_REBOOT_bit(p) && > + if (iTCO_wdt_update_no_reboot_flag(p, false) && > iTCO_vendor_check_noreboot_on()) { > pr_info("unable to reset NO_REBOOT flag, device disabled by hardware/BIOS\n"); > return -ENODEV; /* Cannot reset NO_REBOOT bit */ > } > > /* Set the NO_REBOOT bit to prevent later reboots, just for sure */ > - iTCO_wdt_set_NO_REBOOT_bit(p); > + iTCO_wdt_update_no_reboot_flag(p, true); > > /* The TCO logic uses the TCO_EN bit in the SMI_EN register */ > if (!devm_request_region(dev, p->smi_res->start, >
WARNING: multiple messages have this Message-ID (diff)
From: Guenter Roeck <linux-0h96xk9xTtrk1uMJSBkQmQ@public.gmane.org> To: Kuppuswamy Sathyanarayanan <sathyanarayanan.kuppuswamy-VuQAYsv1563Yd54FQh9/CA@public.gmane.org>, andy-wEGCiKHe2LqWVfeAwA7xHQ@public.gmane.org, qipeng.zha-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org, dvhart-wEGCiKHe2LqWVfeAwA7xHQ@public.gmane.org Cc: wim-IQzOog9fTRqzQB+pC5nmwQ@public.gmane.org, sathyaosid-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org, david.e.box-VuQAYsv1563Yd54FQh9/CA@public.gmane.org, rajneesh.bhardwaj-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org, platform-driver-x86-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, linux-watchdog-u79uwXL29TY76Z2rM5mHXA@public.gmane.org Subject: Re: [PATCH v5 4/6] watchdog: iTCO_wdt: cleanup set/unset no_reboot calls Date: Mon, 3 Apr 2017 20:22:59 -0700 [thread overview] Message-ID: <d50aed46-40e1-cfba-e3c2-a637f38f32b6@roeck-us.net> (raw) In-Reply-To: <26b8a87af5084168576cba4feaca689a84abd867.1491264643.git.sathyanarayanan.kuppuswamy-VuQAYsv1563Yd54FQh9/CA@public.gmane.org> On 04/03/2017 05:24 PM, Kuppuswamy Sathyanarayanan wrote: > Both iTCO_wdt_unset_NO_REBOOT_bit() and iTCO_wdt_unset_NO_REBOOT_bit() I think you mean s/set/unset/ once. > functions has lot of common code between them. So merging these two > functions would remove these unnecessary code duplications. This patch > fixes this issue by creating single update function to handle both > set/unset functionalities. > > Signed-off-by: Kuppuswamy Sathyanarayanan <sathyanarayanan.kuppuswamy-VuQAYsv1563Yd54FQh9/CA@public.gmane.org> > --- > drivers/watchdog/iTCO_wdt.c | 53 ++++++++++++++++----------------------------- > 1 file changed, 19 insertions(+), 34 deletions(-) > > diff --git a/drivers/watchdog/iTCO_wdt.c b/drivers/watchdog/iTCO_wdt.c > index 521ae95..cddfa00 100644 > --- a/drivers/watchdog/iTCO_wdt.c > +++ b/drivers/watchdog/iTCO_wdt.c > @@ -172,50 +172,35 @@ static inline u32 no_reboot_bit(struct iTCO_wdt_private *p) > return enable_bit; > } > > -static void iTCO_wdt_set_NO_REBOOT_bit(struct iTCO_wdt_private *p) > +static int iTCO_wdt_update_no_reboot_flag(struct iTCO_wdt_private *p, Why not stick with bit ? > + bool status) I think 'set' would be better than 'status'. > { > - u32 val32; > + u32 val32 = 0, newval32 = 0; > > - /* Set the NO_REBOOT bit: this disables reboots */ > if (p->iTCO_version >= 2) { > if (p->update_noreboot_flag) > - p->update_noreboot_flag(true); > + return p->update_noreboot_flag(status); > else { > val32 = readl(p->gcs_pmc); > - val32 |= no_reboot_bit(p); > - writel(val32, p->gcs_pmc); > - } > - } else if (p->iTCO_version == 1) { > - pci_read_config_dword(p->pci_dev, 0xd4, &val32); > - val32 |= no_reboot_bit(p); > - pci_write_config_dword(p->pci_dev, 0xd4, val32); > - } > -} > - > -static int iTCO_wdt_unset_NO_REBOOT_bit(struct iTCO_wdt_private *p) > -{ > - u32 enable_bit = no_reboot_bit(p); > - u32 val32 = 0; > + if (status) > + val32 |= no_reboot_bit(p); > + else > + val32 &= ~no_reboot_bit(p); > > - /* Unset the NO_REBOOT bit: this enables reboots */ > - if (p->iTCO_version >= 2) { > - if (p->update_noreboot_flag) > - return p->update_noreboot_flag(false); > - else { > - val32 = readl(p->gcs_pmc); > - val32 &= ~enable_bit; > writel(val32, p->gcs_pmc); > - val32 = readl(p->gcs_pmc); > + newval32 = readl(p->gcs_pmc); > } > } else if (p->iTCO_version == 1) { > pci_read_config_dword(p->pci_dev, 0xd4, &val32); > - val32 &= ~enable_bit; > + if (status) > + val32 |= no_reboot_bit(p); > + else > + val32 &= ~no_reboot_bit(p); > pci_write_config_dword(p->pci_dev, 0xd4, val32); > - > - pci_read_config_dword(p->pci_dev, 0xd4, &val32); > + pci_read_config_dword(p->pci_dev, 0xd4, &newval32); > } > > - if (val32 & enable_bit) > + if (val32 != newval32) > return -EIO; > > return 0; > @@ -231,7 +216,7 @@ static int iTCO_wdt_start(struct watchdog_device *wd_dev) > iTCO_vendor_pre_start(p->smi_res, wd_dev->timeout); > > /* disable chipset's NO_REBOOT bit */ > - if (iTCO_wdt_unset_NO_REBOOT_bit(p)) { > + if (iTCO_wdt_update_no_reboot_flag(p, false)) { > spin_unlock(&p->io_lock); > pr_err("failed to reset NO_REBOOT flag, reboot disabled by hardware/BIOS\n"); > return -EIO; > @@ -272,7 +257,7 @@ static int iTCO_wdt_stop(struct watchdog_device *wd_dev) > val = inw(TCO1_CNT(p)); > > /* Set the NO_REBOOT bit to prevent later reboots, just for sure */ > - iTCO_wdt_set_NO_REBOOT_bit(p); > + iTCO_wdt_update_no_reboot_flag(p, true); > > spin_unlock(&p->io_lock); > > @@ -452,14 +437,14 @@ static int iTCO_wdt_probe(struct platform_device *pdev) > } > > /* Check chipset's NO_REBOOT bit */ > - if (iTCO_wdt_unset_NO_REBOOT_bit(p) && > + if (iTCO_wdt_update_no_reboot_flag(p, false) && > iTCO_vendor_check_noreboot_on()) { > pr_info("unable to reset NO_REBOOT flag, device disabled by hardware/BIOS\n"); > return -ENODEV; /* Cannot reset NO_REBOOT bit */ > } > > /* Set the NO_REBOOT bit to prevent later reboots, just for sure */ > - iTCO_wdt_set_NO_REBOOT_bit(p); > + iTCO_wdt_update_no_reboot_flag(p, true); > > /* The TCO logic uses the TCO_EN bit in the SMI_EN register */ > if (!devm_request_region(dev, p->smi_res->start, > -- To unsubscribe from this list: send the line "unsubscribe linux-watchdog" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html
next prev parent reply other threads:[~2017-04-04 3:23 UTC|newest] Thread overview: 120+ messages / expand[flat|nested] mbox.gz Atom feed top 2017-03-18 2:06 [PATCH v3 1/5] platform/x86: intel_pmc_ipc: fix gcr offset Kuppuswamy Sathyanarayanan 2017-03-18 2:06 ` Kuppuswamy Sathyanarayanan 2017-03-18 2:06 ` [PATCH v3 2/5] platform/x86: intel_pmc_ipc: Add pmc gcr read/write/update api's Kuppuswamy Sathyanarayanan 2017-03-18 2:06 ` Kuppuswamy Sathyanarayanan 2017-03-31 13:47 ` Rajneesh Bhardwaj 2017-03-31 13:47 ` Rajneesh Bhardwaj 2017-03-18 2:06 ` [PATCH v3 3/5] watchdog: iTCO_wdt: Add PMC specific noreboot update api Kuppuswamy Sathyanarayanan 2017-03-18 2:06 ` Kuppuswamy Sathyanarayanan 2017-03-18 2:06 ` Kuppuswamy Sathyanarayanan 2017-03-28 9:12 ` [v3,3/5] " Guenter Roeck 2017-03-28 9:12 ` Guenter Roeck 2017-03-28 9:12 ` Guenter Roeck 2017-03-18 2:06 ` [PATCH v3 4/5] platform/x86: intel_pmc_ipc: Fix iTCO GCS memory mapping failure Kuppuswamy Sathyanarayanan 2017-03-18 2:06 ` Kuppuswamy Sathyanarayanan 2017-03-31 14:01 ` Rajneesh Bhardwaj 2017-03-31 14:01 ` Rajneesh Bhardwaj 2017-03-31 17:22 ` sathyanarayanan kuppuswamy 2017-03-31 17:22 ` sathyanarayanan kuppuswamy 2017-03-31 17:22 ` sathyanarayanan kuppuswamy 2017-03-18 2:06 ` [PATCH v3 5/5] platform/x86: intel_pmc_ipc: use gcr mem base for S0ix counter read Kuppuswamy Sathyanarayanan 2017-03-18 2:06 ` Kuppuswamy Sathyanarayanan 2017-03-18 2:06 ` Kuppuswamy Sathyanarayanan 2017-03-31 13:54 ` Rajneesh Bhardwaj 2017-03-31 13:54 ` Rajneesh Bhardwaj 2017-03-31 13:54 ` Rajneesh Bhardwaj 2017-03-31 15:08 ` Shanth Murthy 2017-03-31 15:08 ` Shanth Murthy 2017-03-31 13:37 ` [PATCH v3 1/5] platform/x86: intel_pmc_ipc: fix gcr offset Rajneesh Bhardwaj 2017-03-31 13:37 ` Rajneesh Bhardwaj 2017-03-31 23:27 ` [PATCH v4 " Kuppuswamy Sathyanarayanan 2017-03-31 23:27 ` Kuppuswamy Sathyanarayanan 2017-03-31 23:27 ` [PATCH v4 2/5] platform/x86: intel_pmc_ipc: Add pmc gcr read/write/update api's Kuppuswamy Sathyanarayanan 2017-03-31 23:27 ` Kuppuswamy Sathyanarayanan 2017-04-02 13:58 ` Andy Shevchenko 2017-04-02 13:58 ` Andy Shevchenko 2017-04-03 1:51 ` Sathyanarayanan Kuppuswamy Natarajan 2017-04-03 1:51 ` Sathyanarayanan Kuppuswamy Natarajan 2017-04-03 1:51 ` Sathyanarayanan Kuppuswamy Natarajan 2017-04-04 13:23 ` Andy Shevchenko 2017-04-04 13:23 ` Andy Shevchenko 2017-04-04 20:14 ` sathyanarayanan kuppuswamy 2017-04-04 20:14 ` sathyanarayanan kuppuswamy 2017-03-31 23:27 ` [PATCH v4 3/5] watchdog: iTCO_wdt: Add PMC specific noreboot update api Kuppuswamy Sathyanarayanan 2017-03-31 23:27 ` Kuppuswamy Sathyanarayanan 2017-03-31 23:27 ` Kuppuswamy Sathyanarayanan 2017-04-02 14:04 ` Andy Shevchenko 2017-04-02 14:04 ` Andy Shevchenko 2017-04-03 1:55 ` Sathyanarayanan Kuppuswamy Natarajan 2017-04-03 1:55 ` Sathyanarayanan Kuppuswamy Natarajan 2017-03-31 23:27 ` [PATCH v4 4/5] platform/x86: intel_pmc_ipc: Fix iTCO GCS memory mapping failure Kuppuswamy Sathyanarayanan 2017-03-31 23:27 ` Kuppuswamy Sathyanarayanan 2017-04-02 14:10 ` Andy Shevchenko 2017-04-02 14:10 ` Andy Shevchenko 2017-04-03 1:53 ` Sathyanarayanan Kuppuswamy Natarajan 2017-04-03 1:53 ` Sathyanarayanan Kuppuswamy Natarajan 2017-04-03 1:53 ` Sathyanarayanan Kuppuswamy Natarajan 2017-03-31 23:27 ` [PATCH v4 5/5] platform/x86: intel_pmc_ipc: use gcr mem base for S0ix counter read Kuppuswamy Sathyanarayanan 2017-03-31 23:27 ` Kuppuswamy Sathyanarayanan 2017-04-02 14:11 ` [PATCH v4 1/5] platform/x86: intel_pmc_ipc: fix gcr offset Andy Shevchenko 2017-04-02 14:11 ` Andy Shevchenko 2017-04-02 14:11 ` Andy Shevchenko 2017-04-03 1:51 ` Sathyanarayanan Kuppuswamy Natarajan 2017-04-03 1:51 ` Sathyanarayanan Kuppuswamy Natarajan 2017-04-03 1:51 ` Sathyanarayanan Kuppuswamy Natarajan 2017-04-04 0:24 ` [PATCH v5 1/6] " Kuppuswamy Sathyanarayanan 2017-04-04 0:24 ` Kuppuswamy Sathyanarayanan 2017-04-04 0:24 ` Kuppuswamy Sathyanarayanan 2017-04-04 0:24 ` [PATCH v5 2/6] platform/x86: intel_pmc_ipc: Add pmc gcr read/write/update api's Kuppuswamy Sathyanarayanan 2017-04-04 0:24 ` Kuppuswamy Sathyanarayanan 2017-04-04 13:53 ` Andy Shevchenko 2017-04-04 13:53 ` Andy Shevchenko 2017-04-04 22:07 ` sathyanarayanan kuppuswamy 2017-04-04 22:07 ` sathyanarayanan kuppuswamy 2017-04-04 22:07 ` sathyanarayanan kuppuswamy 2017-04-04 0:24 ` [PATCH v5 3/6] watchdog: iTCO_wdt: Add PMC specific noreboot update api Kuppuswamy Sathyanarayanan 2017-04-04 0:24 ` Kuppuswamy Sathyanarayanan 2017-04-04 13:48 ` Andy Shevchenko 2017-04-04 13:48 ` Andy Shevchenko 2017-04-04 0:24 ` [PATCH v5 4/6] watchdog: iTCO_wdt: cleanup set/unset no_reboot calls Kuppuswamy Sathyanarayanan 2017-04-04 0:24 ` Kuppuswamy Sathyanarayanan 2017-04-04 3:22 ` Guenter Roeck [this message] 2017-04-04 3:22 ` Guenter Roeck 2017-04-04 3:22 ` Guenter Roeck 2017-04-04 13:49 ` Andy Shevchenko 2017-04-04 13:49 ` Andy Shevchenko 2017-04-04 0:24 ` [PATCH v5 5/6] platform/x86: intel_pmc_ipc: Fix iTCO_wdt GCS memory mapping failure Kuppuswamy Sathyanarayanan 2017-04-04 0:24 ` Kuppuswamy Sathyanarayanan 2017-04-04 0:24 ` Kuppuswamy Sathyanarayanan 2017-04-04 13:53 ` Andy Shevchenko 2017-04-04 13:53 ` Andy Shevchenko 2017-04-04 0:24 ` [PATCH v5 6/6] platform/x86: intel_pmc_ipc: use gcr mem base for S0ix counter read Kuppuswamy Sathyanarayanan 2017-04-04 0:24 ` Kuppuswamy Sathyanarayanan 2017-04-04 13:51 ` Andy Shevchenko 2017-04-04 13:51 ` Andy Shevchenko 2017-04-04 22:15 ` sathyanarayanan kuppuswamy 2017-04-04 22:15 ` sathyanarayanan kuppuswamy 2017-04-04 22:15 ` sathyanarayanan kuppuswamy 2017-04-04 13:25 ` [PATCH v4 1/5] platform/x86: intel_pmc_ipc: fix gcr offset Andy Shevchenko 2017-04-04 13:25 ` Andy Shevchenko 2017-04-04 21:32 ` sathyanarayanan kuppuswamy 2017-04-04 21:32 ` sathyanarayanan kuppuswamy 2017-04-05 22:54 ` [PATCH v6 1/6] " Kuppuswamy Sathyanarayanan 2017-04-05 22:54 ` Kuppuswamy Sathyanarayanan 2017-04-05 22:54 ` Kuppuswamy Sathyanarayanan 2017-04-05 22:54 ` [PATCH v6 2/6] platform/x86: intel_pmc_ipc: Add pmc gcr read/write/update api's Kuppuswamy Sathyanarayanan 2017-04-05 22:54 ` Kuppuswamy Sathyanarayanan 2017-04-05 22:54 ` [PATCH v6 3/6] watchdog: iTCO_wdt: cleanup set/unset no_reboot_bit functions Kuppuswamy Sathyanarayanan 2017-04-05 22:54 ` Kuppuswamy Sathyanarayanan 2017-04-05 22:54 ` [PATCH v6 4/6] watchdog: iTCO_wdt: Add PMC specific noreboot update api Kuppuswamy Sathyanarayanan 2017-04-05 22:54 ` Kuppuswamy Sathyanarayanan 2017-04-06 11:42 ` Guenter Roeck 2017-04-06 11:42 ` Guenter Roeck 2017-04-05 22:54 ` [PATCH v6 5/6] platform/x86: intel_pmc_ipc: Fix iTCO_wdt GCS memory mapping failure Kuppuswamy Sathyanarayanan 2017-04-05 22:54 ` Kuppuswamy Sathyanarayanan 2017-04-06 21:37 ` Andy Shevchenko 2017-04-06 21:37 ` Andy Shevchenko 2017-04-05 22:54 ` [PATCH v6 6/6] platform/x86: intel_pmc_ipc: use gcr mem base for S0ix counter read Kuppuswamy Sathyanarayanan 2017-04-05 22:54 ` Kuppuswamy Sathyanarayanan 2017-04-06 15:16 ` [PATCH v6 1/6] platform/x86: intel_pmc_ipc: fix gcr offset Rajneesh Bhardwaj 2017-04-06 15:16 ` Rajneesh Bhardwaj
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=d50aed46-40e1-cfba-e3c2-a637f38f32b6@roeck-us.net \ --to=linux@roeck-us.net \ --cc=andy@infradead.org \ --cc=david.e.box@linux.intel.com \ --cc=dvhart@infradead.org \ --cc=linux-kernel@vger.kernel.org \ --cc=linux-watchdog@vger.kernel.org \ --cc=platform-driver-x86@vger.kernel.org \ --cc=qipeng.zha@intel.com \ --cc=rajneesh.bhardwaj@intel.com \ --cc=sathyanarayanan.kuppuswamy@linux.intel.com \ --cc=sathyaosid@gmail.com \ --cc=wim@iguana.be \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.