Re: [Outreachy kernel] [PATCH 2/7] staging: vt6655: Use incrementation in `idx`

Praveen Kumar
2021-10-29T15:41:31Z

On 29-10-2021 20:26, Praveen Kumar wrote:
> On 28-10-2021 16:05, Karolina Drobnik wrote:
>> Increment `idx` in a loop instead of adding the loop counter
>> `i` to do so. Thanks to this change, the cast to unsigned short
>> can be removed.
>
>>
>> Signed-off-by: Karolina Drobnik <karolinadrobnik@gmail.com>
>> ---
>> drivers/staging/vt6655/rf.c | 16 ++++++++--------
>> 1 file changed, 8 insertions(+), 8 deletions(-)
>>
>> diff --git a/drivers/staging/vt6655/rf.c b/drivers/staging/vt6655/rf.c
>> index f195dafb6e63..c07653566d17 100644
>> --- a/drivers/staging/vt6655/rf.c
>> +++ b/drivers/staging/vt6655/rf.c
>> @@ -700,11 +700,11 @@ bool RFvWriteWakeProgSyn(struct vnt_private *priv, unsigned char rf_type,
>> return false;
>>
>> for (i = 0; i < CB_AL2230_INIT_SEQ; i++)
>> - MACvSetMISCFifo(priv, (unsigned short)(idx + i), al2230_init_table[i]);
>> + MACvSetMISCFifo(priv, idx++, al2230_init_table[i]);
>>
>> - MACvSetMISCFifo(priv, (unsigned short)(idx + i), al2230_channel_table0[channel - 1]);
>> + MACvSetMISCFifo(priv, idx++, al2230_channel_table0[channel - 1]);
>> i++;
>> - MACvSetMISCFifo(priv, (unsigned short)(idx + i), al2230_channel_table1[channel - 1]);
>> + MACvSetMISCFifo(priv, idx++, al2230_channel_table1[channel - 1]);
>> break;
>>
>> /* Need to check, PLLON need to be low for channel setting */
>> @@ -717,17 +717,17 @@ bool RFvWriteWakeProgSyn(struct vnt_private *priv, unsigned char rf_type,
>>
>> if (channel <= CB_MAX_CHANNEL_24G) {
>> for (i = 0; i < CB_AL7230_INIT_SEQ; i++)
>> - MACvSetMISCFifo(priv, (unsigned short)(idx + i), al7230_init_table[i]);
>> + MACvSetMISCFifo(priv, idx++, al7230_init_table[i]);
>
> If I'm not wrong, there is a problem here, we are using the modified idx value here, instead of original which is *MISCFIFO_SYNDATA_IDX*.
> I don't see idx value being reset either. Am I missing something ?
>

Looks like I missed, the case statement, thus, idx will be intact. Please ignore my previous comment.

However, as mentioned in previous patch, we can also make *i* as unsigned short and that should IMO remove the requirement of cast.
But again, this works as well. I'm fine with either. Thanks and sorry for the confusion.

> Further, this bring a question, how are you validating or planning to validate these changes ?
>
>> } else {
>> for (i = 0; i < CB_AL7230_INIT_SEQ; i++)
>> - MACvSetMISCFifo(priv, (unsigned short)(idx + i), al7230_init_table_a_mode[i]);
>> + MACvSetMISCFifo(priv, idx++, al7230_init_table_a_mode[i]);
>> }
>>
>> - MACvSetMISCFifo(priv, (unsigned short)(idx + i), al7230_channel_table0[channel - 1]);
>> + MACvSetMISCFifo(priv, idx++, al7230_channel_table0[channel - 1]);
>> i++;
>> - MACvSetMISCFifo(priv, (unsigned short)(idx + i), al7230_channel_table1[channel - 1]);
>> + MACvSetMISCFifo(priv, idx++, al7230_channel_table1[channel - 1]);
>> i++;
>> - MACvSetMISCFifo(priv, (unsigned short)(idx + i), al7230_channel_table2[channel - 1]);
>> + MACvSetMISCFifo(priv, idx++, al7230_channel_table2[channel - 1]);
>> break;
>>
>> case RF_NOTHING:
>>

Regards,

~Praveen.