2009-04-02 16:53:53

by Krzysztof Halasa

[permalink] [raw]
Subject: [PATCH] fix RTC-CMOS message

With no IRQ available/defined, RTC-CMOS driver prints something like:
rtc0: alarms up to one no, y3k, 114 bytes nvram
^^^^
I guess the following is a bit easier to understand:
rtc0: no alarms, y3k, 114 bytes nvram

--- a/drivers/rtc/rtc-cmos.c
+++ b/drivers/rtc/rtc-cmos.c
@@ -794,17 +794,15 @@ cmos_do_probe(struct device *dev, struct resource *ports, int rtc_irq)
goto cleanup2;
}

- pr_info("%s: alarms up to one %s%s, %zd bytes nvram%s\n",
- cmos_rtc.rtc->dev.bus_id,
- is_valid_irq(rtc_irq)
- ? (cmos_rtc.mon_alrm
- ? "year"
- : (cmos_rtc.day_alrm
- ? "month" : "day"))
- : "no",
- cmos_rtc.century ? ", y3k" : "",
- nvram.size,
- is_hpet_enabled() ? ", hpet irqs" : "");
+ pr_info("%s: %s%s, %zd bytes nvram%s\n",
+ cmos_rtc.rtc->dev.bus_id,
+ !is_valid_irq(rtc_irq) ? "no alarms" :
+ cmos_rtc.mon_alrm ? "alarms up to one year" :
+ cmos_rtc.day_alrm ? "alarms up to one month" :
+ "alarms up to one day",
+ cmos_rtc.century ? ", y3k" : "",
+ nvram.size,
+ is_hpet_enabled() ? ", hpet irqs" : "");

return 0;

--
Krzysztof Halasa


2009-04-02 16:57:42

by Krzysztof Halasa

[permalink] [raw]
Subject: Re: [PATCH] fix RTC-CMOS message, now with SOB

With no IRQ available/defined, RTC-CMOS driver prints something like:
rtc0: alarms up to one no, y3k, 114 bytes nvram
^^^^
I guess the following is a bit easier to understand:
rtc0: no alarms, y3k, 114 bytes nvram

Signed-off-by: Krzysztof Ha?asa <[email protected]>

--- a/drivers/rtc/rtc-cmos.c
+++ b/drivers/rtc/rtc-cmos.c
@@ -794,17 +794,15 @@ cmos_do_probe(struct device *dev, struct resource *ports, int rtc_irq)
goto cleanup2;
}

- pr_info("%s: alarms up to one %s%s, %zd bytes nvram%s\n",
- cmos_rtc.rtc->dev.bus_id,
- is_valid_irq(rtc_irq)
- ? (cmos_rtc.mon_alrm
- ? "year"
- : (cmos_rtc.day_alrm
- ? "month" : "day"))
- : "no",
- cmos_rtc.century ? ", y3k" : "",
- nvram.size,
- is_hpet_enabled() ? ", hpet irqs" : "");
+ pr_info("%s: %s%s, %zd bytes nvram%s\n",
+ cmos_rtc.rtc->dev.bus_id,
+ !is_valid_irq(rtc_irq) ? "no alarms" :
+ cmos_rtc.mon_alrm ? "alarms up to one year" :
+ cmos_rtc.day_alrm ? "alarms up to one month" :
+ "alarms up to one day",
+ cmos_rtc.century ? ", y3k" : "",
+ nvram.size,
+ is_hpet_enabled() ? ", hpet irqs" : "");

return 0;

--
Krzysztof Halasa

2009-04-04 18:02:21

by David Brownell

[permalink] [raw]
Subject: Re: [PATCH] fix RTC-CMOS message, now with SOB

On Thursday 02 April 2009, Krzysztof Halasa wrote:
> +???????????????!is_valid_irq(rtc_irq) ? "no alarms" :
> +???????????????cmos_rtc.mon_alrm ? "alarms up to one year" :
> +???????????????cmos_rtc.day_alrm ? "alarms up to one month" :
> +???????????????"alarms up to one day",

Could you reformat that so it looks more like the compound-IF
statement it really is? That is, display the nesting structure.
And not use negative logic for that first test.

2009-04-04 19:32:42

by Krzysztof Halasa

[permalink] [raw]
Subject: Re: [PATCH] fix RTC-CMOS message, now with SOB

David Brownell <[email protected]> writes:

>> +???????????????!is_valid_irq(rtc_irq) ? "no alarms" :
>> +???????????????cmos_rtc.mon_alrm ? "alarms up to one year" :
>> +???????????????cmos_rtc.day_alrm ? "alarms up to one month" :
>> +???????????????"alarms up to one day",
>
> Could you reformat that so it looks more like the compound-IF
> statement it really is? That is, display the nesting structure.

You mean something like

>> +???????????????!is_valid_irq(rtc_irq) ? "no alarms" :
>> +??????????????? cmos_rtc.mon_alrm ? "alarms up to one year" :
>> +??????????????? cmos_rtc.day_alrm ? "alarms up to one month" :
>> +??????????????? "alarms up to one day",

Not this certainly?

>> +???????????????!is_valid_irq(rtc_irq) ? "no alarms" :
>> +??????????????? cmos_rtc.mon_alrm ? "alarms up to one year" :
>> +??????????????? cmos_rtc.day_alrm ? "alarms up to one month" :
>> +??????????????? "alarms up to one day",

> And not use negative logic for that first test.

I think it's worse WRT readability:

+ is_valid_irq(rtc_irq) ?
+ (cmos_rtc.mon_alrm ? "alarms up to one year" :
+ cmos_rtc.day_alrm ? "alarms up to one month" :
+ "alarms up to one day") :
+ "no alarms";

Feel free to use the following or your own version as long as the
resulting message is correct.
Thanks.

Signed-off-by: Krzysztof Ha?asa <[email protected]>

--- a/drivers/rtc/rtc-cmos.c
+++ b/drivers/rtc/rtc-cmos.c
@@ -794,17 +794,15 @@ cmos_do_probe(struct device *dev, struct resource *ports, int rtc_irq)
goto cleanup2;
}

- pr_info("%s: alarms up to one %s%s, %zd bytes nvram%s\n",
- cmos_rtc.rtc->dev.bus_id,
- is_valid_irq(rtc_irq)
- ? (cmos_rtc.mon_alrm
- ? "year"
- : (cmos_rtc.day_alrm
- ? "month" : "day"))
- : "no",
- cmos_rtc.century ? ", y3k" : "",
- nvram.size,
- is_hpet_enabled() ? ", hpet irqs" : "");
+ pr_info("%s: %s%s, %zd bytes nvram%s\n",
+ cmos_rtc.rtc->dev.bus_id,
+ !is_valid_irq(rtc_irq) ? "no alarms" :
+ cmos_rtc.mon_alrm ? "alarms up to one year" :
+ cmos_rtc.day_alrm ? "alarms up to one month" :
+ "alarms up to one day",
+ cmos_rtc.century ? ", y3k" : "",
+ nvram.size,
+ is_hpet_enabled() ? ", hpet irqs" : "");

return 0;

--
Krzysztof Halasa

2009-04-09 20:18:53

by Andrew Morton

[permalink] [raw]
Subject: Re: [PATCH] fix RTC-CMOS message, now with SOB

On Sat, 04 Apr 2009 21:32:27 +0200
Krzysztof Halasa <[email protected]> wrote:

> + (cmos_rtc.mon_alrm ? "alarms up to one year" :
> + cmos_rtc.day_alrm ? "alarms up to one month" :
> + "alarms up to one day") :
> + "no alarms";
>
> Feel free to use the following or your own version as long as the
> resulting message is correct.
> Thanks.
>
> Signed-off-by: Krzysztof Ha__asa <[email protected]>

Please resend the full changelog (possibly with updates) with each
updated version of a patch.

> --- a/drivers/rtc/rtc-cmos.c
> +++ b/drivers/rtc/rtc-cmos.c
> @@ -794,17 +794,15 @@ cmos_do_probe(struct device *dev, struct resource *ports, int rtc_irq)
> goto cleanup2;
> }
>
> - pr_info("%s: alarms up to one %s%s, %zd bytes nvram%s\n",
> - cmos_rtc.rtc->dev.bus_id,
> - is_valid_irq(rtc_irq)
> - ? (cmos_rtc.mon_alrm
> - ? "year"
> - : (cmos_rtc.day_alrm
> - ? "month" : "day"))
> - : "no",
> - cmos_rtc.century ? ", y3k" : "",
> - nvram.size,
> - is_hpet_enabled() ? ", hpet irqs" : "");
> + pr_info("%s: %s%s, %zd bytes nvram%s\n",
> + cmos_rtc.rtc->dev.bus_id,
> + !is_valid_irq(rtc_irq) ? "no alarms" :
> + cmos_rtc.mon_alrm ? "alarms up to one year" :
> + cmos_rtc.day_alrm ? "alarms up to one month" :
> + "alarms up to one day",
> + cmos_rtc.century ? ", y3k" : "",
> + nvram.size,
> + is_hpet_enabled() ? ", hpet irqs" : "");
>
> return 0;

The patch doesn't apply to current kernels (the driver core guys have
been running rampant again, methinks). Please redo, retest, resend?

Thanks.

2009-04-14 21:53:30

by Krzysztof Halasa

[permalink] [raw]
Subject: Re: [PATCH] fix RTC-CMOS message, now with SOB

Andrew Morton <[email protected]> writes:

> The patch doesn't apply to current kernels (the driver core guys have
> been running rampant again, methinks). Please redo, retest, resend?

Sure, will do.
--
Krzysztof Halasa

2009-04-15 13:31:45

by Krzysztof Halasa

[permalink] [raw]
Subject: Re: [PATCH] fix RTC-CMOS message, against 2.6.30-rc2

With no IRQ available/defined, RTC-CMOS driver prints something like:
rtc0: alarms up to one no, y3k, 114 bytes nvram
^^^^
I guess the following is a bit easier to understand:
rtc0: no alarms, y3k, 114 bytes nvram

Signed-off-by: Krzysztof Ha?asa <[email protected]>

diff --git a/drivers/rtc/rtc-cmos.c b/drivers/rtc/rtc-cmos.c
index b6d35f5..23e10b6 100644
--- a/drivers/rtc/rtc-cmos.c
+++ b/drivers/rtc/rtc-cmos.c
@@ -797,17 +797,15 @@ cmos_do_probe(struct device *dev, struct resource *ports, int rtc_irq)
goto cleanup2;
}

- pr_info("%s: alarms up to one %s%s, %zd bytes nvram%s\n",
- dev_name(&cmos_rtc.rtc->dev),
- is_valid_irq(rtc_irq)
- ? (cmos_rtc.mon_alrm
- ? "year"
- : (cmos_rtc.day_alrm
- ? "month" : "day"))
- : "no",
- cmos_rtc.century ? ", y3k" : "",
- nvram.size,
- is_hpet_enabled() ? ", hpet irqs" : "");
+ pr_info("%s: %s%s, %zd bytes nvram%s\n",
+ dev_name(&cmos_rtc.rtc->dev),
+ !is_valid_irq(rtc_irq) ? "no alarms" :
+ cmos_rtc.mon_alrm ? "alarms up to one year" :
+ cmos_rtc.day_alrm ? "alarms up to one month" :
+ "alarms up to one day",
+ cmos_rtc.century ? ", y3k" : "",
+ nvram.size,
+ is_hpet_enabled() ? ", hpet irqs" : "");

return 0;


--
Krzysztof Halasa