* [patch] provide rtc_cmos platform device, take 2 [not found] <200805212334.m4LNY42M006425@imap1.linux-foundation.org> @ 2008-05-23 5:02 ` Stas Sergeev 2008-05-27 11:23 ` [patch][resend] " Stas Sergeev 1 sibling, 0 replies; 10+ messages in thread From: Stas Sergeev @ 2008-05-23 5:02 UTC (permalink / raw) To: Linux kernel [-- Attachment #1: Type: text/plain, Size: 923 bytes --] Hello. [forgot to CC this to LKML, doing now] akpm@linux-foundation.org wrote: > This patch was dropped because an updated version will be merged How is the attached one for an updated version? Please check the compilation on arm as I haven't done that. ---- Recently (around 2.6.25) I've noticed that RTC no longer works for me. It turned out this is because I use pnpacpi=off kernel option to work around the parport_pc bugs. I always did so, but RTC used to work fine in the past, and now it have regressed. The attached patch fixes the problem by creating the platform device for the RTC when PNP is disabled. This may also help running the PNP-enabled kernel on an older PCs. Signed-off-by: Stas Sergeev <stsp@aknet.ru> Cc: David Brownell <david-b@pacbell.net> Cc: Ingo Molnar <mingo@elte.hu> Cc: Thomas Gleixner <tglx@linutronix.de> Cc: Bjorn Helgaas <bjorn.helgaas@hp.com> Cc: Adam Belay <ambx1@neo.rr.com> [-- Attachment #2: rtc_platf1.diff --] [-- Type: text/x-patch, Size: 2636 bytes --] diff --git a/arch/x86/kernel/rtc.c b/arch/x86/kernel/rtc.c index 9615eee..01459d2 100644 --- a/arch/x86/kernel/rtc.c +++ b/arch/x86/kernel/rtc.c @@ -4,9 +4,12 @@ #include <linux/acpi.h> #include <linux/bcd.h> #include <linux/mc146818rtc.h> +#include <linux/platform_device.h> +#include <linux/pnp.h> #include <asm/time.h> #include <asm/vsyscall.h> +#include <asm/mc146818rtc.h> #ifdef CONFIG_X86_32 /* @@ -197,3 +200,35 @@ unsigned long long native_read_tsc(void) } EXPORT_SYMBOL(native_read_tsc); + +static struct resource rtc_resources[] = { + [0] = { + .start = RTC_PORT(0), + .end = RTC_PORT(1), + .flags = IORESOURCE_IO, + }, + [1] = { + .start = RTC_IRQ, + .end = RTC_IRQ, + .flags = IORESOURCE_IRQ, + } +}; + +static struct platform_device rtc_device = { + .name = "rtc_cmos", + .id = -1, + .resource = rtc_resources, + .num_resources = ARRAY_SIZE(rtc_resources), +}; + +static __init int add_rtc_cmos(void) +{ +#ifdef CONFIG_PNP + if (!pnp_platform_devices) + platform_device_register(&rtc_device); +#else + platform_device_register(&rtc_device); +#endif /* CONFIG_PNP */ + return 0; +} +device_initcall(add_rtc_cmos); diff --git a/drivers/rtc/rtc-cmos.c b/drivers/rtc/rtc-cmos.c index d060a06..d7bb9ba 100644 --- a/drivers/rtc/rtc-cmos.c +++ b/drivers/rtc/rtc-cmos.c @@ -905,19 +905,7 @@ static struct pnp_driver cmos_pnp_driver = { .resume = cmos_pnp_resume, }; -static int __init cmos_init(void) -{ - return pnp_register_driver(&cmos_pnp_driver); -} -module_init(cmos_init); - -static void __exit cmos_exit(void) -{ - pnp_unregister_driver(&cmos_pnp_driver); -} -module_exit(cmos_exit); - -#else /* no PNP */ +#endif /* CONFIG_PNP */ /*----------------------------------------------------------------*/ @@ -958,20 +946,33 @@ static struct platform_driver cmos_platform_driver = { static int __init cmos_init(void) { +#ifdef CONFIG_PNP + if (pnp_platform_devices) + return pnp_register_driver(&cmos_pnp_driver); + else + return platform_driver_probe(&cmos_platform_driver, + cmos_platform_probe); +#else return platform_driver_probe(&cmos_platform_driver, cmos_platform_probe); +#endif /* CONFIG_PNP */ } module_init(cmos_init); static void __exit cmos_exit(void) { +#ifdef CONFIG_PNP + if (pnp_platform_devices) + pnp_unregister_driver(&cmos_pnp_driver); + else + platform_driver_unregister(&cmos_platform_driver); +#else platform_driver_unregister(&cmos_platform_driver); +#endif /* CONFIG_PNP */ } module_exit(cmos_exit); -#endif /* !PNP */ - MODULE_AUTHOR("David Brownell"); MODULE_DESCRIPTION("Driver for PC-style 'CMOS' RTCs"); MODULE_LICENSE("GPL"); ^ permalink raw reply related [flat|nested] 10+ messages in thread
* [patch][resend] provide rtc_cmos platform device, take 2 [not found] <200805212334.m4LNY42M006425@imap1.linux-foundation.org> 2008-05-23 5:02 ` [patch] provide rtc_cmos platform device, take 2 Stas Sergeev @ 2008-05-27 11:23 ` Stas Sergeev 2008-05-28 23:36 ` Andrew Morton 2008-05-29 6:27 ` David Brownell 1 sibling, 2 replies; 10+ messages in thread From: Stas Sergeev @ 2008-05-27 11:23 UTC (permalink / raw) To: akpm Cc: ambx1, bjorn.helgaas, david-b, mingo, tglx, dbrownell, Russell King, Linux kernel [-- Attachment #1: Type: text/plain, Size: 646 bytes --] Hello. akpm@linux-foundation.org wrote: > This patch was dropped because an updated version will be merged How is the attached one for an updated version? ---- RTC doesn't work with pnpacpi=off. The attached patch fixes the problem by creating the platform device for the RTC when PNP is disabled. This may also help running the PNP-enabled kernel on an older PCs. Signed-off-by: Stas Sergeev <stsp@aknet.ru> Cc: David Brownell <david-b@pacbell.net> Cc: Ingo Molnar <mingo@elte.hu> Cc: Thomas Gleixner <tglx@linutronix.de> Cc: Bjorn Helgaas <bjorn.helgaas@hp.com> Cc: Adam Belay <ambx1@neo.rr.com> CC: Russell King <rmk+lkml@arm.linux.org.uk> [-- Attachment #2: rtc_platf1.diff --] [-- Type: text/x-patch, Size: 2636 bytes --] diff --git a/arch/x86/kernel/rtc.c b/arch/x86/kernel/rtc.c index 9615eee..01459d2 100644 --- a/arch/x86/kernel/rtc.c +++ b/arch/x86/kernel/rtc.c @@ -4,9 +4,12 @@ #include <linux/acpi.h> #include <linux/bcd.h> #include <linux/mc146818rtc.h> +#include <linux/platform_device.h> +#include <linux/pnp.h> #include <asm/time.h> #include <asm/vsyscall.h> +#include <asm/mc146818rtc.h> #ifdef CONFIG_X86_32 /* @@ -197,3 +200,35 @@ unsigned long long native_read_tsc(void) } EXPORT_SYMBOL(native_read_tsc); + +static struct resource rtc_resources[] = { + [0] = { + .start = RTC_PORT(0), + .end = RTC_PORT(1), + .flags = IORESOURCE_IO, + }, + [1] = { + .start = RTC_IRQ, + .end = RTC_IRQ, + .flags = IORESOURCE_IRQ, + } +}; + +static struct platform_device rtc_device = { + .name = "rtc_cmos", + .id = -1, + .resource = rtc_resources, + .num_resources = ARRAY_SIZE(rtc_resources), +}; + +static __init int add_rtc_cmos(void) +{ +#ifdef CONFIG_PNP + if (!pnp_platform_devices) + platform_device_register(&rtc_device); +#else + platform_device_register(&rtc_device); +#endif /* CONFIG_PNP */ + return 0; +} +device_initcall(add_rtc_cmos); diff --git a/drivers/rtc/rtc-cmos.c b/drivers/rtc/rtc-cmos.c index d060a06..d7bb9ba 100644 --- a/drivers/rtc/rtc-cmos.c +++ b/drivers/rtc/rtc-cmos.c @@ -905,19 +905,7 @@ static struct pnp_driver cmos_pnp_driver = { .resume = cmos_pnp_resume, }; -static int __init cmos_init(void) -{ - return pnp_register_driver(&cmos_pnp_driver); -} -module_init(cmos_init); - -static void __exit cmos_exit(void) -{ - pnp_unregister_driver(&cmos_pnp_driver); -} -module_exit(cmos_exit); - -#else /* no PNP */ +#endif /* CONFIG_PNP */ /*----------------------------------------------------------------*/ @@ -958,20 +946,33 @@ static struct platform_driver cmos_platform_driver = { static int __init cmos_init(void) { +#ifdef CONFIG_PNP + if (pnp_platform_devices) + return pnp_register_driver(&cmos_pnp_driver); + else + return platform_driver_probe(&cmos_platform_driver, + cmos_platform_probe); +#else return platform_driver_probe(&cmos_platform_driver, cmos_platform_probe); +#endif /* CONFIG_PNP */ } module_init(cmos_init); static void __exit cmos_exit(void) { +#ifdef CONFIG_PNP + if (pnp_platform_devices) + pnp_unregister_driver(&cmos_pnp_driver); + else + platform_driver_unregister(&cmos_platform_driver); +#else platform_driver_unregister(&cmos_platform_driver); +#endif /* CONFIG_PNP */ } module_exit(cmos_exit); -#endif /* !PNP */ - MODULE_AUTHOR("David Brownell"); MODULE_DESCRIPTION("Driver for PC-style 'CMOS' RTCs"); MODULE_LICENSE("GPL"); ^ permalink raw reply related [flat|nested] 10+ messages in thread
* Re: [patch][resend] provide rtc_cmos platform device, take 2 2008-05-27 11:23 ` [patch][resend] " Stas Sergeev @ 2008-05-28 23:36 ` Andrew Morton 2008-05-29 4:52 ` Stas Sergeev ` (2 more replies) 2008-05-29 6:27 ` David Brownell 1 sibling, 3 replies; 10+ messages in thread From: Andrew Morton @ 2008-05-28 23:36 UTC (permalink / raw) To: Stas Sergeev Cc: ambx1, bjorn.helgaas, david-b, mingo, tglx, dbrownell, rmk+lkml, linux-kernel On Tue, 27 May 2008 15:23:06 +0400 Stas Sergeev <stsp@aknet.ru> wrote: > RTC doesn't work with pnpacpi=off. > The attached patch fixes the problem by creating the platform device for > the RTC when PNP is disabled. This may also help running the PNP-enabled > kernel on an older PCs. > > Signed-off-by: Stas Sergeev <stsp@aknet.ru> > Cc: David Brownell <david-b@pacbell.net> > Cc: Ingo Molnar <mingo@elte.hu> > Cc: Thomas Gleixner <tglx@linutronix.de> > Cc: Bjorn Helgaas <bjorn.helgaas@hp.com> > Cc: Adam Belay <ambx1@neo.rr.com> > CC: Russell King <rmk+lkml@arm.linux.org.uk> So is everyone happy with this now? It got lost from the changelog but IIRC this fixes a small sort-of regression which was added in 2.6.25(?) because Stas switched drivers. I assume that the incompatibility was unintentional. So it might be 2.6.26 material, and possibly even 2.6.25.x? ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [patch][resend] provide rtc_cmos platform device, take 2 2008-05-28 23:36 ` Andrew Morton @ 2008-05-29 4:52 ` Stas Sergeev 2008-05-29 14:54 ` Bjorn Helgaas 2008-06-02 9:53 ` Russell King 2 siblings, 0 replies; 10+ messages in thread From: Stas Sergeev @ 2008-05-29 4:52 UTC (permalink / raw) To: Andrew Morton Cc: ambx1, bjorn.helgaas, david-b, mingo, tglx, dbrownell, rmk+lkml, linux-kernel Hello. Andrew Morton wrote: > It got lost from the changelog but IIRC this fixes a small sort-of regression > which was added in 2.6.25(?) because Stas switched drivers. The switch was behind my will (kconfig changed), here's what David says: http://uwsg.ucs.indiana.edu/hypermail/linux/kernel/0805.2/3467.html http://uwsg.ucs.indiana.edu/hypermail/linux/kernel/0805.2/3060.html ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [patch][resend] provide rtc_cmos platform device, take 2 2008-05-28 23:36 ` Andrew Morton 2008-05-29 4:52 ` Stas Sergeev @ 2008-05-29 14:54 ` Bjorn Helgaas 2008-05-30 4:12 ` Stas Sergeev 2008-06-02 9:46 ` Ingo Molnar 2008-06-02 9:53 ` Russell King 2 siblings, 2 replies; 10+ messages in thread From: Bjorn Helgaas @ 2008-05-29 14:54 UTC (permalink / raw) To: Andrew Morton Cc: Stas Sergeev, ambx1, david-b, mingo, tglx, dbrownell, rmk+lkml, linux-kernel On Wednesday 28 May 2008 05:36:00 pm Andrew Morton wrote: > On Tue, 27 May 2008 15:23:06 +0400 > Stas Sergeev <stsp@aknet.ru> wrote: > > > RTC doesn't work with pnpacpi=off. > > The attached patch fixes the problem by creating the platform device for > > the RTC when PNP is disabled. This may also help running the PNP-enabled > > kernel on an older PCs. > > > > Signed-off-by: Stas Sergeev <stsp@aknet.ru> > > Cc: David Brownell <david-b@pacbell.net> > > Cc: Ingo Molnar <mingo@elte.hu> > > Cc: Thomas Gleixner <tglx@linutronix.de> > > Cc: Bjorn Helgaas <bjorn.helgaas@hp.com> > > Cc: Adam Belay <ambx1@neo.rr.com> > > CC: Russell King <rmk+lkml@arm.linux.org.uk> > > So is everyone happy with this now? > > It got lost from the changelog but IIRC this fixes a small sort-of regression > which was added in 2.6.25(?) because Stas switched drivers. I assume > that the incompatibility was unintentional. > > So it might be 2.6.26 material, and possibly even 2.6.25.x? I don't really have an opinion on the RTC patch itself, but I would like to understand why you're using "pnpacpi=off". As far as I'm concerned, "pnpacpi=off" should only be used to work around defects, so I'd like to fix the defect you're seeing with parport_pc. Is there a bug report for it? We recently fixed some PNPACPI problems that caused parport_pc problems, i.e., http://bugzilla.kernel.org/show_bug.cgi?id=5832 http://bugzilla.kernel.org/show_bug.cgi?id=9487 Andrew added these patches to his -mm tree, but I don't think he's released a patchset that contains them yet. I'll attach the patch in case you want to try it. Let me know what happens. Bjorn PNPACPI: use _CRS IRQ descriptor length for _SRS When configuring the resources of an ACPI device, we first evaluate _CRS to get a template of resource descriptors, then fill in the specific resource values we want, and finally evaluate _SRS to actually configure the device. Some resources have optional fields, so the size of encoded descriptors varies depending on the specific values. For example, IRQ descriptors can be either two or three bytes long. The third byte contains triggering information and can be omitted if the IRQ is edge-triggered and active high. The BIOS often assumes that IRQ descriptors in the _SRS buffer use the same format as those in the _CRS buffer, so this patch enforces that constraint. The "Start Dependent Function" descriptor also has an optional byte, but we don't currently encode those descriptors, so I didn't do anything for those. I have tested this patch on a Toshiba Portege 4000. Without the patch, parport_pc claims the parallel port only if I use "pnpacpi=off". This patch makes it work with PNPACPI. This is an extension of a patch by Tom Jaeger: http://bugzilla.kernel.org/show_bug.cgi?id=9487#c42 References: http://bugzilla.kernel.org/show_bug.cgi?id=5832 Enabling ACPI Plug and Play in kernels >2.6.9 kills Parallel support http://bugzilla.kernel.org/show_bug.cgi?id=9487 buggy firmware expects four-byte IRQ resource descriptor (was: Serial port disappears after Suspend on Toshiba R25) http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commitdiff;h=1d5b285da1893b90507b081664ac27f1a8a3dc5b related ACPICA fix Signed-off-by: Bjorn Helgaas <bjorn.helgaas@hp.com> Index: work11/drivers/pnp/pnpacpi/rsparser.c =================================================================== --- work11.orig/drivers/pnp/pnpacpi/rsparser.c 2008-05-22 13:41:52.000000000 -0600 +++ work11/drivers/pnp/pnpacpi/rsparser.c 2008-05-27 10:34:32.000000000 -0600 @@ -742,6 +742,9 @@ static acpi_status pnpacpi_type_resource if (pnpacpi_supported_resource(res)) { (*resource)->type = res->type; (*resource)->length = sizeof(struct acpi_resource); + if (res->type == ACPI_RESOURCE_TYPE_IRQ) + (*resource)->data.irq.descriptor_length = + res->data.irq.descriptor_length; (*resource)++; } @@ -800,10 +803,12 @@ static void pnpacpi_encode_irq(struct pn irq->interrupt_count = 1; irq->interrupts[0] = p->start; - dev_dbg(&dev->dev, " encode irq %d %s %s %s\n", (int) p->start, + dev_dbg(&dev->dev, " encode irq %d %s %s %s (%d-byte descriptor)\n", + (int) p->start, triggering == ACPI_LEVEL_SENSITIVE ? "level" : "edge", polarity == ACPI_ACTIVE_LOW ? "low" : "high", - irq->sharable == ACPI_SHARED ? "shared" : "exclusive"); + irq->sharable == ACPI_SHARED ? "shared" : "exclusive", + irq->descriptor_length); } static void pnpacpi_encode_ext_irq(struct pnp_dev *dev, ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [patch][resend] provide rtc_cmos platform device, take 2 2008-05-29 14:54 ` Bjorn Helgaas @ 2008-05-30 4:12 ` Stas Sergeev 2008-05-30 15:52 ` Bjorn Helgaas 2008-06-02 9:46 ` Ingo Molnar 1 sibling, 1 reply; 10+ messages in thread From: Stas Sergeev @ 2008-05-30 4:12 UTC (permalink / raw) To: Bjorn Helgaas Cc: Andrew Morton, ambx1, david-b, mingo, tglx, dbrownell, rmk+lkml, linux-kernel Hello. Bjorn Helgaas wrote: > As far as I'm concerned, "pnpacpi=off" should only be used to work > around defects, so I'd like to fix the defect you're seeing with > parport_pc. Is there a bug report for it? Certainly, and you've seen it many times. :) http://bugzilla.kernel.org/show_bug.cgi?id=7491 Its that the module parameters are overriden by PNP and are ignored, so you can't do "dma=none" etc. Your patch is not for that, AFAICS. Or let me know if it is. ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [patch][resend] provide rtc_cmos platform device, take 2 2008-05-30 4:12 ` Stas Sergeev @ 2008-05-30 15:52 ` Bjorn Helgaas 0 siblings, 0 replies; 10+ messages in thread From: Bjorn Helgaas @ 2008-05-30 15:52 UTC (permalink / raw) To: Stas Sergeev Cc: Andrew Morton, ambx1, david-b, mingo, tglx, dbrownell, rmk+lkml, linux-kernel On Thursday 29 May 2008 10:12:42 pm Stas Sergeev wrote: > Hello. > > Bjorn Helgaas wrote: > > As far as I'm concerned, "pnpacpi=off" should only be used to work > > around defects, so I'd like to fix the defect you're seeing with > > parport_pc. Is there a bug report for it? > Certainly, and you've seen it many > times. :) > http://bugzilla.kernel.org/show_bug.cgi?id=7491 > Its that the module parameters are overriden > by PNP and are ignored, so you can't do > "dma=none" etc. > Your patch is not for that, AFAICS. > Or let me know if it is. Oh, yeah, that one :-) No, my patch does nothing for that. I can't remember why it's so hard to fix that bug. Maybe now that we fixed the *other* reason for using "pnpacpi=off", I can take another look at it and make some progress. It doesn't *sound* like it should be hard to fix. Bjorn ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [patch][resend] provide rtc_cmos platform device, take 2 2008-05-29 14:54 ` Bjorn Helgaas 2008-05-30 4:12 ` Stas Sergeev @ 2008-06-02 9:46 ` Ingo Molnar 1 sibling, 0 replies; 10+ messages in thread From: Ingo Molnar @ 2008-06-02 9:46 UTC (permalink / raw) To: Bjorn Helgaas Cc: Andrew Morton, Stas Sergeev, ambx1, david-b, tglx, dbrownell, rmk+lkml, linux-kernel * Bjorn Helgaas <bjorn.helgaas@hp.com> wrote: > Andrew added these patches to his -mm tree, but I don't think he's > released a patchset that contains them yet. I'll attach the patch in > case you want to try it. Let me know what happens. added your patch to -tip for more testing, to the tip/out-of-tree topic branch. It already passed a fair amount of testing here. Ingo ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [patch][resend] provide rtc_cmos platform device, take 2 2008-05-28 23:36 ` Andrew Morton 2008-05-29 4:52 ` Stas Sergeev 2008-05-29 14:54 ` Bjorn Helgaas @ 2008-06-02 9:53 ` Russell King 2 siblings, 0 replies; 10+ messages in thread From: Russell King @ 2008-06-02 9:53 UTC (permalink / raw) To: Andrew Morton Cc: Stas Sergeev, ambx1, bjorn.helgaas, david-b, mingo, tglx, dbrownell, linux-kernel On Wed, May 28, 2008 at 04:36:00PM -0700, Andrew Morton wrote: > On Tue, 27 May 2008 15:23:06 +0400 > Stas Sergeev <stsp@aknet.ru> wrote: > > > RTC doesn't work with pnpacpi=off. > > The attached patch fixes the problem by creating the platform device for > > the RTC when PNP is disabled. This may also help running the PNP-enabled > > kernel on an older PCs. > > > > Signed-off-by: Stas Sergeev <stsp@aknet.ru> > > Cc: David Brownell <david-b@pacbell.net> > > Cc: Ingo Molnar <mingo@elte.hu> > > Cc: Thomas Gleixner <tglx@linutronix.de> > > Cc: Bjorn Helgaas <bjorn.helgaas@hp.com> > > Cc: Adam Belay <ambx1@neo.rr.com> > > CC: Russell King <rmk+lkml@arm.linux.org.uk> > > So is everyone happy with this now? No idea - I've been away for the last week, and thanks to the extensive discussions on linux-arch and the private threads, I've now got literally hundreds of emails to work through. Plus I'm rather tired today, thanks to power cuts setting off peoples burgular alarms during last night. And I'm probably not around much tomorrow nor Wednesday... You get the picture - probably about a week or so before I can even get around to thinking about testing this (or indeed much else.) -- Russell King Linux kernel 2.6 ARM Linux - http://www.arm.linux.org.uk/ maintainer of: ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [patch][resend] provide rtc_cmos platform device, take 2 2008-05-27 11:23 ` [patch][resend] " Stas Sergeev 2008-05-28 23:36 ` Andrew Morton @ 2008-05-29 6:27 ` David Brownell 1 sibling, 0 replies; 10+ messages in thread From: David Brownell @ 2008-05-29 6:27 UTC (permalink / raw) To: Stas Sergeev, akpm Cc: ambx1, bjorn.helgaas, mingo, tglx, Russell King, Linux kernel On Tuesday 27 May 2008, Stas Sergeev wrote: > --- a/arch/x86/kernel/rtc.c > +++ b/arch/x86/kernel/rtc.c > @@ -4,9 +4,12 @@ > #include <linux/acpi.h> > #include <linux/bcd.h> > #include <linux/mc146818rtc.h> > +#include <linux/platform_device.h> > +#include <linux/pnp.h> > > #include <asm/time.h> > #include <asm/vsyscall.h> > +#include <asm/mc146818rtc.h> The <asm/mc146818rtc.h> isn't needed, since it's automatically included via <linux/mc146818rtc.h> ... see right at the top. And for good fun, notice how the asm file includes the linux version ... seems like a cleanup would be nice someday. :) > --- a/drivers/rtc/rtc-cmos.c > +++ b/drivers/rtc/rtc-cmos.c > @@ -958,20 +946,33 @@ static struct platform_driver cmos_platform_driver = { > > static int __init cmos_init(void) > { > +#ifdef CONFIG_PNP > + if (pnp_platform_devices) > + return pnp_register_driver(&cmos_pnp_driver); > + else > + return platform_driver_probe(&cmos_platform_driver, > + cmos_platform_probe); > +#else > return platform_driver_probe(&cmos_platform_driver, > cmos_platform_probe); > +#endif /* CONFIG_PNP */ > } > module_init(cmos_init); That's kind of ugly, but not wrong. My only question is whether that resolves the problem Russell was reporting. I think his situation needed to register *both* types of bus glue (but I never saw his patch). If we're going to fix this, best merge just one patch... - Dave ^ permalink raw reply [flat|nested] 10+ messages in thread
end of thread, other threads:[~2008-06-02 9:55 UTC | newest]
Thread overview: 10+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <200805212334.m4LNY42M006425@imap1.linux-foundation.org>
2008-05-23 5:02 ` [patch] provide rtc_cmos platform device, take 2 Stas Sergeev
2008-05-27 11:23 ` [patch][resend] " Stas Sergeev
2008-05-28 23:36 ` Andrew Morton
2008-05-29 4:52 ` Stas Sergeev
2008-05-29 14:54 ` Bjorn Helgaas
2008-05-30 4:12 ` Stas Sergeev
2008-05-30 15:52 ` Bjorn Helgaas
2008-06-02 9:46 ` Ingo Molnar
2008-06-02 9:53 ` Russell King
2008-05-29 6:27 ` David Brownell
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox