[uboot] Upgrade the MMF SDK from V4.0.0 to V4.1.0

1. add cv181x functions
	2. Delete some useless files and add .gitignore

Change-Id: Iea2b2fa43b5a1152e5e99fb32b88f8d2c249251a
This commit is contained in:
wangliang.wang
2023-03-10 00:31:09 +08:00
committed by sam.xiang
parent aa1b345a00
commit 607778300c
102 changed files with 11818 additions and 1862 deletions

View File

@ -6,9 +6,10 @@
#include <common.h>
#include <clk.h>
#include <asm/gpio.h>
#include <asm/hardware.h>
//#include <asm/hardware.h>
#include <asm/io.h>
#include <linux/stringify.h>
#include <linux/delay.h>
#include "reg.h"
#include "vip_common.h"
@ -20,6 +21,9 @@
* bit[0]: dcs cmd mode. 0(hw)/1(sw)
*/
static int cmd_mode = 1;
unsigned int pixel_clk;
u8 lane_num;
u8 bits;
static void _fill_disp_timing(struct sclr_disp_timing *timing, struct sync_info_s *sync_info)
{
@ -84,10 +88,8 @@ int mipi_tx_set_combo_dev_cfg(const struct combo_dev_cfg_s *dev_cfg)
{
int ret, i;
bool data_en[LANE_MAX_NUM] = {false, false, false, false, false};
u8 lane_num = 0;
struct sclr_disp_timing timing;
enum sclr_dsi_fmt dsi_fmt;
u8 bits;
bool preamble_on = false;
struct combo_dev_cfg_s dev_cfg_t = *dev_cfg;
struct disp_ctrl_gpios ctrl_gpios;
@ -99,14 +101,14 @@ int mipi_tx_set_combo_dev_cfg(const struct combo_dev_cfg_s *dev_cfg)
data_en[i] = false;
continue;
}
dphy_dsi_set_lane(i, dev_cfg_t.lane_id[i], dev_cfg_t.lane_pn_swap[i]);
dphy_dsi_set_lane(i, dev_cfg_t.lane_id[i], dev_cfg_t.lane_pn_swap[i], true);
if (dev_cfg_t.lane_id[i] != MIPI_TX_LANE_CLK) {
++lane_num;
data_en[dev_cfg_t.lane_id[i] - 1] = true;
}
}
if (lane_num == 0) {
debug("%s: no active mipi-dsi lane\n", __func__);
printf("%s: no active mipi-dsi lane\n", __func__);
return -EINVAL;
}
@ -135,6 +137,7 @@ int mipi_tx_set_combo_dev_cfg(const struct combo_dev_cfg_s *dev_cfg)
return -EINVAL;
}
_cal_htt_extra(&dev_cfg_t, lane_num, bits);
pixel_clk = dev_cfg_t.pixel_clk;
_fill_disp_timing(&timing, &dev_cfg_t.sync_info);
preamble_on = (dev_cfg_t.pixel_clk * bits / lane_num) > 1500000;
dphy_dsi_lane_en(true, data_en, preamble_on);
@ -148,33 +151,33 @@ int mipi_tx_set_combo_dev_cfg(const struct combo_dev_cfg_s *dev_cfg)
ret = dm_gpio_set_value(&ctrl_gpios.disp_power_ct_gpio,
ctrl_gpios.disp_power_ct_gpio.flags & GPIOD_ACTIVE_LOW ? 0 : 1);
if (ret < 0) {
error("dm_gpio_set_value(disp_power_ct_gpio, deassert) failed: %d", ret);
printf("dm_gpio_set_value(disp_power_ct_gpio, deassert) failed: %d", ret);
return ret;
}
ret = dm_gpio_set_value(&ctrl_gpios.disp_pwm_gpio,
ctrl_gpios.disp_pwm_gpio.flags & GPIOD_ACTIVE_LOW ? 0 : 1);
if (ret < 0) {
error("dm_gpio_set_value(disp_pwm_gpio, deassert) failed: %d", ret);
printf("dm_gpio_set_value(disp_pwm_gpio, deassert) failed: %d", ret);
return ret;
}
ret = dm_gpio_set_value(&ctrl_gpios.disp_reset_gpio,
ctrl_gpios.disp_reset_gpio.flags & GPIOD_ACTIVE_LOW ? 0 : 1);
if (ret < 0) {
error("dm_gpio_set_value(disp_reset_gpio, deassert) failed: %d", ret);
printf("dm_gpio_set_value(disp_reset_gpio, deassert) failed: %d", ret);
return ret;
}
mdelay(10);
ret = dm_gpio_set_value(&ctrl_gpios.disp_reset_gpio,
ctrl_gpios.disp_reset_gpio.flags & GPIOD_ACTIVE_LOW ? 1 : 0);
if (ret < 0) {
error("dm_gpio_set_value(disp_reset_gpio, deassert) failed: %d", ret);
printf("dm_gpio_set_value(disp_reset_gpio, deassert) failed: %d", ret);
return ret;
}
mdelay(10);
ret = dm_gpio_set_value(&ctrl_gpios.disp_reset_gpio,
ctrl_gpios.disp_reset_gpio.flags & GPIOD_ACTIVE_LOW ? 0 : 1);
if (ret < 0) {
error("dm_gpio_set_value(disp_reset_gpio, deassert) failed: %d", ret);
printf("dm_gpio_set_value(disp_reset_gpio, deassert) failed: %d", ret);
return ret;
}
mdelay(100);
@ -185,10 +188,10 @@ int mipi_tx_set_combo_dev_cfg(const struct combo_dev_cfg_s *dev_cfg)
int mipi_tx_set_cmd(struct cmd_info_s *cmd_info)
{
if (cmd_info->cmd_size > CMD_MAX_NUM) {
debug("cmd_size(%d) can't exceed %d!\n", cmd_info->cmd_size, CMD_MAX_NUM);
printf("cmd_size(%d) can't exceed %d!\n", cmd_info->cmd_size, CMD_MAX_NUM);
return -EINVAL;
} else if ((cmd_info->cmd_size != 0) && !cmd_info->cmd) {
debug("cmd is NULL, but cmd_size(%d) isn't zero!\n", cmd_info->cmd_size);
printf("cmd is NULL, but cmd_size(%d) isn't zero!\n", cmd_info->cmd_size);
return -EINVAL;
}
@ -205,16 +208,24 @@ int mipi_tx_set_cmd(struct cmd_info_s *cmd_info)
int mipi_tx_get_cmd(struct get_cmd_info_s *get_cmd_info)
{
int ret = 0;
if (get_cmd_info->get_data_size > RX_MAX_NUM) {
debug("get_data_size(%d) can't exceed %d!\n", get_cmd_info->get_data_size, RX_MAX_NUM);
printf("get_data_size(%d) can't exceed %d!\n", get_cmd_info->get_data_size, RX_MAX_NUM);
return -EINVAL;
} else if ((get_cmd_info->get_data_size != 0) && (!get_cmd_info->get_data)) {
debug("cmd is NULL, but cmd_size(%d) isn't zero!\n", get_cmd_info->get_data_size);
printf("cmd is NULL, but cmd_size(%d) isn't zero!\n", get_cmd_info->get_data_size);
return -EINVAL;
}
return sclr_dsi_dcs_read_buffer(get_cmd_info->data_type, get_cmd_info->data_param
if (pixel_clk)
dphy_dsi_set_pll(pixel_clk * 2, lane_num, bits);
ret = sclr_dsi_dcs_read_buffer(get_cmd_info->data_type, get_cmd_info->data_param
, get_cmd_info->get_data, get_cmd_info->get_data_size, cmd_mode & 0x01);
if (pixel_clk)
dphy_dsi_set_pll(pixel_clk, lane_num, bits);
return ret;
}
void mipi_tx_set_mode(unsigned long mode_flags)