Commit 921edf31 authored by Arnd Bergmann's avatar Arnd Bergmann Committed by David S. Miller

ide: avoid warning for timings calculation

gcc-7 warns about the result of a constant multiplication used as
a boolean:

drivers/ide/ide-timings.c: In function 'ide_timing_quantize':
drivers/ide/ide-timings.c:112:24: error: '*' in boolean context, suggest '&&' instead [-Werror=int-in-bool-context]
  q->setup   = EZ(t->setup   * 1000,  T);

This slightly rearranges the macro to simplify the code and avoid
the warning at the same time.
Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 96080f69
...@@ -104,19 +104,19 @@ u16 ide_pio_cycle_time(ide_drive_t *drive, u8 pio) ...@@ -104,19 +104,19 @@ u16 ide_pio_cycle_time(ide_drive_t *drive, u8 pio)
EXPORT_SYMBOL_GPL(ide_pio_cycle_time); EXPORT_SYMBOL_GPL(ide_pio_cycle_time);
#define ENOUGH(v, unit) (((v) - 1) / (unit) + 1) #define ENOUGH(v, unit) (((v) - 1) / (unit) + 1)
#define EZ(v, unit) ((v) ? ENOUGH(v, unit) : 0) #define EZ(v, unit) ((v) ? ENOUGH((v) * 1000, unit) : 0)
static void ide_timing_quantize(struct ide_timing *t, struct ide_timing *q, static void ide_timing_quantize(struct ide_timing *t, struct ide_timing *q,
int T, int UT) int T, int UT)
{ {
q->setup = EZ(t->setup * 1000, T); q->setup = EZ(t->setup, T);
q->act8b = EZ(t->act8b * 1000, T); q->act8b = EZ(t->act8b, T);
q->rec8b = EZ(t->rec8b * 1000, T); q->rec8b = EZ(t->rec8b, T);
q->cyc8b = EZ(t->cyc8b * 1000, T); q->cyc8b = EZ(t->cyc8b, T);
q->active = EZ(t->active * 1000, T); q->active = EZ(t->active, T);
q->recover = EZ(t->recover * 1000, T); q->recover = EZ(t->recover, T);
q->cycle = EZ(t->cycle * 1000, T); q->cycle = EZ(t->cycle, T);
q->udma = EZ(t->udma * 1000, UT); q->udma = EZ(t->udma, UT);
} }
void ide_timing_merge(struct ide_timing *a, struct ide_timing *b, void ide_timing_merge(struct ide_timing *a, struct ide_timing *b,
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment