RE: [Query] mwifiex: few observations to reduce number of endian conversions

From: Amitkumar Karwar
Date: Tue Jun 21 2016 - 06:18:30 EST


Hi Prasun,

> From: Prasun Maiti [mailto:prasunmaiti87@xxxxxxxxx]
> Sent: Friday, June 17, 2016 6:42 PM
> To: Amitkumar Karwar; Nishant Sarmukadam
> Cc: Linux Kernel; Linux Next; WiFi Mailing List; Johannes Berg
> Subject: [Query] mwifiex: few observations to reduce number of endian
> conversions
>
> Hi Amitkumar,
>
> I have two observations:
>
> 1. I have found that in the command response path for host command
> "HostCmd_CMD_802_11_EEPROM_ACCESS", a "0" value has been endian
> converted. It can only be a safe futuristic approach for any non-zero
> value there however! Otherwise, the endian conversion can be removed.
>
> 2. For multiple Host Commands (e.g HostCmd_CMD_802_11_EEPROM_ACCESS
> etc.) "cpu_to_leX"-converted values are saved to driver. So "leX_to_cpu"
> conversion is required too many times afterwards in driver.
> On the contrary, we can save the values to driver without any
> conversion, and only command buffer(s) are prepared with endian
> converted values. In this way we can gain some efficiency [code size /
> time] by reducing the number of endian conversion considerably.
>

I agree with your observations. We'll prepare a cleanup patch to address this.

Regards,
Amitkumar