diff mbox

[v3,4/5] ACPI / boot: Not all platform require acpi_reduced_hw_init()

Message ID 20170718150420.61600-5-andriy.shevchenko@linux.intel.com (mailing list archive)
State Changes Requested, archived
Headers show

Commit Message

Andy Shevchenko July 18, 2017, 3:04 p.m. UTC
Some platform might take care of legacy devices on theirs own.
Let's allow them to do that by exporting a weak function.

Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
---
 arch/x86/kernel/acpi/boot.c | 2 +-
 include/linux/acpi.h        | 3 +++
 2 files changed, 4 insertions(+), 1 deletion(-)

Comments

Rafael J. Wysocki July 21, 2017, 10:25 p.m. UTC | #1
On Tuesday, July 18, 2017 06:04:19 PM Andy Shevchenko wrote:
> Some platform might take care of legacy devices on theirs own.
> Let's allow them to do that by exporting a weak function.
> 
> Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>

I'd rather do it at the time when acpi_reduced_hw_init() actually needs to be
overridden by at least one platform.

Thanks,
Rafael
Andy Shevchenko July 22, 2017, 1:53 a.m. UTC | #2
On Sat, Jul 22, 2017 at 1:25 AM, Rafael J. Wysocki <rjw@rjwysocki.net> wrote:
> On Tuesday, July 18, 2017 06:04:19 PM Andy Shevchenko wrote:
>> Some platform might take care of legacy devices on theirs own.
>> Let's allow them to do that by exporting a weak function.
>>
>> Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
>
> I'd rather do it at the time when acpi_reduced_hw_init() actually needs to be
> overridden by at least one platform.

Do you mean as folded into some other patch or just as a preparatory
patch in some future series?
Rafael J. Wysocki July 22, 2017, 10:02 p.m. UTC | #3
On Saturday, July 22, 2017 04:53:52 AM Andy Shevchenko wrote:
> On Sat, Jul 22, 2017 at 1:25 AM, Rafael J. Wysocki <rjw@rjwysocki.net> wrote:
> > On Tuesday, July 18, 2017 06:04:19 PM Andy Shevchenko wrote:
> >> Some platform might take care of legacy devices on theirs own.
> >> Let's allow them to do that by exporting a weak function.
> >>
> >> Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
> >
> > I'd rather do it at the time when acpi_reduced_hw_init() actually needs to be
> > overridden by at least one platform.
> 
> Do you mean as folded into some other patch or just as a preparatory
> patch in some future series?
> 
> 

Any of the above would work for me.

Thanks,
Rafael
Andy Shevchenko July 22, 2017, 10:13 p.m. UTC | #4
On Sun, Jul 23, 2017 at 1:02 AM, Rafael J. Wysocki <rjw@rjwysocki.net> wrote:
> On Saturday, July 22, 2017 04:53:52 AM Andy Shevchenko wrote:
>> On Sat, Jul 22, 2017 at 1:25 AM, Rafael J. Wysocki <rjw@rjwysocki.net> wrote:
>> > On Tuesday, July 18, 2017 06:04:19 PM Andy Shevchenko wrote:

>> > I'd rather do it at the time when acpi_reduced_hw_init() actually needs to be
>> > overridden by at least one platform.
>>
>> Do you mean as folded into some other patch or just as a preparatory
>> patch in some future series?

> Any of the above would work for me.

Logically it should be a separate change as I can see (I have already
locally prepared patches for that one platform).

Thanks for review.

P.S. Are you going to apply first 3 then from this series?
Rafael J. Wysocki July 22, 2017, 10:14 p.m. UTC | #5
On Sun, Jul 23, 2017 at 12:13 AM, Andy Shevchenko
<andy.shevchenko@gmail.com> wrote:
> On Sun, Jul 23, 2017 at 1:02 AM, Rafael J. Wysocki <rjw@rjwysocki.net> wrote:
>> On Saturday, July 22, 2017 04:53:52 AM Andy Shevchenko wrote:
>>> On Sat, Jul 22, 2017 at 1:25 AM, Rafael J. Wysocki <rjw@rjwysocki.net> wrote:
>>> > On Tuesday, July 18, 2017 06:04:19 PM Andy Shevchenko wrote:
>
>>> > I'd rather do it at the time when acpi_reduced_hw_init() actually needs to be
>>> > overridden by at least one platform.
>>>
>>> Do you mean as folded into some other patch or just as a preparatory
>>> patch in some future series?
>
>> Any of the above would work for me.
>
> Logically it should be a separate change as I can see (I have already
> locally prepared patches for that one platform).
>
> Thanks for review.
>
> P.S. Are you going to apply first 3 then from this series?

Yes, I am.
Rafael J. Wysocki July 26, 2017, 6:53 p.m. UTC | #6
On Sunday, July 23, 2017 12:14:27 AM Rafael J. Wysocki wrote:
> On Sun, Jul 23, 2017 at 12:13 AM, Andy Shevchenko
> <andy.shevchenko@gmail.com> wrote:
> > On Sun, Jul 23, 2017 at 1:02 AM, Rafael J. Wysocki <rjw@rjwysocki.net> wrote:
> >> On Saturday, July 22, 2017 04:53:52 AM Andy Shevchenko wrote:
> >>> On Sat, Jul 22, 2017 at 1:25 AM, Rafael J. Wysocki <rjw@rjwysocki.net> wrote:
> >>> > On Tuesday, July 18, 2017 06:04:19 PM Andy Shevchenko wrote:
> >
> >>> > I'd rather do it at the time when acpi_reduced_hw_init() actually needs to be
> >>> > overridden by at least one platform.
> >>>
> >>> Do you mean as folded into some other patch or just as a preparatory
> >>> patch in some future series?
> >
> >> Any of the above would work for me.
> >
> > Logically it should be a separate change as I can see (I have already
> > locally prepared patches for that one platform).
> >
> > Thanks for review.
> >
> > P.S. Are you going to apply first 3 then from this series?
> 
> Yes, I am.

So applied now, thanks!
diff mbox

Patch

diff --git a/arch/x86/kernel/acpi/boot.c b/arch/x86/kernel/acpi/boot.c
index 0186d3bae610..71c0feae60a4 100644
--- a/arch/x86/kernel/acpi/boot.c
+++ b/arch/x86/kernel/acpi/boot.c
@@ -1348,7 +1348,7 @@  static int __init dmi_ignore_irq0_timer_override(const struct dmi_system_id *d)
  *
  * We initialize the Hardware-reduced ACPI model here:
  */
-static void __init acpi_reduced_hw_init(void)
+void __init __weak acpi_reduced_hw_init(void)
 {
 	if (acpi_gbl_reduced_hardware) {
 		/*
diff --git a/include/linux/acpi.h b/include/linux/acpi.h
index 7443af1d16e7..5a19b2090db1 100644
--- a/include/linux/acpi.h
+++ b/include/linux/acpi.h
@@ -230,6 +230,8 @@  struct acpi_subtable_proc {
 
 void __iomem *__acpi_map_table(unsigned long phys, unsigned long size);
 void __acpi_unmap_table(void __iomem *map, unsigned long size);
+
+void acpi_reduced_hw_init(void);
 int early_acpi_boot_init(void);
 int acpi_boot_init (void);
 void acpi_boot_table_init (void);
@@ -682,6 +684,7 @@  static inline struct device *acpi_get_first_physical_node(struct acpi_device *ad
 static inline void acpi_early_init(void) { }
 static inline void acpi_subsystem_init(void) { }
 
+static inline void acpi_reduced_hw_init(void) { }
 static inline int early_acpi_boot_init(void)
 {
 	return 0;