Re: [PATCH v2 1/2] si2168: Add spectrum inversion property

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 2018-01-17 20:36, Antti Palosaari wrote:
> On 01/18/2018 03:58 AM, Brad Love wrote:
>>
>> On 2018-01-17 16:08, Brad Love wrote:
>>> On 2018-01-17 16:02, Antti Palosaari wrote:
>>>>
>>>> On 01/17/2018 11:52 PM, Brad Love wrote:
>>>>> Some tuners produce inverted spectrum, but the si2168 is not
>>>>> currently set up to accept it. This adds an optional parameter
>>>>> to set the frontend up to receive inverted spectrum.
>>>>>
>>>>> Parameter is optional and only boards who enable inversion
>>>>> will utilize this.
>>>>>
>>>>> Signed-off-by: Brad Love <brad@xxxxxxxxxxxxxxxx>
>>>>> ---
>>>>> Changes since v1:
>>>>> - Embarassing build failure due to missing declaration.
>>>>>
>>>>>    drivers/media/dvb-frontends/si2168.c | 3 +++
>>>>>    drivers/media/dvb-frontends/si2168.h | 3 +++
>>>>>    2 files changed, 6 insertions(+)
>>>>>
>>>>> diff --git a/drivers/media/dvb-frontends/si2168.c
>>>>> b/drivers/media/dvb-frontends/si2168.c
>>>>> index c041e79..048b815 100644
>>>>> --- a/drivers/media/dvb-frontends/si2168.c
>>>>> +++ b/drivers/media/dvb-frontends/si2168.c
>>>>> @@ -213,6 +213,7 @@ static int si2168_set_frontend(struct
>>>>> dvb_frontend *fe)
>>>>>        struct i2c_client *client = fe->demodulator_priv;
>>>>>        struct si2168_dev *dev = i2c_get_clientdata(client);
>>>>>        struct dtv_frontend_properties *c = &fe->dtv_property_cache;
>>>>> +    struct si2168_config *config = client->dev.platform_data;
>>>> hmmm, are you sure platform data pointer points is const? I usually
>>>> tend to store all config information to device state. Then there is no
>>>> need to care if pointer is valid or not anymore.
>>>>
>>>> And inversion happens when those wires are cross-connected
>>> It just dawned on me that the platform_data is stack allocated and
>>> therefore not safe to access outside of probe. I will fix this
>>> momentarily.
>>>
>>> I was informed by one of our hardware guys that the two models in patch
>>> 2/2 are inverted spectrum, so I guess they have wires
>>> cross-connected. I
>>> can verify this again to be sure.
>>
>>
>> Hello Antti,
>>
>> I have confirmation. No 'cross-connected' / swapped differential pair
>> polarities (if that's what you meant) on the IF pins. The si2157
>> inverted spectrum output is configurable though, and Hauppauge
>> have the tuner set up to output inverted. Sounds like it was a decision
>> based on interoperability with older demods.
>
> yeah, that was what I was thinking for. That board single tuner and
> two demods which other demod does not support if spectrum inversion?
>
> If there is just si2168 and si2157, you can set both to invert or both
> to non-invert - the end result is same.
>
> Antti


I will check on the HVR975 tomorrow, if it's affected as well I'll
submit a patch. The lgdt3306a frontend is already set up for auto
spectrum inversion, so it is able handle the si2157 in either config.







[Index of Archives]     [Linux Input]     [Video for Linux]     [Gstreamer Embedded]     [Mplayer Users]     [Linux USB Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]
  Powered by Linux