On 10/04/2020 12:28, Oscar Carter wrote:
Create a constant array with the values of the "phy->signal" for every
rate. Remove all "phy->signal" assignments inside the switch statement
and replace these with a single reading from the new vnt_phy_signal
array.

Signed-off-by: Oscar Carter <oscar.car...@gmx.com>
---
  drivers/staging/vt6656/baseband.c | 101 +++++++-----------------------
  1 file changed, 21 insertions(+), 80 deletions(-)

diff --git a/drivers/staging/vt6656/baseband.c 
b/drivers/staging/vt6656/baseband.c
index a19a563d8bcc..47f93bf6e07b 100644
--- a/drivers/staging/vt6656/baseband.c
+++ b/drivers/staging/vt6656/baseband.c
@@ -115,6 +115,21 @@ static const u16 vnt_frame_time[MAX_RATE] = {
        10, 20, 55, 110, 24, 36, 48, 72, 96, 144, 192, 216
  };

Actually you don't need the second values

+static const u8 vnt_phy_signal[][2] = {
+       {0x00, 0x00},   /* RATE_1M  */
The driver would never attempt use preamble at this rate
so it's safe to include in with the next 3 rates

+       {0x01, 0x09},   /* RATE_2M  */
+       {0x02, 0x0a},   /* RATE_5M  */
+       {0x03, 0x0b},   /* RATE_11M */
just |= BIT(3) for preamble.

+       {0x8b, 0x9b},   /* RATE_6M  */
+       {0x8f, 0x9f},   /* RATE_9M  */
+       {0x8a, 0x9a},   /* RATE_12M */
+       {0x8e, 0x9e},   /* RATE_18M */
+       {0x89, 0x99},   /* RATE_24M */
+       {0x8d, 0x9d},   /* RATE_36M */
+       {0x88, 0x98},   /* RATE_48M */
+       {0x8c, 0x9c}    /* RATE_54M */

Again just |= BIT(4) for PK_TYPE_11A

Regards

Malcolm
_______________________________________________
devel mailing list
de...@linuxdriverproject.org
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel

Reply via email to