mirror of
https://github.com/hardkernel/linux.git
synced 2026-06-07 03:15:31 +09:00
video: rockchip: mpp: fix reset fail in shared reset clk
Use devm_reset_control_get replace devm_reset_control_get_shared because we want to reset hardware really and don't care about others. Change-Id: I548ed01e0ce7bbed46c37e2da1476b2623c3d452 Signed-off-by: Grey Li <grey.li@rock-chips.com>
This commit is contained in:
@@ -1019,42 +1019,36 @@ static int rkvdec_init(struct mpp_dev *mpp)
|
||||
dec->clk_core = NULL;
|
||||
}
|
||||
|
||||
dec->rst_a = devm_reset_control_get_shared(mpp->dev, "video_a");
|
||||
dec->rst_a = devm_reset_control_get(mpp->dev, "video_a");
|
||||
if (IS_ERR_OR_NULL(dec->rst_a)) {
|
||||
mpp_err("No aclk reset resource define\n");
|
||||
dec->rst_a = NULL;
|
||||
}
|
||||
dec->rst_h = devm_reset_control_get_shared(mpp->dev, "video_h");
|
||||
dec->rst_h = devm_reset_control_get(mpp->dev, "video_h");
|
||||
if (IS_ERR_OR_NULL(dec->rst_h)) {
|
||||
mpp_err("No hclk reset resource define\n");
|
||||
dec->rst_h = NULL;
|
||||
}
|
||||
dec->rst_niu_a = devm_reset_control_get_shared(mpp->dev, "niu_a");
|
||||
dec->rst_niu_a = devm_reset_control_get(mpp->dev, "niu_a");
|
||||
if (IS_ERR_OR_NULL(dec->rst_niu_a)) {
|
||||
mpp_err("No niu aclk reset resource define\n");
|
||||
dec->rst_niu_a = NULL;
|
||||
}
|
||||
dec->rst_niu_h = devm_reset_control_get_shared(mpp->dev, "niu_h");
|
||||
dec->rst_niu_h = devm_reset_control_get(mpp->dev, "niu_h");
|
||||
if (IS_ERR_OR_NULL(dec->rst_niu_h)) {
|
||||
mpp_err("No niu hclk reset resource define\n");
|
||||
dec->rst_niu_h = NULL;
|
||||
}
|
||||
dec->rst_cabac = devm_reset_control_get_shared(mpp->dev, "video_cabac");
|
||||
dec->rst_cabac = devm_reset_control_get(mpp->dev, "video_cabac");
|
||||
if (IS_ERR_OR_NULL(dec->rst_cabac)) {
|
||||
mpp_err("No cabac reset resource define\n");
|
||||
dec->rst_cabac = NULL;
|
||||
}
|
||||
dec->rst_core = devm_reset_control_get_shared(mpp->dev, "video_core");
|
||||
dec->rst_core = devm_reset_control_get(mpp->dev, "video_core");
|
||||
if (IS_ERR_OR_NULL(dec->rst_core)) {
|
||||
mpp_err("No core reset resource define\n");
|
||||
dec->rst_core = NULL;
|
||||
}
|
||||
mpp_safe_unreset(dec->rst_a);
|
||||
mpp_safe_unreset(dec->rst_h);
|
||||
mpp_safe_unreset(dec->rst_niu_h);
|
||||
mpp_safe_unreset(dec->rst_niu_a);
|
||||
mpp_safe_unreset(dec->rst_cabac);
|
||||
mpp_safe_unreset(dec->rst_core);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
@@ -478,18 +478,16 @@ static int vdpu_init(struct mpp_dev *mpp)
|
||||
dec->hclk = NULL;
|
||||
}
|
||||
|
||||
dec->rst_a = devm_reset_control_get_shared(mpp->dev, "video_a");
|
||||
dec->rst_a = devm_reset_control_get(mpp->dev, "video_a");
|
||||
if (IS_ERR_OR_NULL(dec->rst_a)) {
|
||||
mpp_err("No aclk reset resource define\n");
|
||||
dec->rst_a = NULL;
|
||||
}
|
||||
dec->rst_h = devm_reset_control_get_shared(mpp->dev, "video_h");
|
||||
dec->rst_h = devm_reset_control_get(mpp->dev, "video_h");
|
||||
if (IS_ERR_OR_NULL(dec->rst_h)) {
|
||||
mpp_err("No hclk reset resource define\n");
|
||||
dec->rst_h = NULL;
|
||||
}
|
||||
mpp_safe_unreset(dec->rst_a);
|
||||
mpp_safe_unreset(dec->rst_h);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
@@ -442,18 +442,16 @@ static int vdpu_init(struct mpp_dev *mpp)
|
||||
dec->hclk = NULL;
|
||||
}
|
||||
|
||||
dec->rst_a = devm_reset_control_get_shared(mpp->dev, "video_a");
|
||||
dec->rst_a = devm_reset_control_get(mpp->dev, "video_a");
|
||||
if (IS_ERR_OR_NULL(dec->rst_a)) {
|
||||
mpp_err("No aclk reset resource define\n");
|
||||
dec->rst_a = NULL;
|
||||
}
|
||||
dec->rst_h = devm_reset_control_get_shared(mpp->dev, "video_h");
|
||||
dec->rst_h = devm_reset_control_get(mpp->dev, "video_h");
|
||||
if (IS_ERR_OR_NULL(dec->rst_h)) {
|
||||
mpp_err("No hclk reset resource define\n");
|
||||
dec->rst_h = NULL;
|
||||
}
|
||||
mpp_safe_unreset(dec->rst_a);
|
||||
mpp_safe_unreset(dec->rst_h);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
@@ -398,18 +398,16 @@ static int vepu_init(struct mpp_dev *mpp)
|
||||
enc->hclk = NULL;
|
||||
}
|
||||
|
||||
enc->rst_a = devm_reset_control_get_shared(mpp->dev, "video_a");
|
||||
enc->rst_a = devm_reset_control_get(mpp->dev, "video_a");
|
||||
if (IS_ERR_OR_NULL(enc->rst_a)) {
|
||||
mpp_err("No aclk reset resource define\n");
|
||||
enc->rst_a = NULL;
|
||||
}
|
||||
enc->rst_h = devm_reset_control_get_shared(mpp->dev, "video_h");
|
||||
enc->rst_h = devm_reset_control_get(mpp->dev, "video_h");
|
||||
if (IS_ERR_OR_NULL(enc->rst_h)) {
|
||||
mpp_err("No hclk reset resource define\n");
|
||||
enc->rst_h = NULL;
|
||||
}
|
||||
mpp_safe_unreset(enc->rst_a);
|
||||
mpp_safe_unreset(enc->rst_h);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
@@ -405,18 +405,16 @@ static int vepu_init(struct mpp_dev *mpp)
|
||||
enc->hclk = NULL;
|
||||
}
|
||||
|
||||
enc->rst_a = devm_reset_control_get_shared(mpp->dev, "video_a");
|
||||
enc->rst_a = devm_reset_control_get(mpp->dev, "video_a");
|
||||
if (IS_ERR_OR_NULL(enc->rst_a)) {
|
||||
mpp_err("No aclk reset resource define\n");
|
||||
enc->rst_a = NULL;
|
||||
}
|
||||
enc->rst_h = devm_reset_control_get_shared(mpp->dev, "video_h");
|
||||
enc->rst_h = devm_reset_control_get(mpp->dev, "video_h");
|
||||
if (IS_ERR_OR_NULL(enc->rst_h)) {
|
||||
mpp_err("No hclk reset resource define\n");
|
||||
enc->rst_h = NULL;
|
||||
}
|
||||
mpp_safe_unreset(enc->rst_a);
|
||||
mpp_safe_unreset(enc->rst_h);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user