* [PATCH] ACPI: video: Don't allow MFD devices to probe
@ 2026-03-06 2:51 Mario Limonciello (AMD)
2026-03-06 3:05 ` Nirujogi, Pratap
2026-03-06 10:50 ` Rafael J. Wysocki
0 siblings, 2 replies; 8+ messages in thread
From: Mario Limonciello (AMD) @ 2026-03-06 2:51 UTC (permalink / raw)
To: mario.limonciello, rafael, lenb, W_Armin
Cc: Mario Limonciello (AMD), Pratap Nirujogi, rafael.j.wysocki,
linux-acpi
After ACPI video was converted into a platform device in
commit 02c057ddefef5 ("ACPI: video: Convert the driver to a platform one")
other devices that are MFD children of LNXVIDEO are being probed.
This isn't intended.
During probe detect MFD cells and reject them.
Fixes: 02c057ddefef5 ("ACPI: video: Convert the driver to a platform one")
Reported-by: Pratap Nirujogi <pnirujog@amd.com>
Closes: https://lore.kernel.org/regressions/007e3390-6b2b-457e-83c7-c794c5952018@amd.com/
Signed-off-by: Mario Limonciello (AMD) <superm1@kernel.org>
---
drivers/acpi/acpi_video.c | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/drivers/acpi/acpi_video.c b/drivers/acpi/acpi_video.c
index 3fa28f1abca38..2cb526775ac47 100644
--- a/drivers/acpi/acpi_video.c
+++ b/drivers/acpi/acpi_video.c
@@ -14,6 +14,7 @@
#include <linux/init.h>
#include <linux/types.h>
#include <linux/list.h>
+#include <linux/mfd/core.h>
#include <linux/mutex.h>
#include <linux/input.h>
#include <linux/backlight.h>
@@ -1988,6 +1989,9 @@ static int acpi_video_bus_probe(struct platform_device *pdev)
int error;
acpi_status status;
+ if (mfd_get_cell(pdev))
+ return -ENODEV;
+
status = acpi_walk_namespace(ACPI_TYPE_DEVICE,
acpi_dev_parent(device)->handle, 1,
acpi_video_bus_match, NULL,
--
2.43.0
^ permalink raw reply related [flat|nested] 8+ messages in thread* Re: [PATCH] ACPI: video: Don't allow MFD devices to probe 2026-03-06 2:51 [PATCH] ACPI: video: Don't allow MFD devices to probe Mario Limonciello (AMD) @ 2026-03-06 3:05 ` Nirujogi, Pratap 2026-03-06 10:50 ` Rafael J. Wysocki 1 sibling, 0 replies; 8+ messages in thread From: Nirujogi, Pratap @ 2026-03-06 3:05 UTC (permalink / raw) To: Mario Limonciello (AMD), mario.limonciello, rafael, lenb, W_Armin Cc: rafael.j.wysocki, linux-acpi, Bin Du, benjamin.chan, king.li This patch resolves the regression issue observed with AMD ISP device in kernel version 7.0-rc2. Tested-by: Pratap Nirujogi <pratap.nirujogi@amd.com> Thanks, Pratap On 3/5/2026 9:51 PM, Mario Limonciello (AMD) wrote: > Caution: This message originated from an External Source. Use proper caution when opening attachments, clicking links, or responding. > > > After ACPI video was converted into a platform device in > commit 02c057ddefef5 ("ACPI: video: Convert the driver to a platform one") > other devices that are MFD children of LNXVIDEO are being probed. > This isn't intended. > > During probe detect MFD cells and reject them. > > Fixes: 02c057ddefef5 ("ACPI: video: Convert the driver to a platform one") > Reported-by: Pratap Nirujogi <pnirujog@amd.com> > Closes: https://lore.kernel.org/regressions/007e3390-6b2b-457e-83c7-c794c5952018@amd.com/ > Signed-off-by: Mario Limonciello (AMD) <superm1@kernel.org> > --- > drivers/acpi/acpi_video.c | 4 ++++ > 1 file changed, 4 insertions(+) > > diff --git a/drivers/acpi/acpi_video.c b/drivers/acpi/acpi_video.c > index 3fa28f1abca38..2cb526775ac47 100644 > --- a/drivers/acpi/acpi_video.c > +++ b/drivers/acpi/acpi_video.c > @@ -14,6 +14,7 @@ > #include <linux/init.h> > #include <linux/types.h> > #include <linux/list.h> > +#include <linux/mfd/core.h> > #include <linux/mutex.h> > #include <linux/input.h> > #include <linux/backlight.h> > @@ -1988,6 +1989,9 @@ static int acpi_video_bus_probe(struct platform_device *pdev) > int error; > acpi_status status; > > + if (mfd_get_cell(pdev)) > + return -ENODEV; > + > status = acpi_walk_namespace(ACPI_TYPE_DEVICE, > acpi_dev_parent(device)->handle, 1, > acpi_video_bus_match, NULL, > -- > 2.43.0 > ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH] ACPI: video: Don't allow MFD devices to probe 2026-03-06 2:51 [PATCH] ACPI: video: Don't allow MFD devices to probe Mario Limonciello (AMD) 2026-03-06 3:05 ` Nirujogi, Pratap @ 2026-03-06 10:50 ` Rafael J. Wysocki 2026-03-06 12:17 ` Rafael J. Wysocki 1 sibling, 1 reply; 8+ messages in thread From: Rafael J. Wysocki @ 2026-03-06 10:50 UTC (permalink / raw) To: Mario Limonciello (AMD) Cc: mario.limonciello, rafael, lenb, W_Armin, Pratap Nirujogi, rafael.j.wysocki, linux-acpi On Fri, Mar 6, 2026 at 3:51 AM Mario Limonciello (AMD) <superm1@kernel.org> wrote: > > After ACPI video was converted into a platform device in > commit 02c057ddefef5 ("ACPI: video: Convert the driver to a platform one") > other devices that are MFD children of LNXVIDEO are being probed. > This isn't intended. > > During probe detect MFD cells and reject them. > > Fixes: 02c057ddefef5 ("ACPI: video: Convert the driver to a platform one") > Reported-by: Pratap Nirujogi <pnirujog@amd.com> > Closes: https://lore.kernel.org/regressions/007e3390-6b2b-457e-83c7-c794c5952018@amd.com/ The link is broken, so I can't see what is really happening, but my guess is that MFD devices are created under the video bus device and they get the same device ID (confusingly enough). > Signed-off-by: Mario Limonciello (AMD) <superm1@kernel.org> > --- > drivers/acpi/acpi_video.c | 4 ++++ > 1 file changed, 4 insertions(+) > > diff --git a/drivers/acpi/acpi_video.c b/drivers/acpi/acpi_video.c > index 3fa28f1abca38..2cb526775ac47 100644 > --- a/drivers/acpi/acpi_video.c > +++ b/drivers/acpi/acpi_video.c > @@ -14,6 +14,7 @@ > #include <linux/init.h> > #include <linux/types.h> > #include <linux/list.h> > +#include <linux/mfd/core.h> > #include <linux/mutex.h> > #include <linux/input.h> > #include <linux/backlight.h> > @@ -1988,6 +1989,9 @@ static int acpi_video_bus_probe(struct platform_device *pdev) > int error; > acpi_status status; > > + if (mfd_get_cell(pdev)) > + return -ENODEV; If the above is the case, I'd prefer this check if (!device->pnp.type.backlight) which should also work, but is more general. > + > status = acpi_walk_namespace(ACPI_TYPE_DEVICE, > acpi_dev_parent(device)->handle, 1, > acpi_video_bus_match, NULL, > -- ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH] ACPI: video: Don't allow MFD devices to probe 2026-03-06 10:50 ` Rafael J. Wysocki @ 2026-03-06 12:17 ` Rafael J. Wysocki 2026-03-06 12:37 ` Rafael J. Wysocki 2026-03-06 12:42 ` Mario Limonciello 0 siblings, 2 replies; 8+ messages in thread From: Rafael J. Wysocki @ 2026-03-06 12:17 UTC (permalink / raw) To: Mario Limonciello (AMD) Cc: mario.limonciello, W_Armin, Pratap Nirujogi, rafael.j.wysocki, linux-acpi On Fri, Mar 6, 2026 at 11:50 AM Rafael J. Wysocki <rafael@kernel.org> wrote: > > On Fri, Mar 6, 2026 at 3:51 AM Mario Limonciello (AMD) > <superm1@kernel.org> wrote: > > > > After ACPI video was converted into a platform device in > > commit 02c057ddefef5 ("ACPI: video: Convert the driver to a platform one") > > other devices that are MFD children of LNXVIDEO are being probed. > > This isn't intended. > > > > During probe detect MFD cells and reject them. > > > > Fixes: 02c057ddefef5 ("ACPI: video: Convert the driver to a platform one") > > Reported-by: Pratap Nirujogi <pnirujog@amd.com> > > Closes: https://lore.kernel.org/regressions/007e3390-6b2b-457e-83c7-c794c5952018@amd.com/ > > The link is broken, so I can't see what is really happening, but my > guess is that MFD devices are created under the video bus device and > they get the same device ID (confusingly enough). > > > Signed-off-by: Mario Limonciello (AMD) <superm1@kernel.org> > > --- > > drivers/acpi/acpi_video.c | 4 ++++ > > 1 file changed, 4 insertions(+) > > > > diff --git a/drivers/acpi/acpi_video.c b/drivers/acpi/acpi_video.c > > index 3fa28f1abca38..2cb526775ac47 100644 > > --- a/drivers/acpi/acpi_video.c > > +++ b/drivers/acpi/acpi_video.c > > @@ -14,6 +14,7 @@ > > #include <linux/init.h> > > #include <linux/types.h> > > #include <linux/list.h> > > +#include <linux/mfd/core.h> > > #include <linux/mutex.h> > > #include <linux/input.h> > > #include <linux/backlight.h> > > @@ -1988,6 +1989,9 @@ static int acpi_video_bus_probe(struct platform_device *pdev) > > int error; > > acpi_status status; > > > > + if (mfd_get_cell(pdev)) > > + return -ENODEV; > > If the above is the case, I'd prefer this check > > if (!device->pnp.type.backlight) > > which should also work, but is more general. Well, this will not work if the ACPI companion is shared between multiple devices. However, adding an MFD check here is a "works for me" change rather. I think what needs to be done is to extend the duplication check (see my patch from yesterday at https://lore.kernel.org/linux-acpi/5663583.Sb9uPGUboI@rafael.j.wysocki/) to detect the cases when another platform device (not necessarily a child of the same parent) sharing the same ACPI companion is probed. > > + > > status = acpi_walk_namespace(ACPI_TYPE_DEVICE, > > acpi_dev_parent(device)->handle, 1, > > acpi_video_bus_match, NULL, > > -- ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH] ACPI: video: Don't allow MFD devices to probe 2026-03-06 12:17 ` Rafael J. Wysocki @ 2026-03-06 12:37 ` Rafael J. Wysocki 2026-03-09 4:24 ` Nirujogi, Pratap 2026-03-06 12:42 ` Mario Limonciello 1 sibling, 1 reply; 8+ messages in thread From: Rafael J. Wysocki @ 2026-03-06 12:37 UTC (permalink / raw) To: Mario Limonciello (AMD), Pratap Nirujogi Cc: mario.limonciello, W_Armin, rafael.j.wysocki, linux-acpi On Friday, March 6, 2026 1:17:19 PM CET Rafael J. Wysocki wrote: > On Fri, Mar 6, 2026 at 11:50 AM Rafael J. Wysocki <rafael@kernel.org> wrote: > > > > On Fri, Mar 6, 2026 at 3:51 AM Mario Limonciello (AMD) > > <superm1@kernel.org> wrote: > > > > > > After ACPI video was converted into a platform device in > > > commit 02c057ddefef5 ("ACPI: video: Convert the driver to a platform one") > > > other devices that are MFD children of LNXVIDEO are being probed. > > > This isn't intended. > > > > > > During probe detect MFD cells and reject them. > > > > > > Fixes: 02c057ddefef5 ("ACPI: video: Convert the driver to a platform one") > > > Reported-by: Pratap Nirujogi <pnirujog@amd.com> > > > Closes: https://lore.kernel.org/regressions/007e3390-6b2b-457e-83c7-c794c5952018@amd.com/ > > > > The link is broken, so I can't see what is really happening, but my > > guess is that MFD devices are created under the video bus device and > > they get the same device ID (confusingly enough). > > > > > Signed-off-by: Mario Limonciello (AMD) <superm1@kernel.org> > > > --- > > > drivers/acpi/acpi_video.c | 4 ++++ > > > 1 file changed, 4 insertions(+) > > > > > > diff --git a/drivers/acpi/acpi_video.c b/drivers/acpi/acpi_video.c > > > index 3fa28f1abca38..2cb526775ac47 100644 > > > --- a/drivers/acpi/acpi_video.c > > > +++ b/drivers/acpi/acpi_video.c > > > @@ -14,6 +14,7 @@ > > > #include <linux/init.h> > > > #include <linux/types.h> > > > #include <linux/list.h> > > > +#include <linux/mfd/core.h> > > > #include <linux/mutex.h> > > > #include <linux/input.h> > > > #include <linux/backlight.h> > > > @@ -1988,6 +1989,9 @@ static int acpi_video_bus_probe(struct platform_device *pdev) > > > int error; > > > acpi_status status; > > > > > > + if (mfd_get_cell(pdev)) > > > + return -ENODEV; > > > > If the above is the case, I'd prefer this check > > > > if (!device->pnp.type.backlight) > > > > which should also work, but is more general. > > Well, this will not work if the ACPI companion is shared between > multiple devices. > > However, adding an MFD check here is a "works for me" change rather. > > I think what needs to be done is to extend the duplication check (see > my patch from yesterday at > https://lore.kernel.org/linux-acpi/5663583.Sb9uPGUboI@rafael.j.wysocki/) > to detect the cases when another platform device (not necessarily a > child of the same parent) sharing the same ACPI companion is probed. So, Pratap, can you please test the appended patch (untested so far)? --- drivers/acpi/acpi_video.c | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) --- a/drivers/acpi/acpi_video.c +++ b/drivers/acpi/acpi_video.c @@ -1978,16 +1978,38 @@ static int acpi_video_bus_put_devices(st return 0; } +static bool acpi_video_bus_bound(struct acpi_device *adev) +{ + struct acpi_video_bus *video; + + guard(mutex)(&video_list_lock); + + list_for_each_entry(video, &video_bus_head, entry) { + if (video->device == adev) + return true; + } + + return false; +} + static int instance; static int acpi_video_bus_probe(struct platform_device *pdev) { struct acpi_device *device = ACPI_COMPANION(&pdev->dev); + static DEFINE_MUTEX(probe_lock); struct acpi_video_bus *video; bool auto_detect; int error; acpi_status status; + /* Probe one video bus device at a time in case there are duplicates. */ + guard(mutex)(&probe_lock); + + /* Bind only one platform device for the given ACPI companion. */ + if (acpi_video_bus_bound(device)) + return -EALREADY; + status = acpi_walk_namespace(ACPI_TYPE_DEVICE, acpi_dev_parent(device)->handle, 1, acpi_video_bus_match, NULL, ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH] ACPI: video: Don't allow MFD devices to probe 2026-03-06 12:37 ` Rafael J. Wysocki @ 2026-03-09 4:24 ` Nirujogi, Pratap 0 siblings, 0 replies; 8+ messages in thread From: Nirujogi, Pratap @ 2026-03-09 4:24 UTC (permalink / raw) To: Rafael J. Wysocki, Mario Limonciello (AMD) Cc: mario.limonciello, W_Armin, rafael.j.wysocki, linux-acpi On 3/6/2026 7:37 AM, Rafael J. Wysocki wrote: > Caution: This message originated from an External Source. Use proper caution when opening attachments, clicking links, or responding. > > > On Friday, March 6, 2026 1:17:19 PM CET Rafael J. Wysocki wrote: >> On Fri, Mar 6, 2026 at 11:50 AM Rafael J. Wysocki <rafael@kernel.org> wrote: >>> >>> On Fri, Mar 6, 2026 at 3:51 AM Mario Limonciello (AMD) >>> <superm1@kernel.org> wrote: >>>> >>>> After ACPI video was converted into a platform device in >>>> commit 02c057ddefef5 ("ACPI: video: Convert the driver to a platform one") >>>> other devices that are MFD children of LNXVIDEO are being probed. >>>> This isn't intended. >>>> >>>> During probe detect MFD cells and reject them. >>>> >>>> Fixes: 02c057ddefef5 ("ACPI: video: Convert the driver to a platform one") >>>> Reported-by: Pratap Nirujogi <pnirujog@amd.com> >>>> Closes: https://lore.kernel.org/regressions/007e3390-6b2b-457e-83c7-c794c5952018@amd.com/ >>> >>> The link is broken, so I can't see what is really happening, but my >>> guess is that MFD devices are created under the video bus device and >>> they get the same device ID (confusingly enough). >>> >>>> Signed-off-by: Mario Limonciello (AMD) <superm1@kernel.org> >>>> --- >>>> drivers/acpi/acpi_video.c | 4 ++++ >>>> 1 file changed, 4 insertions(+) >>>> >>>> diff --git a/drivers/acpi/acpi_video.c b/drivers/acpi/acpi_video.c >>>> index 3fa28f1abca38..2cb526775ac47 100644 >>>> --- a/drivers/acpi/acpi_video.c >>>> +++ b/drivers/acpi/acpi_video.c >>>> @@ -14,6 +14,7 @@ >>>> #include <linux/init.h> >>>> #include <linux/types.h> >>>> #include <linux/list.h> >>>> +#include <linux/mfd/core.h> >>>> #include <linux/mutex.h> >>>> #include <linux/input.h> >>>> #include <linux/backlight.h> >>>> @@ -1988,6 +1989,9 @@ static int acpi_video_bus_probe(struct platform_device *pdev) >>>> int error; >>>> acpi_status status; >>>> >>>> + if (mfd_get_cell(pdev)) >>>> + return -ENODEV; >>> >>> If the above is the case, I'd prefer this check >>> >>> if (!device->pnp.type.backlight) >>> >>> which should also work, but is more general. >> >> Well, this will not work if the ACPI companion is shared between >> multiple devices. >> >> However, adding an MFD check here is a "works for me" change rather. >> My apologies for not being clear about what works on my end. When I said it works, I meant that the MFD check had fixed the noisy error messages below. However, this does not resolve the automatic probe issue of AMD ISP device. [ 5.337676] acpi device:14: Error installing notify handler [ 5.337682] acpi device:15: Error installing notify handler [ 5.337684] acpi device:16: Error installing notify handler >> I think what needs to be done is to extend the duplication check (see >> my patch from yesterday at >> https://lore.kernel.org/linux-acpi/5663583.Sb9uPGUboI@rafael.j.wysocki/) >> to detect the cases when another platform device (not necessarily a >> child of the same parent) sharing the same ACPI companion is probed. > > So, Pratap, can you please test the appended patch (untested so far)? > I verified the appended patch and the results are same as the MFD check suggested by Mario. Automatic modprobe of AMD ISP device issue is still observed. Based on my debugging so far, I can confirm both automatic AMD ISP device probe and camera works only when the MFD child devices do not inherit the parent device ACPI companion. I shall run a git bisect to identify the specific commit that is causing this issue in 7.0. > --- > drivers/acpi/acpi_video.c | 22 ++++++++++++++++++++++ > 1 file changed, 22 insertions(+) > > --- a/drivers/acpi/acpi_video.c > +++ b/drivers/acpi/acpi_video.c > @@ -1978,16 +1978,38 @@ static int acpi_video_bus_put_devices(st > return 0; > } > > +static bool acpi_video_bus_bound(struct acpi_device *adev) > +{ > + struct acpi_video_bus *video; > + > + guard(mutex)(&video_list_lock); > + > + list_for_each_entry(video, &video_bus_head, entry) { > + if (video->device == adev) > + return true; > + } > + > + return false; > +} > + > static int instance; > > static int acpi_video_bus_probe(struct platform_device *pdev) > { > struct acpi_device *device = ACPI_COMPANION(&pdev->dev); > + static DEFINE_MUTEX(probe_lock); > struct acpi_video_bus *video; > bool auto_detect; > int error; > acpi_status status; > > + /* Probe one video bus device at a time in case there are duplicates. */ > + guard(mutex)(&probe_lock); > + > + /* Bind only one platform device for the given ACPI companion. */ > + if (acpi_video_bus_bound(device)) > + return -EALREADY; > + > status = acpi_walk_namespace(ACPI_TYPE_DEVICE, > acpi_dev_parent(device)->handle, 1, > acpi_video_bus_match, NULL, > > > > ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH] ACPI: video: Don't allow MFD devices to probe 2026-03-06 12:17 ` Rafael J. Wysocki 2026-03-06 12:37 ` Rafael J. Wysocki @ 2026-03-06 12:42 ` Mario Limonciello 2026-03-06 12:46 ` Rafael J. Wysocki 1 sibling, 1 reply; 8+ messages in thread From: Mario Limonciello @ 2026-03-06 12:42 UTC (permalink / raw) To: Rafael J. Wysocki Cc: mario.limonciello, W_Armin, Pratap Nirujogi, rafael.j.wysocki, linux-acpi On 3/6/26 6:17 AM, Rafael J. Wysocki wrote: > On Fri, Mar 6, 2026 at 11:50 AM Rafael J. Wysocki <rafael@kernel.org> wrote: >> >> On Fri, Mar 6, 2026 at 3:51 AM Mario Limonciello (AMD) >> <superm1@kernel.org> wrote: >>> >>> After ACPI video was converted into a platform device in >>> commit 02c057ddefef5 ("ACPI: video: Convert the driver to a platform one") >>> other devices that are MFD children of LNXVIDEO are being probed. >>> This isn't intended. >>> >>> During probe detect MFD cells and reject them. >>> >>> Fixes: 02c057ddefef5 ("ACPI: video: Convert the driver to a platform one") >>> Reported-by: Pratap Nirujogi <pnirujog@amd.com> >>> Closes: https://lore.kernel.org/regressions/007e3390-6b2b-457e-83c7-c794c5952018@amd.com/ >> >> The link is broken, so I can't see what is really happening, but my >> guess is that MFD devices are created under the video bus device and >> they get the same device ID (confusingly enough). Hmm, I just double checked the link and it worked for me. But you are on the To: list of that thread also. >> >>> Signed-off-by: Mario Limonciello (AMD) <superm1@kernel.org> >>> --- >>> drivers/acpi/acpi_video.c | 4 ++++ >>> 1 file changed, 4 insertions(+) >>> >>> diff --git a/drivers/acpi/acpi_video.c b/drivers/acpi/acpi_video.c >>> index 3fa28f1abca38..2cb526775ac47 100644 >>> --- a/drivers/acpi/acpi_video.c >>> +++ b/drivers/acpi/acpi_video.c >>> @@ -14,6 +14,7 @@ >>> #include <linux/init.h> >>> #include <linux/types.h> >>> #include <linux/list.h> >>> +#include <linux/mfd/core.h> >>> #include <linux/mutex.h> >>> #include <linux/input.h> >>> #include <linux/backlight.h> >>> @@ -1988,6 +1989,9 @@ static int acpi_video_bus_probe(struct platform_device *pdev) >>> int error; >>> acpi_status status; >>> >>> + if (mfd_get_cell(pdev)) >>> + return -ENODEV; >> >> If the above is the case, I'd prefer this check >> >> if (!device->pnp.type.backlight) >> >> which should also work, but is more general. > > Well, this will not work if the ACPI companion is shared between > multiple devices. > > However, adding an MFD check here is a "works for me" change rather. > > I think what needs to be done is to extend the duplication check (see > my patch from yesterday at > https://lore.kernel.org/linux-acpi/5663583.Sb9uPGUboI@rafael.j.wysocki/) > to detect the cases when another platform device (not necessarily a > child of the same parent) sharing the same ACPI companion is probed. > Generally makes sense to me. But in this particular case it shouldn't be a FW_BUG. Do you want to roll this in your series? Or would you prefer one of us to send a follow up patch? ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH] ACPI: video: Don't allow MFD devices to probe 2026-03-06 12:42 ` Mario Limonciello @ 2026-03-06 12:46 ` Rafael J. Wysocki 0 siblings, 0 replies; 8+ messages in thread From: Rafael J. Wysocki @ 2026-03-06 12:46 UTC (permalink / raw) To: Mario Limonciello Cc: Rafael J. Wysocki, mario.limonciello, W_Armin, Pratap Nirujogi, rafael.j.wysocki, linux-acpi On Fri, Mar 6, 2026 at 1:43 PM Mario Limonciello <superm1@kernel.org> wrote: > > > > On 3/6/26 6:17 AM, Rafael J. Wysocki wrote: > > On Fri, Mar 6, 2026 at 11:50 AM Rafael J. Wysocki <rafael@kernel.org> wrote: > >> > >> On Fri, Mar 6, 2026 at 3:51 AM Mario Limonciello (AMD) > >> <superm1@kernel.org> wrote: > >>> > >>> After ACPI video was converted into a platform device in > >>> commit 02c057ddefef5 ("ACPI: video: Convert the driver to a platform one") > >>> other devices that are MFD children of LNXVIDEO are being probed. > >>> This isn't intended. > >>> > >>> During probe detect MFD cells and reject them. > >>> > >>> Fixes: 02c057ddefef5 ("ACPI: video: Convert the driver to a platform one") > >>> Reported-by: Pratap Nirujogi <pnirujog@amd.com> > >>> Closes: https://lore.kernel.org/regressions/007e3390-6b2b-457e-83c7-c794c5952018@amd.com/ > >> > >> The link is broken, so I can't see what is really happening, but my > >> guess is that MFD devices are created under the video bus device and > >> they get the same device ID (confusingly enough). > > Hmm, I just double checked the link and it worked for me. It works now for me too. I'm not sure what happened the first time. > But you are on the To: list of that thread also. Yup, I've found it. > >> > >>> Signed-off-by: Mario Limonciello (AMD) <superm1@kernel.org> > >>> --- > >>> drivers/acpi/acpi_video.c | 4 ++++ > >>> 1 file changed, 4 insertions(+) > >>> > >>> diff --git a/drivers/acpi/acpi_video.c b/drivers/acpi/acpi_video.c > >>> index 3fa28f1abca38..2cb526775ac47 100644 > >>> --- a/drivers/acpi/acpi_video.c > >>> +++ b/drivers/acpi/acpi_video.c > >>> @@ -14,6 +14,7 @@ > >>> #include <linux/init.h> > >>> #include <linux/types.h> > >>> #include <linux/list.h> > >>> +#include <linux/mfd/core.h> > >>> #include <linux/mutex.h> > >>> #include <linux/input.h> > >>> #include <linux/backlight.h> > >>> @@ -1988,6 +1989,9 @@ static int acpi_video_bus_probe(struct platform_device *pdev) > >>> int error; > >>> acpi_status status; > >>> > >>> + if (mfd_get_cell(pdev)) > >>> + return -ENODEV; > >> > >> If the above is the case, I'd prefer this check > >> > >> if (!device->pnp.type.backlight) > >> > >> which should also work, but is more general. > > > > Well, this will not work if the ACPI companion is shared between > > multiple devices. > > > > However, adding an MFD check here is a "works for me" change rather. > > > > I think what needs to be done is to extend the duplication check (see > > my patch from yesterday at > > https://lore.kernel.org/linux-acpi/5663583.Sb9uPGUboI@rafael.j.wysocki/) > > to detect the cases when another platform device (not necessarily a > > child of the same parent) sharing the same ACPI companion is probed. > > > > Generally makes sense to me. But in this particular case it shouldn't > be a FW_BUG. > > Do you want to roll this in your series? Or would you prefer one of us > to send a follow up patch? I've sent one already, our replies passed each other: https://lore.kernel.org/linux-acpi/5975968.DvuYhMxLoT@rafael.j.wysocki/ ^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2026-03-09 4:24 UTC | newest] Thread overview: 8+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2026-03-06 2:51 [PATCH] ACPI: video: Don't allow MFD devices to probe Mario Limonciello (AMD) 2026-03-06 3:05 ` Nirujogi, Pratap 2026-03-06 10:50 ` Rafael J. Wysocki 2026-03-06 12:17 ` Rafael J. Wysocki 2026-03-06 12:37 ` Rafael J. Wysocki 2026-03-09 4:24 ` Nirujogi, Pratap 2026-03-06 12:42 ` Mario Limonciello 2026-03-06 12:46 ` Rafael J. Wysocki
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox