media: rockchip: isp: no set clk if assigned-clock-rates in dts

Change-Id: I354adf062d05bbe62525370efd8ad43dce3347b4
Signed-off-by: Cai YiWei <cyw@rock-chips.com>
This commit is contained in:
Cai YiWei
2023-07-06 14:35:28 +08:00
committed by Tao Huang
parent 99976d5c8b
commit c6188f5a41
3 changed files with 15 additions and 4 deletions

View File

@@ -978,6 +978,8 @@ static int __maybe_unused rkisp_runtime_resume(struct device *dev)
rkisp_update_sensor_info(isp_dev) >= 0)
_set_pipeline_default_fmt(isp_dev, false);
if (isp_dev->hw_dev->is_assigned_clk)
rkisp_clk_dbg = true;
isp_dev->cap_dev.wait_line = rkisp_wait_line;
isp_dev->cap_dev.wrap_line = rkisp_wrap_line;
isp_dev->is_rdbk_auto = rkisp_rdbk_auto;

View File

@@ -786,10 +786,12 @@ static int enable_sys_clk(struct rkisp_hw_dev *dev)
}
}
rate = dev->clk_rate_tbl[0].clk_rate * 1000000UL;
rkisp_set_clk_rate(dev->clks[0], rate);
if (dev->is_unite)
rkisp_set_clk_rate(dev->clks[5], rate);
if (!dev->is_assigned_clk) {
rate = dev->clk_rate_tbl[0].clk_rate * 1000000UL;
rkisp_set_clk_rate(dev->clks[0], rate);
if (dev->is_unite)
rkisp_set_clk_rate(dev->clks[5], rate);
}
rkisp_soft_reset(dev, false);
isp_config_clk(dev, true);
return 0;
@@ -848,6 +850,7 @@ static int rkisp_hw_probe(struct platform_device *pdev)
struct resource *res;
int i, ret;
bool is_mem_reserved = true;
u32 clk_rate = 0;
match = of_match_node(rkisp_hw_of_match, node);
if (IS_ERR(match))
@@ -941,6 +944,11 @@ static int rkisp_hw_probe(struct platform_device *pdev)
hw_dev->clk_rate_tbl = match_data->clk_rate_tbl;
hw_dev->num_clk_rate_tbl = match_data->num_clk_rate_tbl;
hw_dev->is_assigned_clk = false;
ret = of_property_read_u32(node, "assigned-clock-rates", &clk_rate);
if (!ret && clk_rate)
hw_dev->is_assigned_clk = true;
hw_dev->reset = devm_reset_control_array_get(dev, false, false);
if (IS_ERR(hw_dev->reset)) {
dev_dbg(dev, "failed to get reset\n");

View File

@@ -104,6 +104,7 @@ struct rkisp_hw_dev {
bool is_runing;
bool is_frm_buf;
bool is_dvfs;
bool is_assigned_clk;
};
int rkisp_register_irq(struct rkisp_hw_dev *dev);