From: Zheng Yang Date: Mon, 4 May 2015 08:26:33 +0000 (+0800) Subject: HDMI: 3288/3368: hdcp check firmware pointer. X-Git-Tag: firefly_0821_release~4158^2~120 X-Git-Url: http://plrg.eecs.uci.edu/git/?a=commitdiff_plain;h=92077716d1d24c2e59e88f0dcc7260aec50046a6;p=firefly-linux-kernel-4.4.55.git HDMI: 3288/3368: hdcp check firmware pointer. If firmware is NULL, HDCP is disabled. Signed-off-by: Zheng Yang --- diff --git a/drivers/video/rockchip/hdmi/rockchip-hdmiv2/rockchip_hdmiv2_hdcp.c b/drivers/video/rockchip/hdmi/rockchip-hdmiv2/rockchip_hdmiv2_hdcp.c index 0e5a76c55d24..6beeaf1bebde 100644 --- a/drivers/video/rockchip/hdmi/rockchip-hdmiv2/rockchip_hdmiv2_hdcp.c +++ b/drivers/video/rockchip/hdmi/rockchip-hdmiv2/rockchip_hdmiv2_hdcp.c @@ -88,6 +88,10 @@ static void hdcp_load_keys_cb(const struct firmware *fw, { struct hdmi *hdmi = (struct hdmi *)context; + if (fw == NULL) { + pr_info("HDCP: firmware is not loaded\n"); + return; + } if (fw->size < HDCP_KEY_SIZE) { pr_err("HDCP: firmware wrong size %d\n", (int)fw->size); return; @@ -238,7 +242,10 @@ static ssize_t hdcp_enable_write(struct device *device, if (hdcp == NULL) return -EINVAL; - + if (hdcp->keys == NULL) { + pr_err("HDCP: key is not loaded\n"); + return -EINVAL; + } if (kstrtoint(buf, 0, &enable)) return -EINVAL;