From 207c36b9427bbe2552a74522e5d56734810a347c Mon Sep 17 00:00:00 2001 From: Xubilv Date: Fri, 6 May 2016 15:19:19 +0800 Subject: [PATCH] video: rockchip: mipi: free cmds buf in rockchip_lcd_mipi_remove Change-Id: If805e7b6797841a92252a879526200da166141fd Signed-off-by: Xubilv --- drivers/video/rockchip/screen/lcd_mipi.c | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/drivers/video/rockchip/screen/lcd_mipi.c b/drivers/video/rockchip/screen/lcd_mipi.c index 48b75b9bb7f5..10bb2677ea5e 100755 --- a/drivers/video/rockchip/screen/lcd_mipi.c +++ b/drivers/video/rockchip/screen/lcd_mipi.c @@ -146,8 +146,6 @@ static void rk_mipi_screen_cmd_init(struct mipi_screen *screen) msleep(dcs_cmd->dcs_cmd.delay); } else MIPI_SCREEN_DBG("cmd type err.\n"); - kfree(dcs_cmd->dcs_cmd.cmds); - dcs_cmd->dcs_cmd.cmds = NULL; } #ifdef CONFIG_RK_3288_DSI_UBOOT @@ -280,7 +278,8 @@ int rk_mipi_screen_standby(u8 enable) return 0; } #ifdef CONFIG_LCD_MIPI -static int rk_mipi_screen_init_dt(struct mipi_screen *screen) +static int rk_mipi_screen_init_dt(struct device *dev, + struct mipi_screen *screen) { struct device_node *childnode, *grandchildnode, *root; struct mipi_dcs_cmd_ctr_list *dcs_cmd; @@ -423,7 +422,7 @@ static int rk_mipi_screen_init_dt(struct mipi_screen *screen) strcpy(dcs_cmd->dcs_cmd.name, childnode->name); dcs_cmd->dcs_cmd.cmds = - kzalloc(CMD_LEN_MAX, GFP_KERNEL); + devm_kzalloc(dev, CMD_LEN_MAX, GFP_KERNEL); if (!dcs_cmd->dcs_cmd.cmds) { pr_err("malloc cmds fail!\n"); return -ENOMEM; @@ -747,7 +746,7 @@ static int __init rk_mipi_screen_probe(struct platform_device *pdev) return -ENOMEM; } - ret = rk_mipi_screen_init_dt(gmipi_screen); + ret = rk_mipi_screen_init_dt(&pdev->dev, gmipi_screen); if (ret < 0) { dev_err(&pdev->dev, " rk_mipi_screen_init_dt fail!\n"); return -1; -- 2.34.1