RFC - unclear change in "[media] DiBxxxx: Codingstype updates"
From: Nicholas Mc Guire
Date: Sat Oct 08 2016 - 10:05:12 EST
Hi Olivier !
in your commit 28fafca78797b ("[media] DiB0090: misc improvements")
with commit message:
This patch adds several performance improvements and prepares the
usage of firmware-based devices.
it seems you changed the logic of an if/else in dib0090_tune() in a way
that I do not understand:
- lo6 |= (1 << 2) | 2;
- else
- lo6 |= (1 << 2) | 1;
+ lo6 |= (1 << 2) | 2; //SigmaDelta and Dither
+ else {
+ if (state->identity.in_soc)
+ lo6 |= (1 << 2) | 2; //SigmaDelta and Dither
+ else
+ lo6 |= (1 << 2) | 2; //SigmaDelta and Dither
+ }
resulting in the current code-base of:
if (Rest > 0) {
if (state->config->analog_output)
lo6 |= (1 << 2) | 2;
else {
if (state->identity.in_soc)
lo6 |= (1 << 2) | 2;
else
lo6 |= (1 << 2) | 2;
}
Den = 255;
}
The problem now is that the if and the else(if/else) are
all the same and thus the conditions have no effect. Further
the origninal code actually had different if/else - so I
wonder if this is a cut&past bug here ?
With no knowlege of the device providing a patch makes
no sense as it would just be guessing - in any case this looks
wrong (or atleast should have a comment if it actually is correct)
What am I missing ?
thx!
hofrat