[PATCH 5/9] staging: sm750fb: Remove typedef from "typedef enum _logical_chip_type_t"

2017-05-13 Thread Matej Dujava
This patch removes typedefs from enum and renames it from "typedef enum
_logical_chip_type_t" to "enum logical_chip_type" as per kernel coding
standards.

Signed-off-by: Matej Dujava 
---
 drivers/staging/sm750fb/ddk750_chip.c | 4 ++--
 drivers/staging/sm750fb/ddk750_chip.h | 8 
 2 files changed, 6 insertions(+), 6 deletions(-)

diff --git a/drivers/staging/sm750fb/ddk750_chip.c 
b/drivers/staging/sm750fb/ddk750_chip.c
index 944dd25..1d62c2d 100644
--- a/drivers/staging/sm750fb/ddk750_chip.c
+++ b/drivers/staging/sm750fb/ddk750_chip.c
@@ -7,9 +7,9 @@
 
 #define MHz(x) ((x) * 100)
 
-static logical_chip_type_t chip;
+static enum logical_chip_type chip;
 
-logical_chip_type_t sm750_get_chip_type(void)
+enum logical_chip_type sm750_get_chip_type(void)
 {
return chip;
 }
diff --git a/drivers/staging/sm750fb/ddk750_chip.h 
b/drivers/staging/sm750fb/ddk750_chip.h
index 2c7a9b9..f2eee2b 100644
--- a/drivers/staging/sm750fb/ddk750_chip.h
+++ b/drivers/staging/sm750fb/ddk750_chip.h
@@ -23,13 +23,13 @@ static inline void poke32(u32 data, u32 addr)
 }
 
 /* This is all the chips recognized by this library */
-typedef enum _logical_chip_type_t {
+enum logical_chip_type {
SM_UNKNOWN,
SM718,
SM750,
SM750LE,
-}
-logical_chip_type_t;
+};
+
 
 typedef enum _clock_type_t {
MXCLK_PLL,
@@ -93,7 +93,7 @@ struct initchip_param {
/* More initialization parameter can be added if needed */
 };
 
-logical_chip_type_t sm750_get_chip_type(void);
+enum logical_chip_type sm750_get_chip_type(void);
 void sm750_set_chip_type(unsigned short devId, u8 revId);
 unsigned int sm750_calc_pll_value(unsigned int request, struct  pll_value 
*pll);
 unsigned int sm750_format_pll_reg(struct pll_value *pPLL);
-- 
1.8.3.1



[PATCH 8/9] staging: sm750fb: Remove typedef from "typedef enum _DPMS_t"

2017-05-13 Thread Matej Dujava
This patch removes typedefs from enum and renames it from
"typedef enum _DPMS_t" to "enum DPMS" as per kernel coding standards.

Signed-off-by: Matej Dujava 
---
 drivers/staging/sm750fb/ddk750_power.c | 2 +-
 drivers/staging/sm750fb/ddk750_power.h | 7 +++
 2 files changed, 4 insertions(+), 5 deletions(-)

diff --git a/drivers/staging/sm750fb/ddk750_power.c 
b/drivers/staging/sm750fb/ddk750_power.c
index 222ae1a..bc91e73 100644
--- a/drivers/staging/sm750fb/ddk750_power.c
+++ b/drivers/staging/sm750fb/ddk750_power.c
@@ -2,7 +2,7 @@
 #include "ddk750_reg.h"
 #include "ddk750_power.h"
 
-void ddk750_set_dpms(DPMS_t state)
+void ddk750_set_dpms(enum DPMS state)
 {
unsigned int value;
 
diff --git a/drivers/staging/sm750fb/ddk750_power.h 
b/drivers/staging/sm750fb/ddk750_power.h
index 44c4fc5..6764e53 100644
--- a/drivers/staging/sm750fb/ddk750_power.h
+++ b/drivers/staging/sm750fb/ddk750_power.h
@@ -1,20 +1,19 @@
 #ifndef DDK750_POWER_H__
 #define DDK750_POWER_H__
 
-typedef enum _DPMS_t {
+enum DPMS {
crtDPMS_ON = 0x0,
crtDPMS_STANDBY = 0x1,
crtDPMS_SUSPEND = 0x2,
crtDPMS_OFF = 0x3,
-}
-DPMS_t;
+};
 
 #define setDAC(off) {  \
poke32(MISC_CTRL,   \
   (peek32(MISC_CTRL) & ~MISC_CTRL_DAC_POWER_OFF) | (off)); \
 }
 
-void ddk750_set_dpms(DPMS_t state);
+void ddk750_set_dpms(enum DPMS state);
 void sm750_set_power_mode(unsigned int powerMode);
 void sm750_set_current_gate(unsigned int gate);
 
-- 
1.8.3.1



[PATCH 7/9] staging: sm750fb: Remove typedef from "typedef enum _disp_output_t"

2017-05-13 Thread Matej Dujava
This patch removes typedefs from enum and renames it from "typedef enum
_disp_output_t" to "enum disp_output" as per kernel coding standards.

Signed-off-by: Matej Dujava 
---
 drivers/staging/sm750fb/ddk750_display.c | 2 +-
 drivers/staging/sm750fb/ddk750_display.h | 8 
 drivers/staging/sm750fb/sm750_hw.c   | 2 +-
 3 files changed, 6 insertions(+), 6 deletions(-)

diff --git a/drivers/staging/sm750fb/ddk750_display.c 
b/drivers/staging/sm750fb/ddk750_display.c
index 9b116ed6..13b91c3 100644
--- a/drivers/staging/sm750fb/ddk750_display.c
+++ b/drivers/staging/sm750fb/ddk750_display.c
@@ -110,7 +110,7 @@ static void swPanelPowerSequence(int disp, int delay)
primary_wait_vertical_sync(delay);
 }
 
-void ddk750_setLogicalDispOut(disp_output_t output)
+void ddk750_setLogicalDispOut(enum disp_output output)
 {
unsigned int reg;
 
diff --git a/drivers/staging/sm750fb/ddk750_display.h 
b/drivers/staging/sm750fb/ddk750_display.h
index f9e1614..8b0830f 100644
--- a/drivers/staging/sm750fb/ddk750_display.h
+++ b/drivers/staging/sm750fb/ddk750_display.h
@@ -88,7 +88,7 @@
  * LCD1 means panel path TFT1  & panel path DVI (so enable DAC)
  * CRT means crt path DSUB
  */
-typedef enum _disp_output_t {
+enum disp_output {
do_LCD1_PRI = PNL_2_PRI | PRI_TP_ON | PNL_SEQ_ON | DAC_ON,
do_LCD1_SEC = PNL_2_SEC | SEC_TP_ON | PNL_SEQ_ON | DAC_ON,
do_LCD2_PRI = CRT_2_PRI | PRI_TP_ON | DUAL_TFT_ON,
@@ -99,9 +99,9 @@
 */
do_CRT_PRI = CRT_2_PRI | PRI_TP_ON | DPMS_ON | DAC_ON,
do_CRT_SEC = CRT_2_SEC | SEC_TP_ON | DPMS_ON | DAC_ON,
-}
-disp_output_t;
+};
 
-void ddk750_setLogicalDispOut(disp_output_t output);
+
+void ddk750_setLogicalDispOut(enum disp_output output);
 
 #endif
diff --git a/drivers/staging/sm750fb/sm750_hw.c 
b/drivers/staging/sm750fb/sm750_hw.c
index 3cdc4ae..f7d1e67 100644
--- a/drivers/staging/sm750fb/sm750_hw.c
+++ b/drivers/staging/sm750fb/sm750_hw.c
@@ -184,7 +184,7 @@ int hw_sm750_output_setMode(struct lynxfb_output *output,
struct fb_fix_screeninfo *fix)
 {
int ret;
-   disp_output_t dispSet;
+   enum disp_output dispSet;
int channel;
 
ret = 0;
-- 
1.8.3.1



[PATCH 9/9] staging: sm750fb: Remove typedef from "typedef enum _sii164_hot_plug_mode_t"

2017-05-13 Thread Matej Dujava
This patch removes typedefs from enum and renames it from "typedef enum
_sii164_hot_plug_mode_t" to "enum sii164_hot_plug_mode" as per kernel
coding standards.

Signed-off-by: Matej Dujava 
---
 drivers/staging/sm750fb/ddk750_sii164.c | 2 +-
 drivers/staging/sm750fb/ddk750_sii164.h | 4 ++--
 2 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/drivers/staging/sm750fb/ddk750_sii164.c 
b/drivers/staging/sm750fb/ddk750_sii164.c
index 0431833..f7bf84e8 100644
--- a/drivers/staging/sm750fb/ddk750_sii164.c
+++ b/drivers/staging/sm750fb/ddk750_sii164.c
@@ -296,7 +296,7 @@ void sii164SetPower(unsigned char powerUp)
  *  sii164SelectHotPlugDetectionMode
  *  This function selects the mode of the hot plug detection.
  */
-static void sii164SelectHotPlugDetectionMode(sii164_hot_plug_mode_t 
hotPlugMode)
+static void sii164SelectHotPlugDetectionMode(enum sii164_hot_plug_mode 
hotPlugMode)
 {
unsigned char detectReg;
 
diff --git a/drivers/staging/sm750fb/ddk750_sii164.h 
b/drivers/staging/sm750fb/ddk750_sii164.h
index 6968cf5..e06ba72 100644
--- a/drivers/staging/sm750fb/ddk750_sii164.h
+++ b/drivers/staging/sm750fb/ddk750_sii164.h
@@ -4,12 +4,12 @@
 #define USE_DVICHIP
 
 /* Hot Plug detection mode structure */
-typedef enum _sii164_hot_plug_mode_t {
+enum sii164_hot_plug_mode {
SII164_HOTPLUG_DISABLE = 0, /* Disable Hot Plug output bit 
(always high). */
SII164_HOTPLUG_USE_MDI, /* Use Monitor Detect Interrupt 
bit. */
SII164_HOTPLUG_USE_RSEN,/* Use Receiver Sense detect bit. */
SII164_HOTPLUG_USE_HTPLG/* Use Hot Plug detect bit. */
-} sii164_hot_plug_mode_t;
+};
 
 
 /* Silicon Image SiI164 chip prototype */
-- 
1.8.3.1



[PATCH 0/9] staging: sm750fb: cleaning code

2017-05-13 Thread Matej Dujava
Folowing patches are cleaning some warnings and checkups from checkpatch.pl

Matej Dujava (9):
  staging: sm750fb: fix length of lines
  staging: sm750fb: unifying macro definitions
  staging: sm750fb: reordering of macro definitions
  staging: sm750fb: removing unnecessary binary operations
  staging: sm750fb: Remove typedef from "typedef enum
_logical_chip_type_t"
  staging: sm750fb: Remove typedef from "typedef enum _clock_type_t"
  staging: sm750fb: Remove typedef from "typedef enum _disp_output_t"
  staging: sm750fb: Remove typedef from "typedef enum _DPMS_t"
  staging: sm750fb: Remove typedef from "typedef enum
_sii164_hot_plug_mode_t"

 drivers/staging/sm750fb/ddk750_chip.c| 11 ++--
 drivers/staging/sm750fb/ddk750_chip.h| 16 +++---
 drivers/staging/sm750fb/ddk750_display.c |  2 +-
 drivers/staging/sm750fb/ddk750_display.h | 86 
 drivers/staging/sm750fb/ddk750_dvi.c | 35 +++--
 drivers/staging/sm750fb/ddk750_dvi.h | 43 
 drivers/staging/sm750fb/ddk750_hwi2c.c   | 37 +-
 drivers/staging/sm750fb/ddk750_mode.c|  2 +-
 drivers/staging/sm750fb/ddk750_mode.h|  2 +-
 drivers/staging/sm750fb/ddk750_power.c   |  2 +-
 drivers/staging/sm750fb/ddk750_power.h   |  7 ++-
 drivers/staging/sm750fb/ddk750_sii164.c  | 49 --
 drivers/staging/sm750fb/ddk750_sii164.h  | 26 +-
 drivers/staging/sm750fb/ddk750_swi2c.c   | 21 +++-
 drivers/staging/sm750fb/ddk750_swi2c.h   | 18 ++-
 drivers/staging/sm750fb/sm750.c  | 26 +-
 drivers/staging/sm750fb/sm750.h  |  6 +--
 drivers/staging/sm750fb/sm750_accel.c| 15 +++---
 drivers/staging/sm750fb/sm750_cursor.c   | 17 +++
 drivers/staging/sm750fb/sm750_hw.c   |  4 +-
 20 files changed, 194 insertions(+), 231 deletions(-)

-- 
1.8.3.1



[PATCH 4/9] staging: sm750fb: removing unnecessary binary operations

2017-05-13 Thread Matej Dujava
This patch remove unnecessary operation (eg. ``X | (0x0 << Y)`` to ``X``).

Signed-off-by: Matej Dujava 
---
 drivers/staging/sm750fb/ddk750_display.h | 32 
 1 file changed, 16 insertions(+), 16 deletions(-)

diff --git a/drivers/staging/sm750fb/ddk750_display.h 
b/drivers/staging/sm750fb/ddk750_display.h
index cef7f46..f9e1614 100644
--- a/drivers/staging/sm750fb/ddk750_display.h
+++ b/drivers/staging/sm750fb/ddk750_display.h
@@ -9,8 +9,8 @@
 #define PNL_2_OFFSET   0
 #define PNL_2_MASK (3 << PNL_2_OFFSET)
 #define PNL_2_USAGE(PNL_2_MASK << 16)
-#define PNL_2_PRI  ((0 << PNL_2_OFFSET) | PNL_2_USAGE)
-#define PNL_2_SEC  ((2 << PNL_2_OFFSET) | PNL_2_USAGE)
+#define PNL_2_PRI  (PNL_2_USAGE)
+#define PNL_2_SEC  (PNL_2_USAGE | (2 << PNL_2_OFFSET))
 
 /*
  * primary timing & plane enable bit
@@ -20,8 +20,8 @@
 #define PRI_TP_OFFSET  4
 #define PRI_TP_MASKBIT(PRI_TP_OFFSET)
 #define PRI_TP_USAGE   (PRI_TP_MASK << 16)
-#define PRI_TP_ON  ((0x1 << PRI_TP_OFFSET) | PRI_TP_USAGE)
-#define PRI_TP_OFF ((0x0 << PRI_TP_OFFSET) | PRI_TP_USAGE)
+#define PRI_TP_ON  (PRI_TP_USAGE | BIT(PRI_TP_OFFSET))
+#define PRI_TP_OFF (PRI_TP_USAGE)
 
 /*
  * panel sequency status
@@ -30,8 +30,8 @@
 #define PNL_SEQ_OFFSET 6
 #define PNL_SEQ_MASK   BIT(PNL_SEQ_OFFSET)
 #define PNL_SEQ_USAGE  (PNL_SEQ_MASK << 16)
-#define PNL_SEQ_ON (BIT(PNL_SEQ_OFFSET) | PNL_SEQ_USAGE)
-#define PNL_SEQ_OFF((0 << PNL_SEQ_OFFSET) | PNL_SEQ_USAGE)
+#define PNL_SEQ_ON (PNL_SEQ_USAGE | BIT(PNL_SEQ_OFFSET))
+#define PNL_SEQ_OFF(PNL_SEQ_USAGE)
 
 /*
  * dual digital output
@@ -40,8 +40,8 @@
 #define DUAL_TFT_OFFSET8
 #define DUAL_TFT_MASK  BIT(DUAL_TFT_OFFSET)
 #define DUAL_TFT_USAGE (DUAL_TFT_MASK << 16)
-#define DUAL_TFT_ON(BIT(DUAL_TFT_OFFSET) | DUAL_TFT_USAGE)
-#define DUAL_TFT_OFF   ((0 << DUAL_TFT_OFFSET) | DUAL_TFT_USAGE)
+#define DUAL_TFT_ON(DUAL_TFT_USAGE | BIT(DUAL_TFT_OFFSET))
+#define DUAL_TFT_OFF   (DUAL_TFT_USAGE)
 
 /*
  * secondary timing & plane enable bit
@@ -51,8 +51,8 @@
 #define SEC_TP_OFFSET  5
 #define SEC_TP_MASKBIT(SEC_TP_OFFSET)
 #define SEC_TP_USAGE   (SEC_TP_MASK << 16)
-#define SEC_TP_ON  ((0x1 << SEC_TP_OFFSET) | SEC_TP_USAGE)
-#define SEC_TP_OFF ((0x0 << SEC_TP_OFFSET) | SEC_TP_USAGE)
+#define SEC_TP_ON  (SEC_TP_USAGE | BIT(SEC_TP_OFFSET))
+#define SEC_TP_OFF (SEC_TP_USAGE)
 
 /*
  * crt path select
@@ -61,8 +61,8 @@
 #define CRT_2_OFFSET   2
 #define CRT_2_MASK (3 << CRT_2_OFFSET)
 #define CRT_2_USAGE(CRT_2_MASK << 16)
-#define CRT_2_PRI  ((0x0 << CRT_2_OFFSET) | CRT_2_USAGE)
-#define CRT_2_SEC  ((0x2 << CRT_2_OFFSET) | CRT_2_USAGE)
+#define CRT_2_PRI  (CRT_2_USAGE)
+#define CRT_2_SEC  (CRT_2_USAGE | (0x2 << CRT_2_OFFSET))
 
 /*
  * DAC affect both DVI and DSUB
@@ -71,8 +71,8 @@
 #define DAC_OFFSET 7
 #define DAC_MASK   BIT(DAC_OFFSET)
 #define DAC_USAGE  (DAC_MASK << 16)
-#define DAC_ON ((0x0 << DAC_OFFSET) | DAC_USAGE)
-#define DAC_OFF((0x1 << DAC_OFFSET) | DAC_USAGE)
+#define DAC_ON (DAC_USAGE)
+#define DAC_OFF(DAC_USAGE | BIT(DAC_OFFSET))
 
 /*
  * DPMS only affect D-SUB head
@@ -81,8 +81,8 @@
 #define DPMS_OFFSET9
 #define DPMS_MASK  (3 << DPMS_OFFSET)
 #define DPMS_USAGE (DPMS_MASK << 16)
-#define DPMS_ON((0 << DPMS_OFFSET) | DPMS_USAGE)
-#define DPMS_OFF   ((3 << DPMS_OFFSET) | DPMS_USAGE)
+#define DPMS_ON(DPMS_USAGE)
+#define DPMS_OFF   (DPMS_USAGE | (0x3 << DPMS_OFFSET))
 
 /*
  * LCD1 means panel path TFT1  & panel path DVI (so enable DAC)
-- 
1.8.3.1



[PATCH 3/9] staging: sm750fb: reordering of macro definitions

2017-05-13 Thread Matej Dujava
This patch reorder definition of macros so all macros are in same order.

Signed-off-by: Matej Dujava 
---
 drivers/staging/sm750fb/ddk750_display.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/staging/sm750fb/ddk750_display.h 
b/drivers/staging/sm750fb/ddk750_display.h
index 6f639d7..cef7f46 100644
--- a/drivers/staging/sm750fb/ddk750_display.h
+++ b/drivers/staging/sm750fb/ddk750_display.h
@@ -81,8 +81,8 @@
 #define DPMS_OFFSET9
 #define DPMS_MASK  (3 << DPMS_OFFSET)
 #define DPMS_USAGE (DPMS_MASK << 16)
-#define DPMS_OFF   ((3 << DPMS_OFFSET) | DPMS_USAGE)
 #define DPMS_ON((0 << DPMS_OFFSET) | DPMS_USAGE)
+#define DPMS_OFF   ((3 << DPMS_OFFSET) | DPMS_USAGE)
 
 /*
  * LCD1 means panel path TFT1  & panel path DVI (so enable DAC)
-- 
1.8.3.1



[PATCH 1/9] staging: sm750fb: fix length of lines

2017-05-13 Thread Matej Dujava
This patch breaks lines that are longer than 80 characters and joins
together those, that are too short and can be placed at one.

Signed-off-by: Matej Dujava 
---
 drivers/staging/sm750fb/ddk750_chip.c   |  7 +++--
 drivers/staging/sm750fb/ddk750_dvi.c| 35 +--
 drivers/staging/sm750fb/ddk750_dvi.h| 43 ++---
 drivers/staging/sm750fb/ddk750_hwi2c.c  | 33 --
 drivers/staging/sm750fb/ddk750_sii164.c | 49 ++---
 drivers/staging/sm750fb/ddk750_sii164.h | 22 +++
 drivers/staging/sm750fb/ddk750_swi2c.c  | 21 --
 drivers/staging/sm750fb/ddk750_swi2c.h  | 18 
 drivers/staging/sm750fb/sm750.c | 26 -
 drivers/staging/sm750fb/sm750_accel.c   | 15 +-
 drivers/staging/sm750fb/sm750_cursor.c  | 17 +---
 11 files changed, 125 insertions(+), 161 deletions(-)

diff --git a/drivers/staging/sm750fb/ddk750_chip.c 
b/drivers/staging/sm750fb/ddk750_chip.c
index 5e4bfb6..944dd25 100644
--- a/drivers/staging/sm750fb/ddk750_chip.c
+++ b/drivers/staging/sm750fb/ddk750_chip.c
@@ -175,7 +175,7 @@ static void set_master_clock(unsigned int frequency)
}
 
sm750_set_current_gate(reg);
-   }
+   }
 }
 
 unsigned int ddk750_get_vm_size(void)
@@ -224,7 +224,7 @@ int ddk750_init_hw(struct initchip_param *pInitParam)
sm750_set_current_gate(reg);
 
if (sm750_get_chip_type() != SM750LE) {
-   /*  set panel pll and graphic mode via mmio_88 */
+   /* set panel pll and graphic mode via mmio_88 */
reg = peek32(VGA_CONFIGURATION);
reg |= (VGA_CONFIGURATION_PLL | VGA_CONFIGURATION_MODE);
poke32(VGA_CONFIGURATION, reg);
@@ -309,7 +309,8 @@ int ddk750_init_hw(struct initchip_param *pInitParam)
  * M = {1,...,255}
  * N = {2,...,15}
  */
-unsigned int sm750_calc_pll_value(unsigned int request_orig, struct pll_value 
*pll)
+unsigned int sm750_calc_pll_value(unsigned int request_orig,
+ struct pll_value *pll)
 {
/*
 * as sm750 register definition,
diff --git a/drivers/staging/sm750fb/ddk750_dvi.c 
b/drivers/staging/sm750fb/ddk750_dvi.c
index 171ae06..87a199d 100644
--- a/drivers/staging/sm750fb/ddk750_dvi.c
+++ b/drivers/staging/sm750fb/ddk750_dvi.c
@@ -29,26 +29,31 @@
 #endif
 };
 
-int dviInit(
-   unsigned char edgeSelect,
-   unsigned char busSelect,
-   unsigned char dualEdgeClkSelect,
-   unsigned char hsyncEnable,
-   unsigned char vsyncEnable,
-   unsigned char deskewEnable,
-   unsigned char deskewSetting,
-   unsigned char continuousSyncEnable,
-   unsigned char pllFilterEnable,
-   unsigned char pllFilterValue
-   )
+int dviInit(unsigned char edgeSelect,
+   unsigned char busSelect,
+   unsigned char dualEdgeClkSelect,
+   unsigned char hsyncEnable,
+   unsigned char vsyncEnable,
+   unsigned char deskewEnable,
+   unsigned char deskewSetting,
+   unsigned char continuousSyncEnable,
+   unsigned char pllFilterEnable,
+   unsigned char pllFilterValue)
 {
dvi_ctrl_device_t *pCurrentDviCtrl;
 
pCurrentDviCtrl = g_dcftSupportedDviController;
if (pCurrentDviCtrl->pfnInit) {
-   return pCurrentDviCtrl->pfnInit(edgeSelect, busSelect, 
dualEdgeClkSelect, hsyncEnable,
-   vsyncEnable, deskewEnable, 
deskewSetting, continuousSyncEnable,
-   pllFilterEnable, 
pllFilterValue);
+   return pCurrentDviCtrl->pfnInit(edgeSelect,
+   busSelect,
+   dualEdgeClkSelect,
+   hsyncEnable,
+   vsyncEnable,
+   deskewEnable,
+   deskewSetting,
+   continuousSyncEnable,
+   pllFilterEnable,
+   pllFilterValue);
}
return -1; /* error */
 }
diff --git a/drivers/staging/sm750fb/ddk750_dvi.h 
b/drivers/staging/sm750fb/ddk750_dvi.h
index 677939c..4a83945 100644
--- a/drivers/staging/sm750fb/ddk750_dvi.h
+++ b/drivers/staging/sm750fb/ddk750_dvi.h
@@ -3,17 +3,16 @@
 
 /* dvi chip stuffs structros */
 
-typedef long (*PFN_DVICTRL_INIT)(
-   unsigned char edgeSelect,
-   unsigned char busSelect,
-   unsigned char dualEdgeClkSelect,
-   unsigned char hsyncEnable,
-   unsigned char vsyncEnable,
-   unsigned char deskewEnable,
-   unsigned char deskewSetting,
-   unsigned char continuousSyncEnable,
-   unsi

[PATCH 6/9] staging: sm750fb: Remove typedef from "typedef enum _clock_type_t"

2017-05-13 Thread Matej Dujava
This patch removes typedefs from enum and renames it from "typedef enum
_clock_type_t" to "enum clock_type" as per kernel coding standards.

Signed-off-by: Matej Dujava 
---
 drivers/staging/sm750fb/ddk750_chip.h | 8 
 drivers/staging/sm750fb/ddk750_mode.c | 2 +-
 drivers/staging/sm750fb/ddk750_mode.h | 2 +-
 drivers/staging/sm750fb/sm750_hw.c| 2 +-
 4 files changed, 7 insertions(+), 7 deletions(-)

diff --git a/drivers/staging/sm750fb/ddk750_chip.h 
b/drivers/staging/sm750fb/ddk750_chip.h
index f2eee2b..e5cb436 100644
--- a/drivers/staging/sm750fb/ddk750_chip.h
+++ b/drivers/staging/sm750fb/ddk750_chip.h
@@ -31,17 +31,17 @@ enum logical_chip_type {
 };
 
 
-typedef enum _clock_type_t {
+enum clock_type {
MXCLK_PLL,
PRIMARY_PLL,
SECONDARY_PLL,
VGA0_PLL,
VGA1_PLL,
-}
-clock_type_t;
+};
+
 
 struct pll_value {
-   clock_type_t clockType;
+   enum clock_type clockType;
unsigned long inputFreq; /* Input clock frequency to the PLL */
 
/* Use this when clockType = PANEL_PLL */
diff --git a/drivers/staging/sm750fb/ddk750_mode.c 
b/drivers/staging/sm750fb/ddk750_mode.c
index bb673e1..24d3447 100644
--- a/drivers/staging/sm750fb/ddk750_mode.c
+++ b/drivers/staging/sm750fb/ddk750_mode.c
@@ -205,7 +205,7 @@ static int programModeRegisters(struct mode_parameter 
*pModeParam,
return ret;
 }
 
-int ddk750_setModeTiming(struct mode_parameter *parm, clock_type_t clock)
+int ddk750_setModeTiming(struct mode_parameter *parm, enum clock_type clock)
 {
struct pll_value pll;
unsigned int uiActualPixelClk;
diff --git a/drivers/staging/sm750fb/ddk750_mode.h 
b/drivers/staging/sm750fb/ddk750_mode.h
index d5eae36..704dbfd 100644
--- a/drivers/staging/sm750fb/ddk750_mode.h
+++ b/drivers/staging/sm750fb/ddk750_mode.h
@@ -32,5 +32,5 @@ struct mode_parameter {
enum spolarity clock_phase_polarity;
 };
 
-int ddk750_setModeTiming(struct mode_parameter *parm, clock_type_t clock);
+int ddk750_setModeTiming(struct mode_parameter *parm, enum clock_type clock);
 #endif
diff --git a/drivers/staging/sm750fb/sm750_hw.c 
b/drivers/staging/sm750fb/sm750_hw.c
index baf1bbd..3cdc4ae 100644
--- a/drivers/staging/sm750fb/sm750_hw.c
+++ b/drivers/staging/sm750fb/sm750_hw.c
@@ -253,7 +253,7 @@ int hw_sm750_crtc_setMode(struct lynxfb_crtc *crtc,
int ret, fmt;
u32 reg;
struct mode_parameter modparm;
-   clock_type_t clock;
+   enum clock_type clock;
struct sm750_dev *sm750_dev;
struct lynxfb_par *par;
 
-- 
1.8.3.1



[PATCH 2/9] staging: sm750fb: unifying macro definitions

2017-05-13 Thread Matej Dujava
This patch adds tabs into macro definitions so all rhs are on same column.

Signed-off-by: Matej Dujava 
---
 drivers/staging/sm750fb/ddk750_display.h | 74 
 drivers/staging/sm750fb/ddk750_hwi2c.c   |  4 +-
 drivers/staging/sm750fb/sm750.h  |  6 +--
 3 files changed, 42 insertions(+), 42 deletions(-)

diff --git a/drivers/staging/sm750fb/ddk750_display.h 
b/drivers/staging/sm750fb/ddk750_display.h
index 609bf74..6f639d7 100644
--- a/drivers/staging/sm750fb/ddk750_display.h
+++ b/drivers/staging/sm750fb/ddk750_display.h
@@ -6,8 +6,8 @@
  * 8[29:28]
  */
 
-#define PNL_2_OFFSET 0
-#define PNL_2_MASK (3 << PNL_2_OFFSET)
+#define PNL_2_OFFSET   0
+#define PNL_2_MASK (3 << PNL_2_OFFSET)
 #define PNL_2_USAGE(PNL_2_MASK << 16)
 #define PNL_2_PRI  ((0 << PNL_2_OFFSET) | PNL_2_USAGE)
 #define PNL_2_SEC  ((2 << PNL_2_OFFSET) | PNL_2_USAGE)
@@ -17,72 +17,72 @@
  * 1: 8[8] & 8[2] on
  * 0: both off
  */
-#define PRI_TP_OFFSET 4
-#define PRI_TP_MASK BIT(PRI_TP_OFFSET)
-#define PRI_TP_USAGE (PRI_TP_MASK << 16)
-#define PRI_TP_ON ((0x1 << PRI_TP_OFFSET) | PRI_TP_USAGE)
-#define PRI_TP_OFF ((0x0 << PRI_TP_OFFSET) | PRI_TP_USAGE)
+#define PRI_TP_OFFSET  4
+#define PRI_TP_MASKBIT(PRI_TP_OFFSET)
+#define PRI_TP_USAGE   (PRI_TP_MASK << 16)
+#define PRI_TP_ON  ((0x1 << PRI_TP_OFFSET) | PRI_TP_USAGE)
+#define PRI_TP_OFF ((0x0 << PRI_TP_OFFSET) | PRI_TP_USAGE)
 
 /*
  * panel sequency status
  * 8[27:24]
  */
-#define PNL_SEQ_OFFSET 6
-#define PNL_SEQ_MASK BIT(PNL_SEQ_OFFSET)
-#define PNL_SEQ_USAGE (PNL_SEQ_MASK << 16)
-#define PNL_SEQ_ON (BIT(PNL_SEQ_OFFSET) | PNL_SEQ_USAGE)
-#define PNL_SEQ_OFF ((0 << PNL_SEQ_OFFSET) | PNL_SEQ_USAGE)
+#define PNL_SEQ_OFFSET 6
+#define PNL_SEQ_MASK   BIT(PNL_SEQ_OFFSET)
+#define PNL_SEQ_USAGE  (PNL_SEQ_MASK << 16)
+#define PNL_SEQ_ON (BIT(PNL_SEQ_OFFSET) | PNL_SEQ_USAGE)
+#define PNL_SEQ_OFF((0 << PNL_SEQ_OFFSET) | PNL_SEQ_USAGE)
 
 /*
  * dual digital output
  * 8[19]
  */
-#define DUAL_TFT_OFFSET 8
-#define DUAL_TFT_MASK BIT(DUAL_TFT_OFFSET)
-#define DUAL_TFT_USAGE (DUAL_TFT_MASK << 16)
-#define DUAL_TFT_ON (BIT(DUAL_TFT_OFFSET) | DUAL_TFT_USAGE)
-#define DUAL_TFT_OFF ((0 << DUAL_TFT_OFFSET) | DUAL_TFT_USAGE)
+#define DUAL_TFT_OFFSET8
+#define DUAL_TFT_MASK  BIT(DUAL_TFT_OFFSET)
+#define DUAL_TFT_USAGE (DUAL_TFT_MASK << 16)
+#define DUAL_TFT_ON(BIT(DUAL_TFT_OFFSET) | DUAL_TFT_USAGE)
+#define DUAL_TFT_OFF   ((0 << DUAL_TFT_OFFSET) | DUAL_TFT_USAGE)
 
 /*
  * secondary timing & plane enable bit
  * 1:80200[8] & 80200[2] on
  * 0: both off
  */
-#define SEC_TP_OFFSET 5
-#define SEC_TP_MASK BIT(SEC_TP_OFFSET)
-#define SEC_TP_USAGE (SEC_TP_MASK << 16)
-#define SEC_TP_ON  ((0x1 << SEC_TP_OFFSET) | SEC_TP_USAGE)
-#define SEC_TP_OFF ((0x0 << SEC_TP_OFFSET) | SEC_TP_USAGE)
+#define SEC_TP_OFFSET  5
+#define SEC_TP_MASKBIT(SEC_TP_OFFSET)
+#define SEC_TP_USAGE   (SEC_TP_MASK << 16)
+#define SEC_TP_ON  ((0x1 << SEC_TP_OFFSET) | SEC_TP_USAGE)
+#define SEC_TP_OFF ((0x0 << SEC_TP_OFFSET) | SEC_TP_USAGE)
 
 /*
  * crt path select
  * 80200[19:18]
  */
-#define CRT_2_OFFSET 2
-#define CRT_2_MASK (3 << CRT_2_OFFSET)
-#define CRT_2_USAGE (CRT_2_MASK << 16)
-#define CRT_2_PRI ((0x0 << CRT_2_OFFSET) | CRT_2_USAGE)
-#define CRT_2_SEC ((0x2 << CRT_2_OFFSET) | CRT_2_USAGE)
+#define CRT_2_OFFSET   2
+#define CRT_2_MASK (3 << CRT_2_OFFSET)
+#define CRT_2_USAGE(CRT_2_MASK << 16)
+#define CRT_2_PRI  ((0x0 << CRT_2_OFFSET) | CRT_2_USAGE)
+#define CRT_2_SEC  ((0x2 << CRT_2_OFFSET) | CRT_2_USAGE)
 
 /*
  * DAC affect both DVI and DSUB
  * 4[20]
  */
-#define DAC_OFFSET 7
-#define DAC_MASK BIT(DAC_OFFSET)
-#define DAC_USAGE (DAC_MASK << 16)
-#define DAC_ON ((0x0 << DAC_OFFSET) | DAC_USAGE)
-#define DAC_OFF ((0x1 << DAC_OFFSET) | DAC_USAGE)
+#define DAC_OFFSET 7
+#define DAC_MASK   BIT(DAC_OFFSET)
+#define DAC_USAGE  (DAC_MASK << 16)
+#define DAC_ON ((0x0 << DAC_OFFSET) | DAC_USAGE)
+#define DAC_OFF((0x1 << DAC_OFFSET) | DAC_USAGE)
 
 /*
  * DPMS only affect D-SUB head
  * 0[31:30]
  */
-#define DPMS_OFFSET 9
-#define DPMS_MASK (3 << DPMS_OFFSET)
-#define DPMS_USAGE (DPMS_MASK << 16)
-#define DPMS_OFF ((3 << DPMS_OFFSET) | DPMS_USAGE)
-#define DPMS_ON ((0 << DPMS_OFFSET) | DPMS_USAGE)
+#define DPMS_OFFSET9
+#define DPMS_MASK  (3 << DPMS_OFFSET)
+#define DPMS_USAGE (DPMS_MASK << 16)
+#define DPMS_OFF   ((3 << DPMS_OFFSET) | DPMS_USAGE)
+#define DPMS_ON((0 << DPMS_OFFSET) | DPMS_USAGE)
 
 /*
  * LCD1 means panel path TFT1  & panel path DVI (so enable DAC)
diff --git a/drivers/staging/sm

[PATCH 1/2] staging: vt6655: return early if not bNeedAck

2020-05-02 Thread Matej Dujava
This patch will check for bNeedAck before making bb_get_frame_time call, so
in case we dont need uAckTime, we can return early.

Signed-off-by: Matej Dujava 
---
 drivers/staging/vt6655/rxtx.c | 9 +
 1 file changed, 5 insertions(+), 4 deletions(-)

diff --git a/drivers/staging/vt6655/rxtx.c b/drivers/staging/vt6655/rxtx.c
index 2f9c2ead3cb8..dda578436e64 100644
--- a/drivers/staging/vt6655/rxtx.c
+++ b/drivers/staging/vt6655/rxtx.c
@@ -166,15 +166,16 @@ s_uGetTxRsvTime(
unsigned int uDataTime, uAckTime;
 
uDataTime = bb_get_frame_time(pDevice->byPreambleType, byPktType, 
cbFrameLength, wRate);
+
+   if (!bNeedAck)
+   return uDataTime;
+
if (byPktType == PK_TYPE_11B) /* llb,CCK mode */
uAckTime = bb_get_frame_time(pDevice->byPreambleType, 
byPktType, 14, (unsigned short)pDevice->byTopCCKBasicRate);
else /* 11g 2.4G OFDM mode & 11a 5G OFDM mode */
uAckTime = bb_get_frame_time(pDevice->byPreambleType, 
byPktType, 14, (unsigned short)pDevice->byTopOFDMBasicRate);
 
-   if (bNeedAck)
-   return uDataTime + pDevice->uSIFS + uAckTime;
-   else
-   return uDataTime;
+   return uDataTime + pDevice->uSIFS + uAckTime;
 }
 
 static __le16 vnt_rxtx_rsvtime_le16(struct vnt_private *priv, u8 pkt_type,
-- 
2.26.2



[PATCH 2/2] staging: vt6655: fix LONG_LINE warning

2020-05-02 Thread Matej Dujava
This patch will fix LONG_LINE error from checkpatch, by createing temporary
variable so call to the function is not in if/else block.

Signed-off-by: Matej Dujava 
---
 drivers/staging/vt6655/rxtx.c | 16 
 1 file changed, 12 insertions(+), 4 deletions(-)

diff --git a/drivers/staging/vt6655/rxtx.c b/drivers/staging/vt6655/rxtx.c
index dda578436e64..782177dfd67e 100644
--- a/drivers/staging/vt6655/rxtx.c
+++ b/drivers/staging/vt6655/rxtx.c
@@ -164,16 +164,24 @@ s_uGetTxRsvTime(
 )
 {
unsigned int uDataTime, uAckTime;
+   unsigned short basic_rate;
 
uDataTime = bb_get_frame_time(pDevice->byPreambleType, byPktType, 
cbFrameLength, wRate);
 
if (!bNeedAck)
return uDataTime;
 
-   if (byPktType == PK_TYPE_11B) /* llb,CCK mode */
-   uAckTime = bb_get_frame_time(pDevice->byPreambleType, 
byPktType, 14, (unsigned short)pDevice->byTopCCKBasicRate);
-   else /* 11g 2.4G OFDM mode & 11a 5G OFDM mode */
-   uAckTime = bb_get_frame_time(pDevice->byPreambleType, 
byPktType, 14, (unsigned short)pDevice->byTopOFDMBasicRate);
+   /*
+* CCK mode  - 11b
+* OFDM mode - 11g 2.4G & 11a 5G
+*/
+   if (byPktType == PK_TYPE_11B)
+   basic_rate = (unsigned short)pDevice->byTopCCKBasicRate;
+   else
+   basic_rate = (unsigned short)pDevice->byTopOFDMBasicRate;
+
+   uAckTime = bb_get_frame_time(pDevice->byPreambleType, byPktType, 14,
+basic_rate);
 
return uDataTime + pDevice->uSIFS + uAckTime;
 }
-- 
2.26.2



Re: [PATCH 2/2] staging: vt6655: fix LONG_LINE warning

2020-05-03 Thread Matej Dujava

On Sat, May 02, 2020 at 10:11:43PM -0700, Joe Perches wrote:

On Sun, 2020-05-03 at 00:16 +0200, Matej Dujava wrote:

This patch will fix LONG_LINE error from checkpatch, by createing temporary
variable so call to the function is not in if/else block.

[]

diff --git a/drivers/staging/vt6655/rxtx.c b/drivers/staging/vt6655/rxtx.c

[]


Sorry, am I missing something here?


@@ -164,16 +164,24 @@ s_uGetTxRsvTime(
 )
 {
unsigned int uDataTime, uAckTime;
+   unsigned short basic_rate;

uDataTime = bb_get_frame_time(pDevice->byPreambleType, byPktType, 
cbFrameLength, wRate);

if (!bNeedAck)
return uDataTime;

-   if (byPktType == PK_TYPE_11B) /* llb,CCK mode */
-   uAckTime = bb_get_frame_time(pDevice->byPreambleType, byPktType, 
14, (unsigned short)pDevice->byTopCCKBasicRate);
-   else /* 11g 2.4G OFDM mode & 11a 5G OFDM mode */
-   uAckTime = bb_get_frame_time(pDevice->byPreambleType, byPktType, 
14, (unsigned short)pDevice->byTopOFDMBasicRate);
+   /*
+* CCK mode  - 11b
+* OFDM mode - 11g 2.4G & 11a 5G
+*/
+   if (byPktType == PK_TYPE_11B)
+   basic_rate = (unsigned short)pDevice->byTopCCKBasicRate;
+   else
+   basic_rate = (unsigned short)pDevice->byTopOFDMBasicRate;
+
+   uAckTime = bb_get_frame_time(pDevice->byPreambleType, byPktType, 14,
+basic_rate);

return uDataTime + pDevice->uSIFS + uAckTime;
 }


perhaps simpler using a ?:

uAckTime = bb_get_frame_time(pDevice->byPreambleType, byPktType, 14,
 byPktType == PK_TYPE_11B
 ? pDevice->byTopCCKBasicRate
 : pDevice->byTopOFDMBasicRate);

the casts aren't necessary either as both by... fields are u8


Thank you, will resend my patch.






[PATCH 4/5] staging: vt6655: return at the ond of case body

2020-05-03 Thread Matej Dujava
This patch will unify exit point for s_uGetDataDuration function.

Signed-off-by: Matej Dujava 
---
 drivers/staging/vt6655/rxtx.c | 18 ++
 1 file changed, 6 insertions(+), 12 deletions(-)

diff --git a/drivers/staging/vt6655/rxtx.c b/drivers/staging/vt6655/rxtx.c
index 61f7077bb75f..c4d62c27f1c1 100644
--- a/drivers/staging/vt6655/rxtx.c
+++ b/drivers/staging/vt6655/rxtx.c
@@ -264,14 +264,12 @@ s_uGetDataDuration(
if ((uMACfragNum == 1) || bLastFrag) {
if (!bNeedAck)
return 0;
-   return pDevice->uSIFS + uAckTime;
} else {
/* First Frag or Mid Frag */
uNextPktTime = s_uGetTxRsvTime(pDevice, byPktType, len, 
wRate, bNeedAck);
-
-   return pDevice->uSIFS + uAckTime + uNextPktTime;
}
-   break;
+
+   return pDevice->uSIFS + uAckTime + uNextPktTime;
 
case DATADUR_A:/* DATADUR_A */
if (bNeedAck) {
@@ -283,15 +281,13 @@ s_uGetDataDuration(
if ((uMACfragNum == 1) || bLastFrag) {
if (!bNeedAck)
return 0;
-   return pDevice->uSIFS + uAckTime;
} else {
/* First Frag or Mid Frag */
uNextPktTime = s_uGetTxRsvTime(pDevice, byPktType, len,
   wRate, bNeedAck);
-
-   return pDevice->uSIFS + uAckTime + uNextPktTime;
}
-   break;
+
+   return pDevice->uSIFS + uAckTime + uNextPktTime;
 
case DATADUR_A_F0:/* DATADUR_A_F0 */
case DATADUR_A_F1:/* DATADUR_A_F1 */
@@ -304,7 +300,6 @@ s_uGetDataDuration(
if ((uMACfragNum == 1) || bLastFrag) {
if (!bNeedAck)
return 0;
-   return pDevice->uSIFS + uAckTime;
} else {
/* First Frag or Mid Frag */
if (wRate < RATE_18M)
@@ -323,10 +318,9 @@ s_uGetDataDuration(
   
wFB_Opt1[FB_RATE0][wRate - RATE_18M],
   bNeedAck);
}
-
-   return pDevice->uSIFS + uAckTime + uNextPktTime;
}
-   break;
+
+   return pDevice->uSIFS + uAckTime + uNextPktTime;
 
default:
break;
-- 
2.26.2



[PATCH 5/5] staging: vt6655: extract index manupulation out of function call

2020-05-03 Thread Matej Dujava
This patch will remove if/else by selecting proper argument before
function call, also index is updated before function call.

Signed-off-by: Matej Dujava 
---
 drivers/staging/vt6655/rxtx.c | 27 +--
 1 file changed, 13 insertions(+), 14 deletions(-)

diff --git a/drivers/staging/vt6655/rxtx.c b/drivers/staging/vt6655/rxtx.c
index c4d62c27f1c1..1e025bb72810 100644
--- a/drivers/staging/vt6655/rxtx.c
+++ b/drivers/staging/vt6655/rxtx.c
@@ -266,7 +266,8 @@ s_uGetDataDuration(
return 0;
} else {
/* First Frag or Mid Frag */
-   uNextPktTime = s_uGetTxRsvTime(pDevice, byPktType, len, 
wRate, bNeedAck);
+   uNextPktTime = s_uGetTxRsvTime(pDevice, byPktType,
+  len, wRate, bNeedAck);
}
 
return pDevice->uSIFS + uAckTime + uNextPktTime;
@@ -283,8 +284,8 @@ s_uGetDataDuration(
return 0;
} else {
/* First Frag or Mid Frag */
-   uNextPktTime = s_uGetTxRsvTime(pDevice, byPktType, len,
-  wRate, bNeedAck);
+   uNextPktTime = s_uGetTxRsvTime(pDevice, byPktType,
+  len, wRate, bNeedAck);
}
 
return pDevice->uSIFS + uAckTime + uNextPktTime;
@@ -307,17 +308,15 @@ s_uGetDataDuration(
else if (wRate > RATE_54M)
wRate = RATE_54M;
 
-   if (byFBOption == AUTO_FB_0) {
-   uNextPktTime = s_uGetTxRsvTime(pDevice,
-  byPktType, len,
-  
wFB_Opt0[FB_RATE0][wRate - RATE_18M],
-  bNeedAck);
-   } else {
-   uNextPktTime = s_uGetTxRsvTime(pDevice,
-  byPktType, len,
-  
wFB_Opt1[FB_RATE0][wRate - RATE_18M],
-  bNeedAck);
-   }
+   wRate -= RATE_18M;
+
+   if (byFBOption == AUTO_FB_0)
+   wRate = wFB_Opt0[FB_RATE0][wRate];
+   else
+   wRate = wFB_Opt1[FB_RATE0][wRate];
+
+   uNextPktTime = s_uGetTxRsvTime(pDevice, byPktType,
+  len, wRate, bNeedAck);
}
 
return pDevice->uSIFS + uAckTime + uNextPktTime;
-- 
2.26.2



[PATCH 0/5] Cleaning s_uGetDataDuration function

2020-05-03 Thread Matej Dujava
This patch set will eliminate few checkpatch LONG_LINE errors.
Simplify code paths by:
  - returning at the end of case body
  - removing unnecessary else branches

Matej Dujava (5):
  staging: vt6655: merge two switch cases in s_uGetDataDuration
  staging: vt6655: do calculation of uAckTime first
  staging: vt6655: remove else after return and invert condition
  staging: vt6655: return at the ond of case body
  staging: vt6655: extract index manupulation out of function call

 drivers/staging/vt6655/rxtx.c | 140 --
 1 file changed, 48 insertions(+), 92 deletions(-)

--
2.26.2



[PATCH 3/5] staging: vt6655: remove else after return and invert condition

2020-05-03 Thread Matej Dujava
This patch will prepare us to make return at the end of case body

Signed-off-by: Matej Dujava 
---
 drivers/staging/vt6655/rxtx.c | 36 +--
 1 file changed, 18 insertions(+), 18 deletions(-)

diff --git a/drivers/staging/vt6655/rxtx.c b/drivers/staging/vt6655/rxtx.c
index 01ceace253a4..61f7077bb75f 100644
--- a/drivers/staging/vt6655/rxtx.c
+++ b/drivers/staging/vt6655/rxtx.c
@@ -260,13 +260,13 @@ s_uGetDataDuration(
 byPktType, 14,
 
pDevice->byTopCCKBasicRate);
}
-   if (((uMACfragNum == 1)) || bLastFrag) {/* Non Frag or Last 
Frag */
-   if (bNeedAck) {
-   return pDevice->uSIFS + uAckTime;
-   } else {
+   /* Non Frag or Last Frag */
+   if ((uMACfragNum == 1) || bLastFrag) {
+   if (!bNeedAck)
return 0;
-   }
-   } else {/* First Frag or Mid Frag */
+   return pDevice->uSIFS + uAckTime;
+   } else {
+   /* First Frag or Mid Frag */
uNextPktTime = s_uGetTxRsvTime(pDevice, byPktType, len, 
wRate, bNeedAck);
 
return pDevice->uSIFS + uAckTime + uNextPktTime;
@@ -279,13 +279,13 @@ s_uGetDataDuration(
 byPktType, 14,
 
pDevice->byTopOFDMBasicRate);
}
-   if (((uMACfragNum == 1)) || bLastFrag) {/* Non Frag or Last 
Frag */
-   if (bNeedAck) {
-   return pDevice->uSIFS + uAckTime;
-   } else {
+   /* Non Frag or Last Frag */
+   if ((uMACfragNum == 1) || bLastFrag) {
+   if (!bNeedAck)
return 0;
-   }
-   } else {/* First Frag or Mid Frag */
+   return pDevice->uSIFS + uAckTime;
+   } else {
+   /* First Frag or Mid Frag */
uNextPktTime = s_uGetTxRsvTime(pDevice, byPktType, len,
   wRate, bNeedAck);
 
@@ -300,13 +300,13 @@ s_uGetDataDuration(
 byPktType, 14,
 
pDevice->byTopOFDMBasicRate);
}
-   if (((uMACfragNum == 1)) || bLastFrag) { /* Non Frag or Last 
Frag */
-   if (bNeedAck) {
-   return pDevice->uSIFS + uAckTime;
-   } else {
+   /* Non Frag or Last Frag */
+   if ((uMACfragNum == 1) || bLastFrag) {
+   if (!bNeedAck)
return 0;
-   }
-   } else { /* First Frag or Mid Frag */
+   return pDevice->uSIFS + uAckTime;
+   } else {
+   /* First Frag or Mid Frag */
if (wRate < RATE_18M)
wRate = RATE_18M;
else if (wRate > RATE_54M)
-- 
2.26.2



[PATCH 2/5] staging: vt6655: do calculation of uAckTime first

2020-05-03 Thread Matej Dujava
This patch is extracting calculation of uAckTime in one place, at the
start of case body.

Signed-off-by: Matej Dujava 
---
 drivers/staging/vt6655/rxtx.c | 33 +++--
 1 file changed, 15 insertions(+), 18 deletions(-)

diff --git a/drivers/staging/vt6655/rxtx.c b/drivers/staging/vt6655/rxtx.c
index 28f0cda36dec..01ceace253a4 100644
--- a/drivers/staging/vt6655/rxtx.c
+++ b/drivers/staging/vt6655/rxtx.c
@@ -255,9 +255,13 @@ s_uGetDataDuration(
 
switch (byDurType) {
case DATADUR_B:/* DATADUR_B */
+   if (bNeedAck) {
+   uAckTime = bb_get_frame_time(pDevice->byPreambleType,
+byPktType, 14,
+
pDevice->byTopCCKBasicRate);
+   }
if (((uMACfragNum == 1)) || bLastFrag) {/* Non Frag or Last 
Frag */
if (bNeedAck) {
-   uAckTime = 
bb_get_frame_time(pDevice->byPreambleType, byPktType, 14, 
pDevice->byTopCCKBasicRate);
return pDevice->uSIFS + uAckTime;
} else {
return 0;
@@ -265,19 +269,18 @@ s_uGetDataDuration(
} else {/* First Frag or Mid Frag */
uNextPktTime = s_uGetTxRsvTime(pDevice, byPktType, len, 
wRate, bNeedAck);
 
-   if (bNeedAck) {
-   uAckTime = 
bb_get_frame_time(pDevice->byPreambleType,
-byPktType, 14,
-
pDevice->byTopCCKBasicRate);
-   }
return pDevice->uSIFS + uAckTime + uNextPktTime;
}
break;
 
case DATADUR_A:/* DATADUR_A */
+   if (bNeedAck) {
+   uAckTime = bb_get_frame_time(pDevice->byPreambleType,
+byPktType, 14,
+
pDevice->byTopOFDMBasicRate);
+   }
if (((uMACfragNum == 1)) || bLastFrag) {/* Non Frag or Last 
Frag */
if (bNeedAck) {
-   uAckTime = 
bb_get_frame_time(pDevice->byPreambleType, byPktType, 14, 
pDevice->byTopOFDMBasicRate);
return pDevice->uSIFS + uAckTime;
} else {
return 0;
@@ -286,20 +289,19 @@ s_uGetDataDuration(
uNextPktTime = s_uGetTxRsvTime(pDevice, byPktType, len,
   wRate, bNeedAck);
 
-   if (bNeedAck) {
-   uAckTime = 
bb_get_frame_time(pDevice->byPreambleType,
-byPktType, 14,
-
pDevice->byTopOFDMBasicRate);
-   }
return pDevice->uSIFS + uAckTime + uNextPktTime;
}
break;
 
case DATADUR_A_F0:/* DATADUR_A_F0 */
case DATADUR_A_F1:/* DATADUR_A_F1 */
+   if (bNeedAck) {
+   uAckTime = bb_get_frame_time(pDevice->byPreambleType,
+byPktType, 14,
+
pDevice->byTopOFDMBasicRate);
+   }
if (((uMACfragNum == 1)) || bLastFrag) { /* Non Frag or Last 
Frag */
if (bNeedAck) {
-   uAckTime = 
bb_get_frame_time(pDevice->byPreambleType, byPktType, 14, 
pDevice->byTopOFDMBasicRate);
return pDevice->uSIFS + uAckTime;
} else {
return 0;
@@ -322,11 +324,6 @@ s_uGetDataDuration(
   bNeedAck);
}
 
-   if (bNeedAck) {
-   uAckTime = 
bb_get_frame_time(pDevice->byPreambleType,
-byPktType, 14,
-
pDevice->byTopOFDMBasicRate);
-   }
return pDevice->uSIFS + uAckTime + uNextPktTime;
}
break;
-- 
2.26.2



[PATCH 1/5] staging: vt6655: merge two switch cases in s_uGetDataDuration

2020-05-03 Thread Matej Dujava
This patch will reuse code for two cases.

Signed-off-by: Matej Dujava 
---
 drivers/staging/vt6655/rxtx.c | 34 --
 1 file changed, 34 deletions(-)

diff --git a/drivers/staging/vt6655/rxtx.c b/drivers/staging/vt6655/rxtx.c
index 2f9c2ead3cb8..28f0cda36dec 100644
--- a/drivers/staging/vt6655/rxtx.c
+++ b/drivers/staging/vt6655/rxtx.c
@@ -296,40 +296,6 @@ s_uGetDataDuration(
break;
 
case DATADUR_A_F0:/* DATADUR_A_F0 */
-   if (((uMACfragNum == 1)) || bLastFrag) {/* Non Frag or Last 
Frag */
-   if (bNeedAck) {
-   uAckTime = 
bb_get_frame_time(pDevice->byPreambleType, byPktType, 14, 
pDevice->byTopOFDMBasicRate);
-   return pDevice->uSIFS + uAckTime;
-   } else {
-   return 0;
-   }
-   } else { /* First Frag or Mid Frag */
-   if (wRate < RATE_18M)
-   wRate = RATE_18M;
-   else if (wRate > RATE_54M)
-   wRate = RATE_54M;
-
-   if (byFBOption == AUTO_FB_0) {
-   uNextPktTime = s_uGetTxRsvTime(pDevice,
-  byPktType, len,
-  
wFB_Opt0[FB_RATE0][wRate - RATE_18M],
-  bNeedAck);
-   } else {
-   uNextPktTime = s_uGetTxRsvTime(pDevice,
-  byPktType, len,
-  
wFB_Opt1[FB_RATE0][wRate - RATE_18M],
-  bNeedAck);
-   }
-
-   if (bNeedAck) {
-   uAckTime = 
bb_get_frame_time(pDevice->byPreambleType,
-byPktType, 14,
-
pDevice->byTopOFDMBasicRate);
-   }
-   return pDevice->uSIFS + uAckTime + uNextPktTime;
-   }
-   break;
-
case DATADUR_A_F1:/* DATADUR_A_F1 */
if (((uMACfragNum == 1)) || bLastFrag) { /* Non Frag or Last 
Frag */
if (bNeedAck) {
-- 
2.26.2



[PATCH v2 0/2] Early return in s_uGetTxRsvTime

2020-05-03 Thread Matej Dujava
This patch set will fix checkpatch LONG_LINE warnings and will save us
one call of bb_get_frame_time in case od !bNeedAck.

Change history:
v2: Implemented advice of ternary operator from Joe Perches 

Matej Dujava (2):
  staging: vt6655: return early if not bNeedAck
  staging: vt6655: fix LONG_LINE warning

 drivers/staging/vt6655/rxtx.c | 19 ---
 1 file changed, 12 insertions(+), 7 deletions(-)

--
2.26.2



[PATCH v2 1/2] staging: vt6655: return early if not bNeedAck

2020-05-03 Thread Matej Dujava
This patch will check for bNeedAck before making bb_get_frame_time call, so
in case we dont need uAckTime, we can return early.

Signed-off-by: Matej Dujava 
---
 drivers/staging/vt6655/rxtx.c | 9 +
 1 file changed, 5 insertions(+), 4 deletions(-)

diff --git a/drivers/staging/vt6655/rxtx.c b/drivers/staging/vt6655/rxtx.c
index 2f9c2ead3cb8..dda578436e64 100644
--- a/drivers/staging/vt6655/rxtx.c
+++ b/drivers/staging/vt6655/rxtx.c
@@ -166,15 +166,16 @@ s_uGetTxRsvTime(
unsigned int uDataTime, uAckTime;
 
uDataTime = bb_get_frame_time(pDevice->byPreambleType, byPktType, 
cbFrameLength, wRate);
+
+   if (!bNeedAck)
+   return uDataTime;
+
if (byPktType == PK_TYPE_11B) /* llb,CCK mode */
uAckTime = bb_get_frame_time(pDevice->byPreambleType, 
byPktType, 14, (unsigned short)pDevice->byTopCCKBasicRate);
else /* 11g 2.4G OFDM mode & 11a 5G OFDM mode */
uAckTime = bb_get_frame_time(pDevice->byPreambleType, 
byPktType, 14, (unsigned short)pDevice->byTopOFDMBasicRate);
 
-   if (bNeedAck)
-   return uDataTime + pDevice->uSIFS + uAckTime;
-   else
-   return uDataTime;
+   return uDataTime + pDevice->uSIFS + uAckTime;
 }
 
 static __le16 vnt_rxtx_rsvtime_le16(struct vnt_private *priv, u8 pkt_type,
-- 
2.26.2



[PATCH v2 2/2] staging: vt6655: fix LONG_LINE warning

2020-05-03 Thread Matej Dujava
This patch will fix LONG_LINE error from checkpatch, by using ternary
operator.

Signed-off-by: Matej Dujava 
---
 drivers/staging/vt6655/rxtx.c | 12 
 1 file changed, 8 insertions(+), 4 deletions(-)

diff --git a/drivers/staging/vt6655/rxtx.c b/drivers/staging/vt6655/rxtx.c
index dda578436e64..994c19f1de43 100644
--- a/drivers/staging/vt6655/rxtx.c
+++ b/drivers/staging/vt6655/rxtx.c
@@ -170,10 +170,14 @@ s_uGetTxRsvTime(
if (!bNeedAck)
return uDataTime;
 
-   if (byPktType == PK_TYPE_11B) /* llb,CCK mode */
-   uAckTime = bb_get_frame_time(pDevice->byPreambleType, 
byPktType, 14, (unsigned short)pDevice->byTopCCKBasicRate);
-   else /* 11g 2.4G OFDM mode & 11a 5G OFDM mode */
-   uAckTime = bb_get_frame_time(pDevice->byPreambleType, 
byPktType, 14, (unsigned short)pDevice->byTopOFDMBasicRate);
+   /*
+* CCK mode  - 11b
+* OFDM mode - 11g 2.4G & 11a 5G
+*/
+   uAckTime = bb_get_frame_time(pDevice->byPreambleType, byPktType, 14,
+byPktType == PK_TYPE_11B ?
+pDevice->byTopCCKBasicRate :
+pDevice->byTopOFDMBasicRate);
 
return uDataTime + pDevice->uSIFS + uAckTime;
 }
-- 
2.26.2



[PATCH 3/3] staging: sm750fb: print error message with actual value

2020-04-30 Thread Matej Dujava
This patch will update error message, so it is same as error message in
another function.

Signed-off-by: Matej Dujava 
---
 drivers/staging/sm750fb/sm750.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/staging/sm750fb/sm750.c b/drivers/staging/sm750fb/sm750.c
index c3ce7e653c7f..a1a82e59dfee 100644
--- a/drivers/staging/sm750fb/sm750.c
+++ b/drivers/staging/sm750fb/sm750.c
@@ -390,7 +390,7 @@ static int lynxfb_ops_set_par(struct fb_info *info)
var->accel_flags = 0;/*FB_ACCELF_TEXT;*/
 
if (ret) {
-   pr_err("pixel bpp format not satisfied\n.");
+   pr_err("bpp %d not supported\n", var->bits_per_pixel);
return ret;
}
ret = hw_sm750_crtc_setMode(crtc, var, fix);
-- 
2.26.2



[PATCH 1/3] staging: sm750fb: add missing case while setting FB_VISUAL

2020-04-30 Thread Matej Dujava
Switch statement does not contain all cases: 8, 16, 24, 32.
This patch will add missing one (24)

Fixes: 81dee67e215b ("staging: sm750fb: add sm750 to staging")

Signed-off-by: Matej Dujava 
---
 drivers/staging/sm750fb/sm750.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/drivers/staging/sm750fb/sm750.c b/drivers/staging/sm750fb/sm750.c
index e478290b60a8..39e610cc3c06 100644
--- a/drivers/staging/sm750fb/sm750.c
+++ b/drivers/staging/sm750fb/sm750.c
@@ -900,6 +900,7 @@ static int lynxfb_set_fbinfo(struct fb_info *info, int 
index)
fix->visual = FB_VISUAL_PSEUDOCOLOR;
break;
case 16:
+   case 24:
case 32:
fix->visual = FB_VISUAL_TRUECOLOR;
break;
-- 
2.26.2



[PATCH 2/3] staging: sm750fb: add common function to set color offsets and visual mode

2020-04-30 Thread Matej Dujava
This patch will unify code for updating color offsets and frame buffer
visual mode.

Signed-off-by: Matej Dujava 
---
 drivers/staging/sm750fb/sm750.c | 149 ++--
 1 file changed, 67 insertions(+), 82 deletions(-)

diff --git a/drivers/staging/sm750fb/sm750.c b/drivers/staging/sm750fb/sm750.c
index 39e610cc3c06..c3ce7e653c7f 100644
--- a/drivers/staging/sm750fb/sm750.c
+++ b/drivers/staging/sm750fb/sm750.c
@@ -297,6 +297,62 @@ static int lynxfb_ops_pan_display(struct fb_var_screeninfo 
*var,
return hw_sm750_pan_display(crtc, var, info);
 }
 
+static inline void lynxfb_set_visual_mode(struct fb_info *info)
+{
+   switch (info->var.bits_per_pixel) {
+   case 8:
+   info->fix.visual = FB_VISUAL_PSEUDOCOLOR;
+   break;
+   case 16:
+   case 24:
+   case 32:
+   info->fix.visual = FB_VISUAL_TRUECOLOR;
+   break;
+   default:
+   break;
+   }
+}
+
+static inline int lynxfb_set_color_offsets(struct fb_info *info)
+{
+   lynxfb_set_visual_mode(info);
+
+   switch (info->var.bits_per_pixel) {
+   case 8:
+   info->var.red.offset = 0;
+   info->var.red.length = 8;
+   info->var.green.offset = 0;
+   info->var.green.length = 8;
+   info->var.blue.offset = 0;
+   info->var.blue.length = 8;
+   info->var.transp.length = 0;
+   info->var.transp.offset = 0;
+   break;
+   case 16:
+   info->var.red.offset = 11;
+   info->var.red.length = 5;
+   info->var.green.offset = 5;
+   info->var.green.length = 6;
+   info->var.blue.offset = 0;
+   info->var.blue.length = 5;
+   info->var.transp.length = 0;
+   info->var.transp.offset = 0;
+   break;
+   case 24:
+   case 32:
+   info->var.red.offset = 16;
+   info->var.red.length = 8;
+   info->var.green.offset = 8;
+   info->var.green.length = 8;
+   info->var.blue.offset = 0;
+   info->var.blue.length = 8;
+   break;
+   default:
+   return -EINVAL;
+   }
+   return 0;
+}
+
 static int lynxfb_ops_set_par(struct fb_info *info)
 {
struct lynxfb_par *par;
@@ -328,43 +384,8 @@ static int lynxfb_ops_set_par(struct fb_info *info)
 * and these data should be set before setcolreg routine
 */
 
-   switch (var->bits_per_pixel) {
-   case 8:
-   fix->visual = FB_VISUAL_PSEUDOCOLOR;
-   var->red.offset = 0;
-   var->red.length = 8;
-   var->green.offset = 0;
-   var->green.length = 8;
-   var->blue.offset = 0;
-   var->blue.length = 8;
-   var->transp.length = 0;
-   var->transp.offset = 0;
-   break;
-   case 16:
-   var->red.offset = 11;
-   var->red.length = 5;
-   var->green.offset = 5;
-   var->green.length = 6;
-   var->blue.offset = 0;
-   var->blue.length = 5;
-   var->transp.length = 0;
-   var->transp.offset = 0;
-   fix->visual = FB_VISUAL_TRUECOLOR;
-   break;
-   case 24:
-   case 32:
-   var->red.offset = 16;
-   var->red.length = 8;
-   var->green.offset = 8;
-   var->green.length = 8;
-   var->blue.offset = 0;
-   var->blue.length = 8;
-   fix->visual = FB_VISUAL_TRUECOLOR;
-   break;
-   default:
-   ret = -EINVAL;
-   break;
-   }
+   ret = lynxfb_set_color_offsets(info);
+
var->height = var->width = -1;
var->accel_flags = 0;/*FB_ACCELF_TEXT;*/
 
@@ -511,10 +532,12 @@ static int lynxfb_resume(struct pci_dev *pdev)
 static int lynxfb_ops_check_var(struct fb_var_screeninfo *var,
struct fb_info *info)
 {
+   int ret;
struct lynxfb_par *par;
struct lynxfb_crtc *crtc;
resource_size_t request;
 
+   ret = 0;
par = info->par;
crtc = &par->crtc;
 
@@ -523,43 +546,13 @@ static int lynxfb_ops_check_var(struct fb_var_screeninfo 
*var,
 var->yres,
 var->bits_per_pixel);
 
-   switch (var->bits_per_pixel) {
-   case 8:
-   info->fix.visual = FB_VISUAL_PSEUDOCOLOR;
-   var->red.offset = 0;
-   var->red.length = 8;
-   var->green.offset = 0;
-   var->green.length = 8;
-   var->blue.offset = 0;
-

[PATCH 0/3] Refactor reused code for updating fb_info

2020-04-30 Thread Matej Dujava
This patch set will unify reused switch statement updating fb_info by
creating inline functions.

Tested only by compilation.

Matej Dujava (3):
  staging: sm750fb: add missing case while setting FB_VISUAL
  staging: sm750fb: add common function to set color offsets and visual
mode
  staging: sm750fb: print error message with actual value

 drivers/staging/sm750fb/sm750.c | 150 +++-
 1 file changed, 68 insertions(+), 82 deletions(-)

-- 
2.26.2



[PATCH] staging: vt6656: vt6655: clean Makefiles

2020-05-09 Thread Matej Dujava
This patch is removing CFLAGS that are defining flags that are not used.

Signed-off-by: Matej Dujava 
---
 drivers/staging/vt6655/Makefile  | 27 ---
 drivers/staging/vt6655/device_main.c |  1 -
 drivers/staging/vt6656/Makefile  |  7 ++-
 3 files changed, 14 insertions(+), 21 deletions(-)

diff --git a/drivers/staging/vt6655/Makefile b/drivers/staging/vt6655/Makefile
index a151f30fc46f..eda08a1516ab 100644
--- a/drivers/staging/vt6655/Makefile
+++ b/drivers/staging/vt6655/Makefile
@@ -1,18 +1,15 @@
 # SPDX-License-Identifier: GPL-2.0
-# TODO: all of these should be removed
-ccflags-y := -DLINUX -D__KERNEL__ -D__NO_VERSION__
-ccflags-y += -DHOSTAP
-
-vt6655_stage-y +=  device_main.o \
-   card.o \
-   channel.o \
-   mac.o \
-   baseband.o \
-   rxtx.o \
-   dpc.o \
-   power.o \
-   srom.o \
-   key.o \
-   rf.o
 
 obj-$(CONFIG_VT6655) +=vt6655_stage.o
+
+vt6655_stage-y +=  device_main.o \
+   card.o \
+   channel.o \
+   mac.o \
+   baseband.o \
+   rxtx.o \
+   dpc.o \
+   power.o \
+   srom.o \
+   key.o \
+   rf.o
diff --git a/drivers/staging/vt6655/device_main.c 
b/drivers/staging/vt6655/device_main.c
index 5889023d19c4..41cbec4134b0 100644
--- a/drivers/staging/vt6655/device_main.c
+++ b/drivers/staging/vt6655/device_main.c
@@ -32,7 +32,6 @@
  *
  * Revision History:
  */
-#undef __NO_VERSION__
 
 #include 
 #include "device.h"
diff --git a/drivers/staging/vt6656/Makefile b/drivers/staging/vt6656/Makefile
index a0f3862dea75..aac323d6a684 100644
--- a/drivers/staging/vt6656/Makefile
+++ b/drivers/staging/vt6656/Makefile
@@ -1,7 +1,6 @@
 # SPDX-License-Identifier: GPL-2.0
-# TODO: all of these should be removed
-ccflags-y := -DLINUX -D__KERNEL__ -DEXPORT_SYMTAB -D__NO_VERSION__
-ccflags-y += -DHOSTAP
+
+obj-$(CONFIG_VT6656) +=vt6656_stage.o
 
 vt6656_stage-y +=  main_usb.o \
card.o  \
@@ -14,5 +13,3 @@ vt6656_stage-y += main_usb.o \
rf.o \
usbpipe.o \
channel.o
-
-obj-$(CONFIG_VT6656) +=vt6656_stage.o
-- 
2.26.2



Re: [PATCH] staging: vt6656: vt6655: clean Makefiles

2020-05-09 Thread Matej Dujava

On Sat, May 09, 2020 at 07:07:14PM +0200, Greg Kroah-Hartman wrote:

On Sat, May 09, 2020 at 11:07:27AM +0200, Matej Dujava wrote:

This patch is removing CFLAGS that are defining flags that are not used.


You are also modifying the indentation and moving lines around for no
reason :(

Please only do one thing for a patch, and always describe everything you
do in the changelog text.


sorry, I will split it into two separate patches and resend as v2

Thanks,
Matej



Can you fix this up and send a v2?

thanks,

greg k-h


[PATCH v2 1/2] staging: vt6656: vt6655: clean Makefiles

2020-05-10 Thread Matej Dujava
This patch is removing CFLAGS that are defining flags that are not used.

Signed-off-by: Matej Dujava 
---
 drivers/staging/vt6655/Makefile  | 3 ---
 drivers/staging/vt6655/device_main.c | 1 -
 drivers/staging/vt6656/Makefile  | 3 ---
 3 files changed, 7 deletions(-)

diff --git a/drivers/staging/vt6655/Makefile b/drivers/staging/vt6655/Makefile
index a151f30fc46f..e70357ec0af8 100644
--- a/drivers/staging/vt6655/Makefile
+++ b/drivers/staging/vt6655/Makefile
@@ -1,7 +1,4 @@
 # SPDX-License-Identifier: GPL-2.0
-# TODO: all of these should be removed
-ccflags-y := -DLINUX -D__KERNEL__ -D__NO_VERSION__
-ccflags-y += -DHOSTAP
 
 vt6655_stage-y +=  device_main.o \
card.o \
diff --git a/drivers/staging/vt6655/device_main.c 
b/drivers/staging/vt6655/device_main.c
index 5889023d19c4..41cbec4134b0 100644
--- a/drivers/staging/vt6655/device_main.c
+++ b/drivers/staging/vt6655/device_main.c
@@ -32,7 +32,6 @@
  *
  * Revision History:
  */
-#undef __NO_VERSION__
 
 #include 
 #include "device.h"
diff --git a/drivers/staging/vt6656/Makefile b/drivers/staging/vt6656/Makefile
index a0f3862dea75..f696a9d7a143 100644
--- a/drivers/staging/vt6656/Makefile
+++ b/drivers/staging/vt6656/Makefile
@@ -1,7 +1,4 @@
 # SPDX-License-Identifier: GPL-2.0
-# TODO: all of these should be removed
-ccflags-y := -DLINUX -D__KERNEL__ -DEXPORT_SYMTAB -D__NO_VERSION__
-ccflags-y += -DHOSTAP
 
 vt6656_stage-y +=  main_usb.o \
card.o  \
-- 
2.26.2



[PATCH v2 2/2] staging: vt6655: vt6656: change order of makefile variable definitions

2020-05-10 Thread Matej Dujava
This patch will add indentation to multiline variable and put obj-$(CONFIG_X)
at the begining of the file.

Signed-off-by: Matej Dujava 
---
 drivers/staging/vt6655/Makefile | 24 
 drivers/staging/vt6656/Makefile |  4 ++--
 2 files changed, 14 insertions(+), 14 deletions(-)

diff --git a/drivers/staging/vt6655/Makefile b/drivers/staging/vt6655/Makefile
index e70357ec0af8..eda08a1516ab 100644
--- a/drivers/staging/vt6655/Makefile
+++ b/drivers/staging/vt6655/Makefile
@@ -1,15 +1,15 @@
 # SPDX-License-Identifier: GPL-2.0
 
-vt6655_stage-y +=  device_main.o \
-   card.o \
-   channel.o \
-   mac.o \
-   baseband.o \
-   rxtx.o \
-   dpc.o \
-   power.o \
-   srom.o \
-   key.o \
-   rf.o
-
 obj-$(CONFIG_VT6655) +=vt6655_stage.o
+
+vt6655_stage-y +=  device_main.o \
+   card.o \
+   channel.o \
+   mac.o \
+   baseband.o \
+   rxtx.o \
+   dpc.o \
+   power.o \
+   srom.o \
+   key.o \
+   rf.o
diff --git a/drivers/staging/vt6656/Makefile b/drivers/staging/vt6656/Makefile
index f696a9d7a143..aac323d6a684 100644
--- a/drivers/staging/vt6656/Makefile
+++ b/drivers/staging/vt6656/Makefile
@@ -1,5 +1,7 @@
 # SPDX-License-Identifier: GPL-2.0
 
+obj-$(CONFIG_VT6656) +=vt6656_stage.o
+
 vt6656_stage-y +=  main_usb.o \
card.o  \
mac.o   \
@@ -11,5 +13,3 @@ vt6656_stage-y += main_usb.o \
rf.o \
usbpipe.o \
channel.o
-
-obj-$(CONFIG_VT6656) +=vt6656_stage.o
-- 
2.26.2



[PATCH v2 0/2] staging: vt6656: vt6655: cleaning Makefile

2020-05-10 Thread Matej Dujava
This patchset will remove unused definitions of C Macros, reorder variable 
definition and increase indentation to match visual block.

---
v2: spliting original patch to 2 separate patches

Matej Dujava (2):
  staging: vt6656: vt6655: clean Makefiles
  staging: vt6655: vt6656: change order of makefile variable definitions

 drivers/staging/vt6655/Makefile  | 27 ---
 drivers/staging/vt6655/device_main.c |  1 -
 drivers/staging/vt6656/Makefile  |  7 ++-
 3 files changed, 14 insertions(+), 21 deletions(-)

--
2.26.2



[PATCH v3 0/2] staging: vt6656: vt6655: cleaning Makefile

2020-05-13 Thread Matej Dujava
This patchset will remove unused definitions of C Macros, reorder variable
definition in Makefiles and increase indentation to match visual block.

Macros are removed from vt665x/Makefile and vt6655/device_main.c.

Indentation is fixed in vt6655/Makefile.

Order of variable declaration is changed in vt6656/Makefile.

---
v1: Initial patch
v2: This patch was split from original bigger patch
v3: Added more info about what and why it's removed

Matej Dujava (2):
  staging: vt6656: vt6655: removing unused macros definition Makefiles
  staging: vt6655: vt6656: change order of makefile variable definitions

 drivers/staging/vt6655/Makefile  | 27 ---
 drivers/staging/vt6655/device_main.c |  1 -
 drivers/staging/vt6656/Makefile  |  7 ++-
 3 files changed, 14 insertions(+), 21 deletions(-)

-- 
2.26.2



[PATCH v3 1/2] staging: vt6656: vt6655: removing unused macros definition Makefiles

2020-05-13 Thread Matej Dujava
This patch is removing definition of CFLAGS in Makefile of vt6656 and
vt6655, as those are defining macros that are not used. This will remove
undef of one macro from vt6655/device_main.c, as it is only undef and it is
not used anywhere else, so it is safe to remove it.

Macros are removed from vt665x/Makefile and vt6655/device_main.c.

Signed-off-by: Matej Dujava 
---
v1: Initial patch
v2: This patch was split from original bigger patch
v3: Added more info about what and why it's removed

 drivers/staging/vt6655/Makefile  | 3 ---
 drivers/staging/vt6655/device_main.c | 1 -
 drivers/staging/vt6656/Makefile  | 3 ---
 3 files changed, 7 deletions(-)

diff --git a/drivers/staging/vt6655/Makefile b/drivers/staging/vt6655/Makefile
index a151f30fc46f..e70357ec0af8 100644
--- a/drivers/staging/vt6655/Makefile
+++ b/drivers/staging/vt6655/Makefile
@@ -1,7 +1,4 @@
 # SPDX-License-Identifier: GPL-2.0
-# TODO: all of these should be removed
-ccflags-y := -DLINUX -D__KERNEL__ -D__NO_VERSION__
-ccflags-y += -DHOSTAP
 
 vt6655_stage-y +=  device_main.o \
card.o \
diff --git a/drivers/staging/vt6655/device_main.c 
b/drivers/staging/vt6655/device_main.c
index 5889023d19c4..41cbec4134b0 100644
--- a/drivers/staging/vt6655/device_main.c
+++ b/drivers/staging/vt6655/device_main.c
@@ -32,7 +32,6 @@
  *
  * Revision History:
  */
-#undef __NO_VERSION__
 
 #include 
 #include "device.h"
diff --git a/drivers/staging/vt6656/Makefile b/drivers/staging/vt6656/Makefile
index a0f3862dea75..f696a9d7a143 100644
--- a/drivers/staging/vt6656/Makefile
+++ b/drivers/staging/vt6656/Makefile
@@ -1,7 +1,4 @@
 # SPDX-License-Identifier: GPL-2.0
-# TODO: all of these should be removed
-ccflags-y := -DLINUX -D__KERNEL__ -DEXPORT_SYMTAB -D__NO_VERSION__
-ccflags-y += -DHOSTAP
 
 vt6656_stage-y +=  main_usb.o \
card.o  \
-- 
2.26.2



[PATCH v3 2/2] staging: vt6655: vt6656: change order of makefile variable definitions

2020-05-13 Thread Matej Dujava
This patch will add indentation to multiline variable and put
obj-$(CONFIG_X) at the beginning of the file. This order of variables is
used in other drives, so this will make vt665x Makefiles fit into the
pattern.

Indentation is fixed in vt6655/Makefile.

Order of variable declaration is changed in vt6656/Makefile.

Signed-off-by: Matej Dujava 
---
v1: Initial patch
v2: This patch was split from original bigger patch
v3: Added more info about what and why it's removed

 drivers/staging/vt6655/Makefile | 24 
 drivers/staging/vt6656/Makefile |  4 ++--
 2 files changed, 14 insertions(+), 14 deletions(-)

diff --git a/drivers/staging/vt6655/Makefile b/drivers/staging/vt6655/Makefile
index e70357ec0af8..eda08a1516ab 100644
--- a/drivers/staging/vt6655/Makefile
+++ b/drivers/staging/vt6655/Makefile
@@ -1,15 +1,15 @@
 # SPDX-License-Identifier: GPL-2.0
 
-vt6655_stage-y +=  device_main.o \
-   card.o \
-   channel.o \
-   mac.o \
-   baseband.o \
-   rxtx.o \
-   dpc.o \
-   power.o \
-   srom.o \
-   key.o \
-   rf.o
-
 obj-$(CONFIG_VT6655) +=vt6655_stage.o
+
+vt6655_stage-y +=  device_main.o \
+   card.o \
+   channel.o \
+   mac.o \
+   baseband.o \
+   rxtx.o \
+   dpc.o \
+   power.o \
+   srom.o \
+   key.o \
+   rf.o
diff --git a/drivers/staging/vt6656/Makefile b/drivers/staging/vt6656/Makefile
index f696a9d7a143..aac323d6a684 100644
--- a/drivers/staging/vt6656/Makefile
+++ b/drivers/staging/vt6656/Makefile
@@ -1,5 +1,7 @@
 # SPDX-License-Identifier: GPL-2.0
 
+obj-$(CONFIG_VT6656) +=vt6656_stage.o
+
 vt6656_stage-y +=  main_usb.o \
card.o  \
mac.o   \
@@ -11,5 +13,3 @@ vt6656_stage-y += main_usb.o \
rf.o \
usbpipe.o \
channel.o
-
-obj-$(CONFIG_VT6656) +=vt6656_stage.o
-- 
2.26.2



Re: [PATCH v3 2/2] staging: vt6655: vt6656: change order of makefile variable definitions

2020-05-15 Thread Matej Dujava

On Fri, May 15, 2020 at 03:48:59PM +0200, Greg Kroah-Hartman wrote:

I still fail to understand the need for this patch at all.  It doesn't
clean anything up, nor change anything.  There is no rule that this has
to be in one order or the other, and in fact, I like the order that the
files currently have :)

thanks,

greg k-h


Most of makefiles has pattern that `obj-${}` is before `driver-y` lines.
If this is not something that was intentional, then this patch is not
adding any value indeed.

Few examples that give me that impression:

./gnss/Makefile-# SPDX-License-Identifier: GPL-2.0
./gnss/Makefile-#
./gnss/Makefile-# Makefile for the GNSS subsystem.
./gnss/Makefile-#
./gnss/Makefile-
./gnss/Makefile:obj-$(CONFIG_GNSS)  += gnss.o
./gnss/Makefile-gnss-y := core.o
./gnss/Makefile-
./gnss/Makefile:obj-$(CONFIG_GNSS_SERIAL)   += gnss-serial.o
./gnss/Makefile-gnss-serial-y := serial.o
--snip end--

./.../go7007/Makefile-# SPDX-License-Identifier: GPL-2.0
./.../go7007/Makefile:obj-$(CONFIG_VIDEO_GO7007) += go7007.o
./.../go7007/Makefile:obj-$(CONFIG_VIDEO_GO7007_USB) += go7007-usb.o
./.../go7007/Makefile:obj-$(CONFIG_VIDEO_GO7007_LOADER) += go7007-loader.o
./.../go7007/Makefile:obj-$(CONFIG_VIDEO_GO7007_USB_S2250_BOARD) += s2250.o
./.../go7007/Makefile-
./.../go7007/Makefile-go7007-y := go7007-v4l2.o go7007-driver.o go7007-i2c.
./.../go7007/Makefile-snd-go7007.o
./.../go7007/Makefile-
./.../go7007/Makefile-s2250-y := s2250-board.o
--snip end--

Thanks,
Matej


[PATCH v2 0/7] staging: sm750fb: cleaning code

2017-05-15 Thread Matej Dujava
Folowing patch set cleans some warnings and checkups from checkpatch.pl
and also fix code to better fot linux code style.

Changes since v1 [1]:

* staging: sm750fb: fix length of lines, function calls and declaration
* created better description

* squashed: 
staging: sm750fb: unifying macro definitions
staging: sm750fb: reordering of macro definitions
staging: sm750fb: removing unnecessary binary operations
* delete duplicit macro for MHZ

[1] https://lkml.org/lkml/2017/5/15/284

Matej Dujava (7):
  staging: sm750fb: fix length of lines, function calls and declaration
  staging: sm750fb: unifying macro usage and definitions
  staging: sm750fb: Remove typedef from "typedef enum
_logical_chip_type_t"
  staging: sm750fb: Remove typedef from "typedef enum _clock_type_t"
  staging: sm750fb: Remove typedef from "typedef enum _disp_output_t"
  staging: sm750fb: Remove typedef from "typedef enum _DPMS_t"
  staging: sm750fb: Remove typedef from "typedef enum
_sii164_hot_plug_mode_t"

 drivers/staging/sm750fb/ddk750_chip.c| 27 +-
 drivers/staging/sm750fb/ddk750_chip.h| 16 +++---
 drivers/staging/sm750fb/ddk750_display.c |  2 +-
 drivers/staging/sm750fb/ddk750_display.h | 86 
 drivers/staging/sm750fb/ddk750_dvi.c | 35 +++--
 drivers/staging/sm750fb/ddk750_dvi.h | 43 
 drivers/staging/sm750fb/ddk750_hwi2c.c   | 37 +-
 drivers/staging/sm750fb/ddk750_mode.c|  2 +-
 drivers/staging/sm750fb/ddk750_mode.h|  2 +-
 drivers/staging/sm750fb/ddk750_power.c   |  2 +-
 drivers/staging/sm750fb/ddk750_power.h   |  7 ++-
 drivers/staging/sm750fb/ddk750_sii164.c  | 49 --
 drivers/staging/sm750fb/ddk750_sii164.h  | 26 +-
 drivers/staging/sm750fb/ddk750_swi2c.c   | 21 +++-
 drivers/staging/sm750fb/ddk750_swi2c.h   | 18 ++-
 drivers/staging/sm750fb/sm750.c  | 26 +-
 drivers/staging/sm750fb/sm750.h  |  6 +--
 drivers/staging/sm750fb/sm750_accel.c| 15 +++---
 drivers/staging/sm750fb/sm750_cursor.c   | 17 +++
 drivers/staging/sm750fb/sm750_hw.c   |  4 +-
 20 files changed, 201 insertions(+), 240 deletions(-)

-- 
1.8.3.1



[PATCH v2 6/7] staging: sm750fb: Remove typedef from "typedef enum _DPMS_t"

2017-05-15 Thread Matej Dujava
This patch removes typedefs from enum and renames it from
"typedef enum _DPMS_t" to "enum DPMS" as per kernel coding standards.

Signed-off-by: Matej Dujava 
---
 drivers/staging/sm750fb/ddk750_power.c | 2 +-
 drivers/staging/sm750fb/ddk750_power.h | 7 +++
 2 files changed, 4 insertions(+), 5 deletions(-)

diff --git a/drivers/staging/sm750fb/ddk750_power.c 
b/drivers/staging/sm750fb/ddk750_power.c
index 222ae1a..bc91e73 100644
--- a/drivers/staging/sm750fb/ddk750_power.c
+++ b/drivers/staging/sm750fb/ddk750_power.c
@@ -2,7 +2,7 @@
 #include "ddk750_reg.h"
 #include "ddk750_power.h"
 
-void ddk750_set_dpms(DPMS_t state)
+void ddk750_set_dpms(enum DPMS state)
 {
unsigned int value;
 
diff --git a/drivers/staging/sm750fb/ddk750_power.h 
b/drivers/staging/sm750fb/ddk750_power.h
index 44c4fc5..6764e53 100644
--- a/drivers/staging/sm750fb/ddk750_power.h
+++ b/drivers/staging/sm750fb/ddk750_power.h
@@ -1,20 +1,19 @@
 #ifndef DDK750_POWER_H__
 #define DDK750_POWER_H__
 
-typedef enum _DPMS_t {
+enum DPMS {
crtDPMS_ON = 0x0,
crtDPMS_STANDBY = 0x1,
crtDPMS_SUSPEND = 0x2,
crtDPMS_OFF = 0x3,
-}
-DPMS_t;
+};
 
 #define setDAC(off) {  \
poke32(MISC_CTRL,   \
   (peek32(MISC_CTRL) & ~MISC_CTRL_DAC_POWER_OFF) | (off)); \
 }
 
-void ddk750_set_dpms(DPMS_t state);
+void ddk750_set_dpms(enum DPMS state);
 void sm750_set_power_mode(unsigned int powerMode);
 void sm750_set_current_gate(unsigned int gate);
 
-- 
1.8.3.1



[PATCH v2 4/7] staging: sm750fb: Remove typedef from "typedef enum _clock_type_t"

2017-05-15 Thread Matej Dujava
This patch removes typedefs from enum and renames it from "typedef enum
_clock_type_t" to "enum clock_type" as per kernel coding standards.

Signed-off-by: Matej Dujava 
---
 drivers/staging/sm750fb/ddk750_chip.h | 8 
 drivers/staging/sm750fb/ddk750_mode.c | 2 +-
 drivers/staging/sm750fb/ddk750_mode.h | 2 +-
 drivers/staging/sm750fb/sm750_hw.c| 2 +-
 4 files changed, 7 insertions(+), 7 deletions(-)

diff --git a/drivers/staging/sm750fb/ddk750_chip.h 
b/drivers/staging/sm750fb/ddk750_chip.h
index f2eee2b..e5cb436 100644
--- a/drivers/staging/sm750fb/ddk750_chip.h
+++ b/drivers/staging/sm750fb/ddk750_chip.h
@@ -31,17 +31,17 @@ enum logical_chip_type {
 };
 
 
-typedef enum _clock_type_t {
+enum clock_type {
MXCLK_PLL,
PRIMARY_PLL,
SECONDARY_PLL,
VGA0_PLL,
VGA1_PLL,
-}
-clock_type_t;
+};
+
 
 struct pll_value {
-   clock_type_t clockType;
+   enum clock_type clockType;
unsigned long inputFreq; /* Input clock frequency to the PLL */
 
/* Use this when clockType = PANEL_PLL */
diff --git a/drivers/staging/sm750fb/ddk750_mode.c 
b/drivers/staging/sm750fb/ddk750_mode.c
index bb673e1..24d3447 100644
--- a/drivers/staging/sm750fb/ddk750_mode.c
+++ b/drivers/staging/sm750fb/ddk750_mode.c
@@ -205,7 +205,7 @@ static int programModeRegisters(struct mode_parameter 
*pModeParam,
return ret;
 }
 
-int ddk750_setModeTiming(struct mode_parameter *parm, clock_type_t clock)
+int ddk750_setModeTiming(struct mode_parameter *parm, enum clock_type clock)
 {
struct pll_value pll;
unsigned int uiActualPixelClk;
diff --git a/drivers/staging/sm750fb/ddk750_mode.h 
b/drivers/staging/sm750fb/ddk750_mode.h
index d5eae36..704dbfd 100644
--- a/drivers/staging/sm750fb/ddk750_mode.h
+++ b/drivers/staging/sm750fb/ddk750_mode.h
@@ -32,5 +32,5 @@ struct mode_parameter {
enum spolarity clock_phase_polarity;
 };
 
-int ddk750_setModeTiming(struct mode_parameter *parm, clock_type_t clock);
+int ddk750_setModeTiming(struct mode_parameter *parm, enum clock_type clock);
 #endif
diff --git a/drivers/staging/sm750fb/sm750_hw.c 
b/drivers/staging/sm750fb/sm750_hw.c
index baf1bbd..3cdc4ae 100644
--- a/drivers/staging/sm750fb/sm750_hw.c
+++ b/drivers/staging/sm750fb/sm750_hw.c
@@ -253,7 +253,7 @@ int hw_sm750_crtc_setMode(struct lynxfb_crtc *crtc,
int ret, fmt;
u32 reg;
struct mode_parameter modparm;
-   clock_type_t clock;
+   enum clock_type clock;
struct sm750_dev *sm750_dev;
struct lynxfb_par *par;
 
-- 
1.8.3.1



[PATCH v2 7/7] staging: sm750fb: Remove typedef from "typedef enum _sii164_hot_plug_mode_t"

2017-05-15 Thread Matej Dujava
This patch removes typedefs from enum and renames it from "typedef enum
_sii164_hot_plug_mode_t" to "enum sii164_hot_plug_mode" as per kernel
coding standards.

Signed-off-by: Matej Dujava 
---
 drivers/staging/sm750fb/ddk750_sii164.c | 2 +-
 drivers/staging/sm750fb/ddk750_sii164.h | 4 ++--
 2 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/drivers/staging/sm750fb/ddk750_sii164.c 
b/drivers/staging/sm750fb/ddk750_sii164.c
index 0431833..f7bf84e8 100644
--- a/drivers/staging/sm750fb/ddk750_sii164.c
+++ b/drivers/staging/sm750fb/ddk750_sii164.c
@@ -296,7 +296,7 @@ void sii164SetPower(unsigned char powerUp)
  *  sii164SelectHotPlugDetectionMode
  *  This function selects the mode of the hot plug detection.
  */
-static void sii164SelectHotPlugDetectionMode(sii164_hot_plug_mode_t 
hotPlugMode)
+static void sii164SelectHotPlugDetectionMode(enum sii164_hot_plug_mode 
hotPlugMode)
 {
unsigned char detectReg;
 
diff --git a/drivers/staging/sm750fb/ddk750_sii164.h 
b/drivers/staging/sm750fb/ddk750_sii164.h
index 6968cf5..e06ba72 100644
--- a/drivers/staging/sm750fb/ddk750_sii164.h
+++ b/drivers/staging/sm750fb/ddk750_sii164.h
@@ -4,12 +4,12 @@
 #define USE_DVICHIP
 
 /* Hot Plug detection mode structure */
-typedef enum _sii164_hot_plug_mode_t {
+enum sii164_hot_plug_mode {
SII164_HOTPLUG_DISABLE = 0, /* Disable Hot Plug output bit 
(always high). */
SII164_HOTPLUG_USE_MDI, /* Use Monitor Detect Interrupt 
bit. */
SII164_HOTPLUG_USE_RSEN,/* Use Receiver Sense detect bit. */
SII164_HOTPLUG_USE_HTPLG/* Use Hot Plug detect bit. */
-} sii164_hot_plug_mode_t;
+};
 
 
 /* Silicon Image SiI164 chip prototype */
-- 
1.8.3.1



[PATCH v2 3/7] staging: sm750fb: Remove typedef from "typedef enum _logical_chip_type_t"

2017-05-15 Thread Matej Dujava
This patch removes typedefs from enum and renames it from "typedef enum
_logical_chip_type_t" to "enum logical_chip_type" as per kernel coding
standards.

Signed-off-by: Matej Dujava 
---
 drivers/staging/sm750fb/ddk750_chip.c | 2 +-
 drivers/staging/sm750fb/ddk750_chip.h | 8 
 2 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/drivers/staging/sm750fb/ddk750_chip.c 
b/drivers/staging/sm750fb/ddk750_chip.c
index 64d0a53..f009631 100644
--- a/drivers/staging/sm750fb/ddk750_chip.c
+++ b/drivers/staging/sm750fb/ddk750_chip.c
@@ -7,7 +7,7 @@
 
 static logical_chip_type_t chip;
 
-logical_chip_type_t sm750_get_chip_type(void)
+enum logical_chip_type sm750_get_chip_type(void)
 {
return chip;
 }
diff --git a/drivers/staging/sm750fb/ddk750_chip.h 
b/drivers/staging/sm750fb/ddk750_chip.h
index 2c7a9b9..f2eee2b 100644
--- a/drivers/staging/sm750fb/ddk750_chip.h
+++ b/drivers/staging/sm750fb/ddk750_chip.h
@@ -23,13 +23,13 @@ static inline void poke32(u32 data, u32 addr)
 }
 
 /* This is all the chips recognized by this library */
-typedef enum _logical_chip_type_t {
+enum logical_chip_type {
SM_UNKNOWN,
SM718,
SM750,
SM750LE,
-}
-logical_chip_type_t;
+};
+
 
 typedef enum _clock_type_t {
MXCLK_PLL,
@@ -93,7 +93,7 @@ struct initchip_param {
/* More initialization parameter can be added if needed */
 };
 
-logical_chip_type_t sm750_get_chip_type(void);
+enum logical_chip_type sm750_get_chip_type(void);
 void sm750_set_chip_type(unsigned short devId, u8 revId);
 unsigned int sm750_calc_pll_value(unsigned int request, struct  pll_value 
*pll);
 unsigned int sm750_format_pll_reg(struct pll_value *pPLL);
-- 
1.8.3.1



[PATCH v2 2/7] staging: sm750fb: unifying macro usage and definitions

2017-05-15 Thread Matej Dujava
This patch adds tabs into macro definitions so all rhs are on same column.
Removing MHz macro from ddk_chip.c file and reuse MHZ from sm750.h.

Signed-off-by: Matej Dujava 
---
 drivers/staging/sm750fb/ddk750_chip.c| 18 
 drivers/staging/sm750fb/ddk750_display.h | 78 
 drivers/staging/sm750fb/ddk750_hwi2c.c   |  4 +-
 drivers/staging/sm750fb/sm750.h  |  6 +--
 4 files changed, 52 insertions(+), 54 deletions(-)

diff --git a/drivers/staging/sm750fb/ddk750_chip.c 
b/drivers/staging/sm750fb/ddk750_chip.c
index 944dd25..64d0a53 100644
--- a/drivers/staging/sm750fb/ddk750_chip.c
+++ b/drivers/staging/sm750fb/ddk750_chip.c
@@ -5,8 +5,6 @@
 #include "ddk750_chip.h"
 #include "ddk750_power.h"
 
-#define MHz(x) ((x) * 100)
-
 static logical_chip_type_t chip;
 
 logical_chip_type_t sm750_get_chip_type(void)
@@ -36,7 +34,7 @@ static unsigned int get_mxclk_freq(void)
unsigned int M, N, OD, POD;
 
if (sm750_get_chip_type() == SM750LE)
-   return MHz(130);
+   return MHZ(130);
 
pll_reg = peek32(MXCLK_PLL_CTRL);
M = (pll_reg & PLL_CTRL_M_MASK) >> PLL_CTRL_M_SHIFT;
@@ -98,8 +96,8 @@ static void set_memory_clock(unsigned int frequency)
 * Set the frequency to the maximum frequency
 * that the DDR Memory can take which is 336MHz.
 */
-   if (frequency > MHz(336))
-   frequency = MHz(336);
+   if (frequency > MHZ(336))
+   frequency = MHZ(336);
 
/* Calculate the divisor */
divisor = DIV_ROUND_CLOSEST(get_mxclk_freq(), frequency);
@@ -150,8 +148,8 @@ static void set_master_clock(unsigned int frequency)
 * Set the frequency to the maximum frequency
 * that the SM750 engine can run, which is about 190 MHz.
 */
-   if (frequency > MHz(190))
-   frequency = MHz(190);
+   if (frequency > MHZ(190))
+   frequency = MHZ(190);
 
/* Calculate the divisor */
divisor = DIV_ROUND_CLOSEST(get_mxclk_freq(), frequency);
@@ -237,13 +235,13 @@ int ddk750_init_hw(struct initchip_param *pInitParam)
}
 
/* Set the Main Chip Clock */
-   set_chip_clock(MHz((unsigned int)pInitParam->chipClock));
+   set_chip_clock(MHZ((unsigned int)pInitParam->chipClock));
 
/* Set up memory clock. */
-   set_memory_clock(MHz(pInitParam->memClock));
+   set_memory_clock(MHZ(pInitParam->memClock));
 
/* Set up master clock */
-   set_master_clock(MHz(pInitParam->masterClock));
+   set_master_clock(MHZ(pInitParam->masterClock));
 
/*
 * Reset the memory controller.
diff --git a/drivers/staging/sm750fb/ddk750_display.h 
b/drivers/staging/sm750fb/ddk750_display.h
index 609bf74..b34a2c6 100644
--- a/drivers/staging/sm750fb/ddk750_display.h
+++ b/drivers/staging/sm750fb/ddk750_display.h
@@ -6,83 +6,83 @@
  * 8[29:28]
  */
 
-#define PNL_2_OFFSET 0
-#define PNL_2_MASK (3 << PNL_2_OFFSET)
+#define PNL_2_OFFSET   0
+#define PNL_2_MASK (0x3 << PNL_2_OFFSET)
 #define PNL_2_USAGE(PNL_2_MASK << 16)
-#define PNL_2_PRI  ((0 << PNL_2_OFFSET) | PNL_2_USAGE)
-#define PNL_2_SEC  ((2 << PNL_2_OFFSET) | PNL_2_USAGE)
+#define PNL_2_PRI  ((0x0 << PNL_2_OFFSET) | PNL_2_USAGE)
+#define PNL_2_SEC  ((0x2 << PNL_2_OFFSET) | PNL_2_USAGE)
 
 /*
  * primary timing & plane enable bit
  * 1: 8[8] & 8[2] on
  * 0: both off
  */
-#define PRI_TP_OFFSET 4
-#define PRI_TP_MASK BIT(PRI_TP_OFFSET)
-#define PRI_TP_USAGE (PRI_TP_MASK << 16)
-#define PRI_TP_ON ((0x1 << PRI_TP_OFFSET) | PRI_TP_USAGE)
-#define PRI_TP_OFF ((0x0 << PRI_TP_OFFSET) | PRI_TP_USAGE)
+#define PRI_TP_OFFSET  4
+#define PRI_TP_MASKBIT(PRI_TP_OFFSET)
+#define PRI_TP_USAGE   (PRI_TP_MASK << 16)
+#define PRI_TP_ON  ((0x1 << PRI_TP_OFFSET) | PRI_TP_USAGE)
+#define PRI_TP_OFF ((0x0 << PRI_TP_OFFSET) | PRI_TP_USAGE)
 
 /*
  * panel sequency status
  * 8[27:24]
  */
-#define PNL_SEQ_OFFSET 6
-#define PNL_SEQ_MASK BIT(PNL_SEQ_OFFSET)
-#define PNL_SEQ_USAGE (PNL_SEQ_MASK << 16)
-#define PNL_SEQ_ON (BIT(PNL_SEQ_OFFSET) | PNL_SEQ_USAGE)
-#define PNL_SEQ_OFF ((0 << PNL_SEQ_OFFSET) | PNL_SEQ_USAGE)
+#define PNL_SEQ_OFFSET 6
+#define PNL_SEQ_MASK   BIT(PNL_SEQ_OFFSET)
+#define PNL_SEQ_USAGE  (PNL_SEQ_MASK << 16)
+#define PNL_SEQ_ON ((0x1 << PNL_SEQ_OFFSET) | PNL_SEQ_USAGE)
+#define PNL_SEQ_OFF((0x0 << PNL_SEQ_OFFSET) | PNL_SEQ_USAGE)
 
 /*
  * dual digital output
  * 8[19]
  */
-#define DUAL_TFT_OFFSET 8
-#define DUAL_TFT_MASK BIT(DUAL_TFT_OFFSET)
-#define DUAL_TFT_USAGE (DUAL_TFT_MASK << 16)
-#define DUAL_TFT_ON

[PATCH v2 5/7] staging: sm750fb: Remove typedef from "typedef enum _disp_output_t"

2017-05-15 Thread Matej Dujava
This patch removes typedefs from enum and renames it from "typedef enum
_disp_output_t" to "enum disp_output" as per kernel coding standards.

Signed-off-by: Matej Dujava 
---
 drivers/staging/sm750fb/ddk750_display.c | 2 +-
 drivers/staging/sm750fb/ddk750_display.h | 8 
 drivers/staging/sm750fb/sm750_hw.c   | 2 +-
 3 files changed, 6 insertions(+), 6 deletions(-)

diff --git a/drivers/staging/sm750fb/ddk750_display.c 
b/drivers/staging/sm750fb/ddk750_display.c
index 9b116ed6..13b91c3 100644
--- a/drivers/staging/sm750fb/ddk750_display.c
+++ b/drivers/staging/sm750fb/ddk750_display.c
@@ -110,7 +110,7 @@ static void swPanelPowerSequence(int disp, int delay)
primary_wait_vertical_sync(delay);
 }
 
-void ddk750_setLogicalDispOut(disp_output_t output)
+void ddk750_setLogicalDispOut(enum disp_output output)
 {
unsigned int reg;
 
diff --git a/drivers/staging/sm750fb/ddk750_display.h 
b/drivers/staging/sm750fb/ddk750_display.h
index b34a2c6..4d9ec3b 100644
--- a/drivers/staging/sm750fb/ddk750_display.h
+++ b/drivers/staging/sm750fb/ddk750_display.h
@@ -88,7 +88,7 @@
  * LCD1 means panel path TFT1  & panel path DVI (so enable DAC)
  * CRT means crt path DSUB
  */
-typedef enum _disp_output_t {
+enum disp_output {
do_LCD1_PRI = PNL_2_PRI | PRI_TP_ON | PNL_SEQ_ON | DAC_ON,
do_LCD1_SEC = PNL_2_SEC | SEC_TP_ON | PNL_SEQ_ON | DAC_ON,
do_LCD2_PRI = CRT_2_PRI | PRI_TP_ON | DUAL_TFT_ON,
@@ -99,9 +99,9 @@
 */
do_CRT_PRI = CRT_2_PRI | PRI_TP_ON | DPMS_ON | DAC_ON,
do_CRT_SEC = CRT_2_SEC | SEC_TP_ON | DPMS_ON | DAC_ON,
-}
-disp_output_t;
+};
 
-void ddk750_setLogicalDispOut(disp_output_t output);
+
+void ddk750_setLogicalDispOut(enum disp_output output);
 
 #endif
diff --git a/drivers/staging/sm750fb/sm750_hw.c 
b/drivers/staging/sm750fb/sm750_hw.c
index 3cdc4ae..f7d1e67 100644
--- a/drivers/staging/sm750fb/sm750_hw.c
+++ b/drivers/staging/sm750fb/sm750_hw.c
@@ -184,7 +184,7 @@ int hw_sm750_output_setMode(struct lynxfb_output *output,
struct fb_fix_screeninfo *fix)
 {
int ret;
-   disp_output_t dispSet;
+   enum disp_output dispSet;
int channel;
 
ret = 0;
-- 
1.8.3.1



[PATCH v2 1/7] staging: sm750fb: fix length of lines, function calls and declaration

2017-05-15 Thread Matej Dujava
This patch breaks lines that are longer than 80 characters and joins
together those, that are too short and can be placed at one.

Function calls and declarations are updated to fit kernel code style.

Signed-off-by: Matej Dujava 
---
 drivers/staging/sm750fb/ddk750_chip.c   |  7 +++--
 drivers/staging/sm750fb/ddk750_dvi.c| 35 +--
 drivers/staging/sm750fb/ddk750_dvi.h| 43 ++---
 drivers/staging/sm750fb/ddk750_hwi2c.c  | 33 --
 drivers/staging/sm750fb/ddk750_sii164.c | 49 ++---
 drivers/staging/sm750fb/ddk750_sii164.h | 22 +++
 drivers/staging/sm750fb/ddk750_swi2c.c  | 21 --
 drivers/staging/sm750fb/ddk750_swi2c.h  | 18 
 drivers/staging/sm750fb/sm750.c | 26 -
 drivers/staging/sm750fb/sm750_accel.c   | 15 +-
 drivers/staging/sm750fb/sm750_cursor.c  | 17 +---
 11 files changed, 125 insertions(+), 161 deletions(-)

diff --git a/drivers/staging/sm750fb/ddk750_chip.c 
b/drivers/staging/sm750fb/ddk750_chip.c
index 5e4bfb6..944dd25 100644
--- a/drivers/staging/sm750fb/ddk750_chip.c
+++ b/drivers/staging/sm750fb/ddk750_chip.c
@@ -175,7 +175,7 @@ static void set_master_clock(unsigned int frequency)
}
 
sm750_set_current_gate(reg);
-   }
+   }
 }
 
 unsigned int ddk750_get_vm_size(void)
@@ -224,7 +224,7 @@ int ddk750_init_hw(struct initchip_param *pInitParam)
sm750_set_current_gate(reg);
 
if (sm750_get_chip_type() != SM750LE) {
-   /*  set panel pll and graphic mode via mmio_88 */
+   /* set panel pll and graphic mode via mmio_88 */
reg = peek32(VGA_CONFIGURATION);
reg |= (VGA_CONFIGURATION_PLL | VGA_CONFIGURATION_MODE);
poke32(VGA_CONFIGURATION, reg);
@@ -309,7 +309,8 @@ int ddk750_init_hw(struct initchip_param *pInitParam)
  * M = {1,...,255}
  * N = {2,...,15}
  */
-unsigned int sm750_calc_pll_value(unsigned int request_orig, struct pll_value 
*pll)
+unsigned int sm750_calc_pll_value(unsigned int request_orig,
+ struct pll_value *pll)
 {
/*
 * as sm750 register definition,
diff --git a/drivers/staging/sm750fb/ddk750_dvi.c 
b/drivers/staging/sm750fb/ddk750_dvi.c
index 171ae06..87a199d 100644
--- a/drivers/staging/sm750fb/ddk750_dvi.c
+++ b/drivers/staging/sm750fb/ddk750_dvi.c
@@ -29,26 +29,31 @@
 #endif
 };
 
-int dviInit(
-   unsigned char edgeSelect,
-   unsigned char busSelect,
-   unsigned char dualEdgeClkSelect,
-   unsigned char hsyncEnable,
-   unsigned char vsyncEnable,
-   unsigned char deskewEnable,
-   unsigned char deskewSetting,
-   unsigned char continuousSyncEnable,
-   unsigned char pllFilterEnable,
-   unsigned char pllFilterValue
-   )
+int dviInit(unsigned char edgeSelect,
+   unsigned char busSelect,
+   unsigned char dualEdgeClkSelect,
+   unsigned char hsyncEnable,
+   unsigned char vsyncEnable,
+   unsigned char deskewEnable,
+   unsigned char deskewSetting,
+   unsigned char continuousSyncEnable,
+   unsigned char pllFilterEnable,
+   unsigned char pllFilterValue)
 {
dvi_ctrl_device_t *pCurrentDviCtrl;
 
pCurrentDviCtrl = g_dcftSupportedDviController;
if (pCurrentDviCtrl->pfnInit) {
-   return pCurrentDviCtrl->pfnInit(edgeSelect, busSelect, 
dualEdgeClkSelect, hsyncEnable,
-   vsyncEnable, deskewEnable, 
deskewSetting, continuousSyncEnable,
-   pllFilterEnable, 
pllFilterValue);
+   return pCurrentDviCtrl->pfnInit(edgeSelect,
+   busSelect,
+   dualEdgeClkSelect,
+   hsyncEnable,
+   vsyncEnable,
+   deskewEnable,
+   deskewSetting,
+   continuousSyncEnable,
+   pllFilterEnable,
+   pllFilterValue);
}
return -1; /* error */
 }
diff --git a/drivers/staging/sm750fb/ddk750_dvi.h 
b/drivers/staging/sm750fb/ddk750_dvi.h
index 677939c..4a83945 100644
--- a/drivers/staging/sm750fb/ddk750_dvi.h
+++ b/drivers/staging/sm750fb/ddk750_dvi.h
@@ -3,17 +3,16 @@
 
 /* dvi chip stuffs structros */
 
-typedef long (*PFN_DVICTRL_INIT)(
-   unsigned char edgeSelect,
-   unsigned char busSelect,
-   unsigned char dualEdgeClkSelect,
-   unsigned char hsyncEnable,
-   unsigned char vsyncEnable,
-   unsigned char deskewEnable,
-   unsigned char desk

[PATCH v3 0/7] staging: sm750fb: cleaning code

2017-05-16 Thread Matej Dujava
Folowing patch set cleans some warnings and checkups from checkpatch.pl
and also fix code to better fot linux code style.

Changes since v2 [1]:

* staging: sm750fb: unifying macro usage and definitions
* move definition of MHZ macro from c file to header.

[1] https://lkml.org/lkml/2017/5/15/875

Matej Dujava (7):
  staging: sm750fb: fix length of lines, function calls and declaration
  staging: sm750fb: unifying macro usage and definitions
  staging: sm750fb: Remove typedef from "typedef enum
_logical_chip_type_t"
  staging: sm750fb: Remove typedef from "typedef enum _clock_type_t"
  staging: sm750fb: Remove typedef from "typedef enum _disp_output_t"
  staging: sm750fb: Remove typedef from "typedef enum _DPMS_t"
  staging: sm750fb: Remove typedef from "typedef enum
_sii164_hot_plug_mode_t"

 drivers/staging/sm750fb/ddk750_chip.c| 29 ++-
 drivers/staging/sm750fb/ddk750_chip.h| 21 
 drivers/staging/sm750fb/ddk750_display.c |  2 +-
 drivers/staging/sm750fb/ddk750_display.h | 86 
 drivers/staging/sm750fb/ddk750_dvi.c | 35 +++--
 drivers/staging/sm750fb/ddk750_dvi.h | 43 
 drivers/staging/sm750fb/ddk750_hwi2c.c   | 37 +-
 drivers/staging/sm750fb/ddk750_mode.c|  2 +-
 drivers/staging/sm750fb/ddk750_mode.h|  2 +-
 drivers/staging/sm750fb/ddk750_power.c   |  2 +-
 drivers/staging/sm750fb/ddk750_power.h   |  7 ++-
 drivers/staging/sm750fb/ddk750_sii164.c  | 49 --
 drivers/staging/sm750fb/ddk750_sii164.h  | 26 +-
 drivers/staging/sm750fb/ddk750_swi2c.c   | 21 +++-
 drivers/staging/sm750fb/ddk750_swi2c.h   | 18 ++-
 drivers/staging/sm750fb/sm750.c  | 26 +-
 drivers/staging/sm750fb/sm750.h  |  6 +--
 drivers/staging/sm750fb/sm750_accel.c| 15 +++---
 drivers/staging/sm750fb/sm750_cursor.c   | 17 +++
 drivers/staging/sm750fb/sm750_hw.c   |  4 +-
 20 files changed, 205 insertions(+), 243 deletions(-)

-- 
1.8.3.1



[PATCH v3 4/7] staging: sm750fb: Remove typedef from "typedef enum _clock_type_t"

2017-05-16 Thread Matej Dujava
This patch removes typedefs from enum and renames it from "typedef enum
_clock_type_t" to "enum clock_type" as per kernel coding standards.

Signed-off-by: Matej Dujava 
---
 drivers/staging/sm750fb/ddk750_chip.h | 8 
 drivers/staging/sm750fb/ddk750_mode.c | 2 +-
 drivers/staging/sm750fb/ddk750_mode.h | 2 +-
 drivers/staging/sm750fb/sm750_hw.c| 2 +-
 4 files changed, 7 insertions(+), 7 deletions(-)

diff --git a/drivers/staging/sm750fb/ddk750_chip.h 
b/drivers/staging/sm750fb/ddk750_chip.h
index 7ab0013..f31bdc8 100644
--- a/drivers/staging/sm750fb/ddk750_chip.h
+++ b/drivers/staging/sm750fb/ddk750_chip.h
@@ -32,17 +32,17 @@ enum logical_chip_type {
 };
 
 
-typedef enum _clock_type_t {
+enum clock_type {
MXCLK_PLL,
PRIMARY_PLL,
SECONDARY_PLL,
VGA0_PLL,
VGA1_PLL,
-}
-clock_type_t;
+};
+
 
 struct pll_value {
-   clock_type_t clockType;
+   enum clock_type clockType;
unsigned long inputFreq; /* Input clock frequency to the PLL */
 
/* Use this when clockType = PANEL_PLL */
diff --git a/drivers/staging/sm750fb/ddk750_mode.c 
b/drivers/staging/sm750fb/ddk750_mode.c
index bb673e1..24d3447 100644
--- a/drivers/staging/sm750fb/ddk750_mode.c
+++ b/drivers/staging/sm750fb/ddk750_mode.c
@@ -205,7 +205,7 @@ static int programModeRegisters(struct mode_parameter 
*pModeParam,
return ret;
 }
 
-int ddk750_setModeTiming(struct mode_parameter *parm, clock_type_t clock)
+int ddk750_setModeTiming(struct mode_parameter *parm, enum clock_type clock)
 {
struct pll_value pll;
unsigned int uiActualPixelClk;
diff --git a/drivers/staging/sm750fb/ddk750_mode.h 
b/drivers/staging/sm750fb/ddk750_mode.h
index d5eae36..704dbfd 100644
--- a/drivers/staging/sm750fb/ddk750_mode.h
+++ b/drivers/staging/sm750fb/ddk750_mode.h
@@ -32,5 +32,5 @@ struct mode_parameter {
enum spolarity clock_phase_polarity;
 };
 
-int ddk750_setModeTiming(struct mode_parameter *parm, clock_type_t clock);
+int ddk750_setModeTiming(struct mode_parameter *parm, enum clock_type clock);
 #endif
diff --git a/drivers/staging/sm750fb/sm750_hw.c 
b/drivers/staging/sm750fb/sm750_hw.c
index baf1bbd..3cdc4ae 100644
--- a/drivers/staging/sm750fb/sm750_hw.c
+++ b/drivers/staging/sm750fb/sm750_hw.c
@@ -253,7 +253,7 @@ int hw_sm750_crtc_setMode(struct lynxfb_crtc *crtc,
int ret, fmt;
u32 reg;
struct mode_parameter modparm;
-   clock_type_t clock;
+   enum clock_type clock;
struct sm750_dev *sm750_dev;
struct lynxfb_par *par;
 
-- 
1.8.3.1



[PATCH v3 1/7] staging: sm750fb: fix length of lines, function calls and declaration

2017-05-16 Thread Matej Dujava
This patch breaks lines that are longer than 80 characters and joins
together those, that are too short and can be placed at one.

Function calls and declarations are updated to fit kernel code style.

Signed-off-by: Matej Dujava 
---
 drivers/staging/sm750fb/ddk750_chip.c   |  7 +++--
 drivers/staging/sm750fb/ddk750_dvi.c| 35 +--
 drivers/staging/sm750fb/ddk750_dvi.h| 43 ++---
 drivers/staging/sm750fb/ddk750_hwi2c.c  | 33 --
 drivers/staging/sm750fb/ddk750_sii164.c | 49 ++---
 drivers/staging/sm750fb/ddk750_sii164.h | 22 +++
 drivers/staging/sm750fb/ddk750_swi2c.c  | 21 --
 drivers/staging/sm750fb/ddk750_swi2c.h  | 18 
 drivers/staging/sm750fb/sm750.c | 26 -
 drivers/staging/sm750fb/sm750_accel.c   | 15 +-
 drivers/staging/sm750fb/sm750_cursor.c  | 17 +---
 11 files changed, 125 insertions(+), 161 deletions(-)

diff --git a/drivers/staging/sm750fb/ddk750_chip.c 
b/drivers/staging/sm750fb/ddk750_chip.c
index 5e4bfb6..944dd25 100644
--- a/drivers/staging/sm750fb/ddk750_chip.c
+++ b/drivers/staging/sm750fb/ddk750_chip.c
@@ -175,7 +175,7 @@ static void set_master_clock(unsigned int frequency)
}
 
sm750_set_current_gate(reg);
-   }
+   }
 }
 
 unsigned int ddk750_get_vm_size(void)
@@ -224,7 +224,7 @@ int ddk750_init_hw(struct initchip_param *pInitParam)
sm750_set_current_gate(reg);
 
if (sm750_get_chip_type() != SM750LE) {
-   /*  set panel pll and graphic mode via mmio_88 */
+   /* set panel pll and graphic mode via mmio_88 */
reg = peek32(VGA_CONFIGURATION);
reg |= (VGA_CONFIGURATION_PLL | VGA_CONFIGURATION_MODE);
poke32(VGA_CONFIGURATION, reg);
@@ -309,7 +309,8 @@ int ddk750_init_hw(struct initchip_param *pInitParam)
  * M = {1,...,255}
  * N = {2,...,15}
  */
-unsigned int sm750_calc_pll_value(unsigned int request_orig, struct pll_value 
*pll)
+unsigned int sm750_calc_pll_value(unsigned int request_orig,
+ struct pll_value *pll)
 {
/*
 * as sm750 register definition,
diff --git a/drivers/staging/sm750fb/ddk750_dvi.c 
b/drivers/staging/sm750fb/ddk750_dvi.c
index 171ae06..87a199d 100644
--- a/drivers/staging/sm750fb/ddk750_dvi.c
+++ b/drivers/staging/sm750fb/ddk750_dvi.c
@@ -29,26 +29,31 @@
 #endif
 };
 
-int dviInit(
-   unsigned char edgeSelect,
-   unsigned char busSelect,
-   unsigned char dualEdgeClkSelect,
-   unsigned char hsyncEnable,
-   unsigned char vsyncEnable,
-   unsigned char deskewEnable,
-   unsigned char deskewSetting,
-   unsigned char continuousSyncEnable,
-   unsigned char pllFilterEnable,
-   unsigned char pllFilterValue
-   )
+int dviInit(unsigned char edgeSelect,
+   unsigned char busSelect,
+   unsigned char dualEdgeClkSelect,
+   unsigned char hsyncEnable,
+   unsigned char vsyncEnable,
+   unsigned char deskewEnable,
+   unsigned char deskewSetting,
+   unsigned char continuousSyncEnable,
+   unsigned char pllFilterEnable,
+   unsigned char pllFilterValue)
 {
dvi_ctrl_device_t *pCurrentDviCtrl;
 
pCurrentDviCtrl = g_dcftSupportedDviController;
if (pCurrentDviCtrl->pfnInit) {
-   return pCurrentDviCtrl->pfnInit(edgeSelect, busSelect, 
dualEdgeClkSelect, hsyncEnable,
-   vsyncEnable, deskewEnable, 
deskewSetting, continuousSyncEnable,
-   pllFilterEnable, 
pllFilterValue);
+   return pCurrentDviCtrl->pfnInit(edgeSelect,
+   busSelect,
+   dualEdgeClkSelect,
+   hsyncEnable,
+   vsyncEnable,
+   deskewEnable,
+   deskewSetting,
+   continuousSyncEnable,
+   pllFilterEnable,
+   pllFilterValue);
}
return -1; /* error */
 }
diff --git a/drivers/staging/sm750fb/ddk750_dvi.h 
b/drivers/staging/sm750fb/ddk750_dvi.h
index 677939c..4a83945 100644
--- a/drivers/staging/sm750fb/ddk750_dvi.h
+++ b/drivers/staging/sm750fb/ddk750_dvi.h
@@ -3,17 +3,16 @@
 
 /* dvi chip stuffs structros */
 
-typedef long (*PFN_DVICTRL_INIT)(
-   unsigned char edgeSelect,
-   unsigned char busSelect,
-   unsigned char dualEdgeClkSelect,
-   unsigned char hsyncEnable,
-   unsigned char vsyncEnable,
-   unsigned char deskewEnable,
-   unsigned char desk

[PATCH v3 6/7] staging: sm750fb: Remove typedef from "typedef enum _DPMS_t"

2017-05-16 Thread Matej Dujava
This patch removes typedefs from enum and renames it from
"typedef enum _DPMS_t" to "enum DPMS" as per kernel coding standards.

Signed-off-by: Matej Dujava 
---
 drivers/staging/sm750fb/ddk750_power.c | 2 +-
 drivers/staging/sm750fb/ddk750_power.h | 7 +++
 2 files changed, 4 insertions(+), 5 deletions(-)

diff --git a/drivers/staging/sm750fb/ddk750_power.c 
b/drivers/staging/sm750fb/ddk750_power.c
index 222ae1a..bc91e73 100644
--- a/drivers/staging/sm750fb/ddk750_power.c
+++ b/drivers/staging/sm750fb/ddk750_power.c
@@ -2,7 +2,7 @@
 #include "ddk750_reg.h"
 #include "ddk750_power.h"
 
-void ddk750_set_dpms(DPMS_t state)
+void ddk750_set_dpms(enum DPMS state)
 {
unsigned int value;
 
diff --git a/drivers/staging/sm750fb/ddk750_power.h 
b/drivers/staging/sm750fb/ddk750_power.h
index 44c4fc5..6764e53 100644
--- a/drivers/staging/sm750fb/ddk750_power.h
+++ b/drivers/staging/sm750fb/ddk750_power.h
@@ -1,20 +1,19 @@
 #ifndef DDK750_POWER_H__
 #define DDK750_POWER_H__
 
-typedef enum _DPMS_t {
+enum DPMS {
crtDPMS_ON = 0x0,
crtDPMS_STANDBY = 0x1,
crtDPMS_SUSPEND = 0x2,
crtDPMS_OFF = 0x3,
-}
-DPMS_t;
+};
 
 #define setDAC(off) {  \
poke32(MISC_CTRL,   \
   (peek32(MISC_CTRL) & ~MISC_CTRL_DAC_POWER_OFF) | (off)); \
 }
 
-void ddk750_set_dpms(DPMS_t state);
+void ddk750_set_dpms(enum DPMS state);
 void sm750_set_power_mode(unsigned int powerMode);
 void sm750_set_current_gate(unsigned int gate);
 
-- 
1.8.3.1



[PATCH v3 7/7] staging: sm750fb: Remove typedef from "typedef enum _sii164_hot_plug_mode_t"

2017-05-16 Thread Matej Dujava
This patch removes typedefs from enum and renames it from "typedef enum
_sii164_hot_plug_mode_t" to "enum sii164_hot_plug_mode" as per kernel
coding standards.

Signed-off-by: Matej Dujava 
---
 drivers/staging/sm750fb/ddk750_sii164.c | 2 +-
 drivers/staging/sm750fb/ddk750_sii164.h | 4 ++--
 2 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/drivers/staging/sm750fb/ddk750_sii164.c 
b/drivers/staging/sm750fb/ddk750_sii164.c
index 0431833..f7bf84e8 100644
--- a/drivers/staging/sm750fb/ddk750_sii164.c
+++ b/drivers/staging/sm750fb/ddk750_sii164.c
@@ -296,7 +296,7 @@ void sii164SetPower(unsigned char powerUp)
  *  sii164SelectHotPlugDetectionMode
  *  This function selects the mode of the hot plug detection.
  */
-static void sii164SelectHotPlugDetectionMode(sii164_hot_plug_mode_t 
hotPlugMode)
+static void sii164SelectHotPlugDetectionMode(enum sii164_hot_plug_mode 
hotPlugMode)
 {
unsigned char detectReg;
 
diff --git a/drivers/staging/sm750fb/ddk750_sii164.h 
b/drivers/staging/sm750fb/ddk750_sii164.h
index 6968cf5..e06ba72 100644
--- a/drivers/staging/sm750fb/ddk750_sii164.h
+++ b/drivers/staging/sm750fb/ddk750_sii164.h
@@ -4,12 +4,12 @@
 #define USE_DVICHIP
 
 /* Hot Plug detection mode structure */
-typedef enum _sii164_hot_plug_mode_t {
+enum sii164_hot_plug_mode {
SII164_HOTPLUG_DISABLE = 0, /* Disable Hot Plug output bit 
(always high). */
SII164_HOTPLUG_USE_MDI, /* Use Monitor Detect Interrupt 
bit. */
SII164_HOTPLUG_USE_RSEN,/* Use Receiver Sense detect bit. */
SII164_HOTPLUG_USE_HTPLG/* Use Hot Plug detect bit. */
-} sii164_hot_plug_mode_t;
+};
 
 
 /* Silicon Image SiI164 chip prototype */
-- 
1.8.3.1



[PATCH v3 5/7] staging: sm750fb: Remove typedef from "typedef enum _disp_output_t"

2017-05-16 Thread Matej Dujava
This patch removes typedefs from enum and renames it from "typedef enum
_disp_output_t" to "enum disp_output" as per kernel coding standards.

Signed-off-by: Matej Dujava 
---
 drivers/staging/sm750fb/ddk750_display.c | 2 +-
 drivers/staging/sm750fb/ddk750_display.h | 8 
 drivers/staging/sm750fb/sm750_hw.c   | 2 +-
 3 files changed, 6 insertions(+), 6 deletions(-)

diff --git a/drivers/staging/sm750fb/ddk750_display.c 
b/drivers/staging/sm750fb/ddk750_display.c
index 9b116ed6..13b91c3 100644
--- a/drivers/staging/sm750fb/ddk750_display.c
+++ b/drivers/staging/sm750fb/ddk750_display.c
@@ -110,7 +110,7 @@ static void swPanelPowerSequence(int disp, int delay)
primary_wait_vertical_sync(delay);
 }
 
-void ddk750_setLogicalDispOut(disp_output_t output)
+void ddk750_setLogicalDispOut(enum disp_output output)
 {
unsigned int reg;
 
diff --git a/drivers/staging/sm750fb/ddk750_display.h 
b/drivers/staging/sm750fb/ddk750_display.h
index b34a2c6..4d9ec3b 100644
--- a/drivers/staging/sm750fb/ddk750_display.h
+++ b/drivers/staging/sm750fb/ddk750_display.h
@@ -88,7 +88,7 @@
  * LCD1 means panel path TFT1  & panel path DVI (so enable DAC)
  * CRT means crt path DSUB
  */
-typedef enum _disp_output_t {
+enum disp_output {
do_LCD1_PRI = PNL_2_PRI | PRI_TP_ON | PNL_SEQ_ON | DAC_ON,
do_LCD1_SEC = PNL_2_SEC | SEC_TP_ON | PNL_SEQ_ON | DAC_ON,
do_LCD2_PRI = CRT_2_PRI | PRI_TP_ON | DUAL_TFT_ON,
@@ -99,9 +99,9 @@
 */
do_CRT_PRI = CRT_2_PRI | PRI_TP_ON | DPMS_ON | DAC_ON,
do_CRT_SEC = CRT_2_SEC | SEC_TP_ON | DPMS_ON | DAC_ON,
-}
-disp_output_t;
+};
 
-void ddk750_setLogicalDispOut(disp_output_t output);
+
+void ddk750_setLogicalDispOut(enum disp_output output);
 
 #endif
diff --git a/drivers/staging/sm750fb/sm750_hw.c 
b/drivers/staging/sm750fb/sm750_hw.c
index 3cdc4ae..f7d1e67 100644
--- a/drivers/staging/sm750fb/sm750_hw.c
+++ b/drivers/staging/sm750fb/sm750_hw.c
@@ -184,7 +184,7 @@ int hw_sm750_output_setMode(struct lynxfb_output *output,
struct fb_fix_screeninfo *fix)
 {
int ret;
-   disp_output_t dispSet;
+   enum disp_output dispSet;
int channel;
 
ret = 0;
-- 
1.8.3.1



[PATCH v3 3/7] staging: sm750fb: Remove typedef from "typedef enum _logical_chip_type_t"

2017-05-16 Thread Matej Dujava
This patch removes typedefs from enum and renames it from "typedef enum
_logical_chip_type_t" to "enum logical_chip_type" as per kernel coding
standards.

Signed-off-by: Matej Dujava 
---
 drivers/staging/sm750fb/ddk750_chip.c | 4 ++--
 drivers/staging/sm750fb/ddk750_chip.h | 8 
 2 files changed, 6 insertions(+), 6 deletions(-)

diff --git a/drivers/staging/sm750fb/ddk750_chip.c 
b/drivers/staging/sm750fb/ddk750_chip.c
index 64d0a53..059db42 100644
--- a/drivers/staging/sm750fb/ddk750_chip.c
+++ b/drivers/staging/sm750fb/ddk750_chip.c
@@ -5,9 +5,9 @@
 #include "ddk750_chip.h"
 #include "ddk750_power.h"
 
-static logical_chip_type_t chip;
+static enum logical_chip_type chip;
 
-logical_chip_type_t sm750_get_chip_type(void)
+enum logical_chip_type sm750_get_chip_type(void)
 {
return chip;
 }
diff --git a/drivers/staging/sm750fb/ddk750_chip.h 
b/drivers/staging/sm750fb/ddk750_chip.h
index bd7b359..7ab0013 100644
--- a/drivers/staging/sm750fb/ddk750_chip.h
+++ b/drivers/staging/sm750fb/ddk750_chip.h
@@ -24,13 +24,13 @@ static inline void poke32(u32 data, u32 addr)
 }
 
 /* This is all the chips recognized by this library */
-typedef enum _logical_chip_type_t {
+enum logical_chip_type {
SM_UNKNOWN,
SM718,
SM750,
SM750LE,
-}
-logical_chip_type_t;
+};
+
 
 typedef enum _clock_type_t {
MXCLK_PLL,
@@ -94,7 +94,7 @@ struct initchip_param {
/* More initialization parameter can be added if needed */
 };
 
-logical_chip_type_t sm750_get_chip_type(void);
+enum logical_chip_type sm750_get_chip_type(void);
 void sm750_set_chip_type(unsigned short devId, u8 revId);
 unsigned int sm750_calc_pll_value(unsigned int request, struct  pll_value 
*pll);
 unsigned int sm750_format_pll_reg(struct pll_value *pPLL);
-- 
1.8.3.1



[PATCH v3 2/7] staging: sm750fb: unifying macro usage and definitions

2017-05-16 Thread Matej Dujava
This patch adds tabs into macro definitions so all rhs are on same column.
Move MHz macro from ddk_chip.c to ddk_chip.h.

Signed-off-by: Matej Dujava 
---
 drivers/staging/sm750fb/ddk750_chip.c| 18 
 drivers/staging/sm750fb/ddk750_chip.h|  5 +-
 drivers/staging/sm750fb/ddk750_display.h | 78 
 drivers/staging/sm750fb/ddk750_hwi2c.c   |  4 +-
 drivers/staging/sm750fb/sm750.h  |  6 +--
 5 files changed, 55 insertions(+), 56 deletions(-)

diff --git a/drivers/staging/sm750fb/ddk750_chip.c 
b/drivers/staging/sm750fb/ddk750_chip.c
index 944dd25..64d0a53 100644
--- a/drivers/staging/sm750fb/ddk750_chip.c
+++ b/drivers/staging/sm750fb/ddk750_chip.c
@@ -5,8 +5,6 @@
 #include "ddk750_chip.h"
 #include "ddk750_power.h"
 
-#define MHz(x) ((x) * 100)
-
 static logical_chip_type_t chip;
 
 logical_chip_type_t sm750_get_chip_type(void)
@@ -36,7 +34,7 @@ static unsigned int get_mxclk_freq(void)
unsigned int M, N, OD, POD;
 
if (sm750_get_chip_type() == SM750LE)
-   return MHz(130);
+   return MHZ(130);
 
pll_reg = peek32(MXCLK_PLL_CTRL);
M = (pll_reg & PLL_CTRL_M_MASK) >> PLL_CTRL_M_SHIFT;
@@ -98,8 +96,8 @@ static void set_memory_clock(unsigned int frequency)
 * Set the frequency to the maximum frequency
 * that the DDR Memory can take which is 336MHz.
 */
-   if (frequency > MHz(336))
-   frequency = MHz(336);
+   if (frequency > MHZ(336))
+   frequency = MHZ(336);
 
/* Calculate the divisor */
divisor = DIV_ROUND_CLOSEST(get_mxclk_freq(), frequency);
@@ -150,8 +148,8 @@ static void set_master_clock(unsigned int frequency)
 * Set the frequency to the maximum frequency
 * that the SM750 engine can run, which is about 190 MHz.
 */
-   if (frequency > MHz(190))
-   frequency = MHz(190);
+   if (frequency > MHZ(190))
+   frequency = MHZ(190);
 
/* Calculate the divisor */
divisor = DIV_ROUND_CLOSEST(get_mxclk_freq(), frequency);
@@ -237,13 +235,13 @@ int ddk750_init_hw(struct initchip_param *pInitParam)
}
 
/* Set the Main Chip Clock */
-   set_chip_clock(MHz((unsigned int)pInitParam->chipClock));
+   set_chip_clock(MHZ((unsigned int)pInitParam->chipClock));
 
/* Set up memory clock. */
-   set_memory_clock(MHz(pInitParam->memClock));
+   set_memory_clock(MHZ(pInitParam->memClock));
 
/* Set up master clock */
-   set_master_clock(MHz(pInitParam->masterClock));
+   set_master_clock(MHZ(pInitParam->masterClock));
 
/*
 * Reset the memory controller.
diff --git a/drivers/staging/sm750fb/ddk750_chip.h 
b/drivers/staging/sm750fb/ddk750_chip.h
index 2c7a9b9..bd7b359 100644
--- a/drivers/staging/sm750fb/ddk750_chip.h
+++ b/drivers/staging/sm750fb/ddk750_chip.h
@@ -1,8 +1,9 @@
 #ifndef DDK750_CHIP_H__
 #define DDK750_CHIP_H__
-#define DEFAULT_INPUT_CLOCK 14318181 /* Default reference clock */
+#define MHZ(x) ((x) * 100)
+#define DEFAULT_INPUT_CLOCK14318181 /* Default reference clock */
 #ifndef SM750LE_REVISION_ID
-#define SM750LE_REVISION_ID ((unsigned char)0xfe)
+#define SM750LE_REVISION_ID((unsigned char)0xfe)
 #endif
 
 #include 
diff --git a/drivers/staging/sm750fb/ddk750_display.h 
b/drivers/staging/sm750fb/ddk750_display.h
index 609bf74..b34a2c6 100644
--- a/drivers/staging/sm750fb/ddk750_display.h
+++ b/drivers/staging/sm750fb/ddk750_display.h
@@ -6,83 +6,83 @@
  * 8[29:28]
  */
 
-#define PNL_2_OFFSET 0
-#define PNL_2_MASK (3 << PNL_2_OFFSET)
+#define PNL_2_OFFSET   0
+#define PNL_2_MASK (0x3 << PNL_2_OFFSET)
 #define PNL_2_USAGE(PNL_2_MASK << 16)
-#define PNL_2_PRI  ((0 << PNL_2_OFFSET) | PNL_2_USAGE)
-#define PNL_2_SEC  ((2 << PNL_2_OFFSET) | PNL_2_USAGE)
+#define PNL_2_PRI  ((0x0 << PNL_2_OFFSET) | PNL_2_USAGE)
+#define PNL_2_SEC  ((0x2 << PNL_2_OFFSET) | PNL_2_USAGE)
 
 /*
  * primary timing & plane enable bit
  * 1: 8[8] & 8[2] on
  * 0: both off
  */
-#define PRI_TP_OFFSET 4
-#define PRI_TP_MASK BIT(PRI_TP_OFFSET)
-#define PRI_TP_USAGE (PRI_TP_MASK << 16)
-#define PRI_TP_ON ((0x1 << PRI_TP_OFFSET) | PRI_TP_USAGE)
-#define PRI_TP_OFF ((0x0 << PRI_TP_OFFSET) | PRI_TP_USAGE)
+#define PRI_TP_OFFSET  4
+#define PRI_TP_MASKBIT(PRI_TP_OFFSET)
+#define PRI_TP_USAGE   (PRI_TP_MASK << 16)
+#define PRI_TP_ON  ((0x1 << PRI_TP_OFFSET) | PRI_TP_USAGE)
+#define PRI_TP_OFF ((0x0 << PRI_TP_OFFSET) | PRI_TP_USAGE)
 
 /*
  * panel sequency status
  * 8[27:24]
  */
-#define PNL_SEQ_OFFSET 6
-#define PNL_SEQ_MASK BIT(PNL_SEQ_OFFSET

[PATCH] kernel/cpu.c: fix many errors related to style.

2017-05-06 Thread Matej Dujava
This patch fixes the checkpatch.pl warning:
ERROR: spaces required around that '=' (ctx:VxW)
WARNING: Block comments use a trailing */ on a separate line
CHECK: Please don't use multiple blank lines
CHECK: Blank lines aren't necessary before a close brace '}'
CHECK: braces {} should be used on all arms of this statement
CHECK: Blank lines aren't necessary after an open brace '{'

Signed-off-by: Matej Dujava 
---
 kernel/cpu.c | 15 +++
 1 file changed, 7 insertions(+), 8 deletions(-)

diff --git a/kernel/cpu.c b/kernel/cpu.c
index 9ae6fbe5b5cf..ef3da68f2055 100644
--- a/kernel/cpu.c
+++ b/kernel/cpu.c
@@ -234,7 +234,6 @@ static struct {
 #define cpuhp_lock_acquire()  lock_map_acquire(&cpu_hotplug.dep_map)
 #define cpuhp_lock_release()  lock_map_release(&cpu_hotplug.dep_map)

-
 void get_online_cpus(void)
 {
might_sleep();
@@ -262,7 +261,6 @@ void put_online_cpus(void)
wake_up(&cpu_hotplug.wq);

cpuhp_lock_release();
-
 }
 EXPORT_SYMBOL_GPL(put_online_cpus);

@@ -1004,9 +1002,9 @@ int freeze_secondary_cpus(int primary)
trace_suspend_resume(TPS("CPU_OFF"), cpu, true);
error = _cpu_down(cpu, 1, CPUHP_OFFLINE);
trace_suspend_resume(TPS("CPU_OFF"), cpu, false);
-   if (!error)
+   if (!error) {
cpumask_set_cpu(cpu, frozen_cpus);
-   else {
+   } else {
pr_err("Error taking CPU%d down: %d\n", cpu, error);
break;
}
@@ -1110,7 +1108,6 @@ cpu_hotplug_pm_callback(struct notifier_block *nb,
return NOTIFY_OK;
 }

-
 static int __init cpu_hotplug_pm_sync_init(void)
 {
/*
@@ -1137,7 +1134,7 @@ static struct cpuhp_step cpuhp_bp_states[] = {
.teardown.single= NULL,
},
 #ifdef CONFIG_SMP
-   [CPUHP_CREATE_THREADS]= {
+   [CPUHP_CREATE_THREADS] = {
.name   = "threads:prepare",
.startup.single = smpboot_create_threads,
.teardown.single= NULL,
@@ -1241,8 +1238,10 @@ static struct cpuhp_step cpuhp_ap_states[] = {
.startup.single = NULL,
.teardown.single= rcutree_dying_cpu,
},
-   /* Entry state on starting. Interrupts enabled from here on. Transient
-* state for synchronsization */
+   /*
+* Entry state on starting. Interrupts enabled from here on. Transient
+* state for synchronsization
+*/
[CPUHP_AP_ONLINE] = {
.name   = "ap:online",
},
--
2.12.2



Re: [PATCH v3 2/7] staging: sm750fb: unifying macro usage and definitions

2017-06-13 Thread Matej Dujava
On Thu, May 18, 2017 at 03:56:26PM +0200, Greg KH wrote:
> On Tue, May 16, 2017 at 11:20:18AM +0200, Matej Dujava wrote:
> > This patch adds tabs into macro definitions so all rhs are on same column.
> > Move MHz macro from ddk_chip.c to ddk_chip.h.
> > 
> > Signed-off-by: Matej Dujava 
> > ---
> >  drivers/staging/sm750fb/ddk750_chip.c| 18 
> >  drivers/staging/sm750fb/ddk750_chip.h|  5 +-
> >  drivers/staging/sm750fb/ddk750_display.h | 78 
> > 
> >  drivers/staging/sm750fb/ddk750_hwi2c.c   |  4 +-
> >  drivers/staging/sm750fb/sm750.h  |  6 +--
> >  5 files changed, 55 insertions(+), 56 deletions(-)
> > 
> > diff --git a/drivers/staging/sm750fb/ddk750_chip.c 
> > b/drivers/staging/sm750fb/ddk750_chip.c
> > index 944dd25..64d0a53 100644
> > --- a/drivers/staging/sm750fb/ddk750_chip.c
> > +++ b/drivers/staging/sm750fb/ddk750_chip.c
> > @@ -5,8 +5,6 @@
> >  #include "ddk750_chip.h"
> >  #include "ddk750_power.h"
> >  
> > -#define MHz(x) ((x) * 100)
> > -
> >  static logical_chip_type_t chip;
> >  
> >  logical_chip_type_t sm750_get_chip_type(void)
> > @@ -36,7 +34,7 @@ static unsigned int get_mxclk_freq(void)
> > unsigned int M, N, OD, POD;
> >  
> > if (sm750_get_chip_type() == SM750LE)
> > -   return MHz(130);
> > +   return MHZ(130);
> 
> But MHz makes more sense, don't you think so?
> 
> Please leave that as-is.
> 
> thanks,
> 
> greg k-h

I see it, but there is:
sm750.h:#define MHZ(x)  ((x) * 100)
ddk750_chip.c:#define MHz(x)((x) * 100)
and I think macros should be in header files, so I removed declaration
in c file.

Thank you,

Matej Dujava