MLK-18558-02: hdp: move common function to hdp API library.
authorSandor Yu <Sandor.yu@nxp.com>
Mon, 11 Jun 2018 07:56:48 +0000 (15:56 +0800)
committerLeonard Crestez <leonard.crestez@nxp.com>
Wed, 17 Apr 2019 23:51:34 +0000 (02:51 +0300)
Move common functions to hdp API library.
Change coding style.

Signed-off-by: Sandor Yu <Sandor.yu@nxp.com>
drivers/gpu/drm/imx/hdp/API_AFE_ss28fdsoi_kiran_hdmitx.c
drivers/gpu/drm/imx/hdp/API_AFE_ss28fdsoi_kiran_hdmitx.h
drivers/mxc/hdp/API_AFE.c
drivers/mxc/hdp/API_AFE.h

index b8ab5b7..8580ab9 100644 (file)
 #include "ss28fdsoi_hdmitx_table.h"
 #include "imx-hdp.h"
 
-static int inside(u32 value, u32 left_sharp_corner, u32 right_sharp_corner)
-{
-       if (value < left_sharp_corner)
-               return 0;
-       if (value > right_sharp_corner)
-               return 0;
-       return 1;
-}
-
-int get_table_row_match_column(const u32 *array, u32 table_rows,
-                              u32 table_cols, u32 start_row,
-                              u32 column_to_search,
-                              u32 value_to_search_in_column)
-{
-       u32 idx_cols, idx_rows;
-       u32 value;
-       for (idx_rows = start_row; idx_rows < table_rows; idx_rows++) {
-               for (idx_cols = 0; idx_cols < table_cols; idx_cols++) {
-                       if (idx_cols == column_to_search) {
-                               value =
-                                   *((array + idx_rows * table_cols) +
-                                     idx_cols);
-                               if (value == value_to_search_in_column) {
-                                       return idx_rows;
-                               }
-                       }
-               }
-       }
-       return -1;
-}
-
-int get_table_row(const u32 *array, u32 table_rows,
-                 u32 table_cols, u32 variable_in_range,
-                 u32 range_min_column, u32 range_max_column,
-                 u32 column_to_search, u32 column_value)
-{
-       u32 i = 0;
-       while (1) {
-               i = get_table_row_match_column(array, table_rows, table_cols, i,
-                                              column_to_search, column_value);
-               if (i + 1) {
-                       if (inside(variable_in_range,
-                                  *((array + i * table_cols) +
-                                    range_min_column),
-                                  *((array + i * table_cols) +
-                                    range_max_column))) {
-                               break;
-                       }
-                       i++;
-               } else {
-                       break;
-               }
-       }
-       return i;
-}
-
-int phy_cfg_hdp_ss28fdsoi(state_struct *state, int num_lanes, struct drm_display_mode *mode, int bpp,
-               VIC_PXL_ENCODING_FORMAT format)
+int phy_cfg_hdp_ss28fdsoi(state_struct *state,
+                                       int num_lanes,
+                                       struct drm_display_mode *mode,
+                                       int bpp,
+                                       VIC_PXL_ENCODING_FORMAT format)
 {
        const int phy_reset_workaround = 0;
        u32 vco_freq_khz;
        unsigned char i;
        u32 row, feedback_factor;
-       uint32_t reg_val;
+       u32 reg_val;
        int pixel_freq_khz = mode->clock;
-       uint32_t character_clock_ratio_num = 1;
-       uint32_t character_clock_ratio_den = 1;
+       u32 character_clock_ratio_num = 1;
+       u32 character_clock_ratio_den = 1;
        int character_freq_khz;
        u32 ftemp;
        clk_ratio_t clk_ratio = CLK_RATIO_1_1;
index 2374e00..4100762 100644 (file)
 int phy_cfg_hdp_ss28fdsoi(state_struct *state, int num_lanes,
                                struct drm_display_mode *mode, int bpp, VIC_PXL_ENCODING_FORMAT format);
 int hdmi_tx_kiran_power_configuration_seq(state_struct *state, int num_lanes);
-int get_table_row_match_column(const u32 *array, u32 table_rows,
-                              u32 table_cols, u32 start_row,
-                              u32 column_to_search,
-                              u32 value_to_search_in_column);
-int get_table_row(const u32 *array, u32 table_rows,
-                 u32 table_cols, u32 variable_in_range,
-                 u32 range_min_column, u32 range_max_column,
-                 u32 column_to_search, u32 column_value);
 
 #endif
index f252b74..f4ce67b 100644 (file)
@@ -105,3 +105,67 @@ int set_reg_value(reg_field_t reg_field)
 {
        return reg_field.value << reg_field.lsb;
 }
+
+int inside(u32 value, u32 left_sharp_corner, u32 right_sharp_corner)
+{
+       if (value < left_sharp_corner)
+               return 0;
+       if (value > right_sharp_corner)
+               return 0;
+       return 1;
+}
+
+int get_table_row_match_column(
+                               const u32 *array,
+                               u32 table_rows,
+                               u32 table_cols,
+                               u32 start_row,
+                               u32 column_to_search,
+                               u32 value_to_search_in_column)
+{
+       u32 idx_cols, idx_rows;
+       u32 value;
+
+       for (idx_rows = start_row; idx_rows < table_rows; idx_rows++) {
+               for (idx_cols = 0; idx_cols < table_cols; idx_cols++) {
+                       if (idx_cols == column_to_search) {
+                               value = *((array + idx_rows * table_cols) +
+                                     idx_cols);
+                               if (value == value_to_search_in_column) {
+                                       return idx_rows;
+                               }
+                       }
+               }
+       }
+       return -1;
+}
+
+int get_table_row(
+                       const u32 *array,
+                       u32 table_rows,
+                       u32 table_cols,
+                       u32 variable_in_range,
+                       u32 range_min_column,
+                       u32 range_max_column,
+                       u32 column_to_search,
+                       u32 column_value)
+{
+       u32 i = 0;
+       while (1) {
+               i = get_table_row_match_column(array, table_rows, table_cols, i,
+                                              column_to_search, column_value);
+               if (i + 1) {
+                       if (inside(variable_in_range,
+                                  *((array + i * table_cols) +
+                                    range_min_column),
+                                  *((array + i * table_cols) +
+                                    range_max_column))) {
+                               break;
+                       }
+                       i++;
+               } else {
+                       break;
+               }
+       }
+       return i;
+}
index 1c93af2..b266299 100644 (file)
@@ -94,5 +94,13 @@ void AFE_power(state_struct *state, int num_lanes,
               ENUM_AFE_LINK_RATE link_rate);
 void set_field_value(reg_field_t *reg_field, u32 value);
 int set_reg_value(reg_field_t reg_field);
-
+int inside(u32 value, u32 left_sharp_corner, u32 right_sharp_corner);
+int get_table_row_match_column(const u32 *array, u32 table_rows,
+                              u32 table_cols, u32 start_row,
+                              u32 column_to_search,
+                              u32 value_to_search_in_column);
+int get_table_row(const u32 *array, u32 table_rows,
+                 u32 table_cols, u32 variable_in_range,
+                 u32 range_min_column, u32 range_max_column,
+                 u32 column_to_search, u32 column_value);
 #endif