|
@@ -23,6 +23,7 @@
|
|
|
#include <drm/drm_fb_helper.h>
|
|
|
#include <drm/drm_crtc_helper.h>
|
|
|
#include <linux/videodev2.h>
|
|
|
+#include <linux/pinctrl/consumer.h>
|
|
|
|
|
|
#include "imx-drm.h"
|
|
|
|
|
@@ -195,11 +196,20 @@ static int __devinit imx_pd_probe(struct platform_device *pdev)
|
|
|
struct imx_parallel_display *imxpd;
|
|
|
int ret;
|
|
|
const char *fmt;
|
|
|
+ struct pinctrl *pinctrl;
|
|
|
|
|
|
imxpd = devm_kzalloc(&pdev->dev, sizeof(*imxpd), GFP_KERNEL);
|
|
|
if (!imxpd)
|
|
|
return -ENOMEM;
|
|
|
|
|
|
+ pinctrl = devm_pinctrl_get_select_default(&pdev->dev);
|
|
|
+ if (IS_ERR(pinctrl)) {
|
|
|
+ ret = PTR_ERR(pinctrl);
|
|
|
+ dev_warn(&pdev->dev, "pinctrl_get_select_default failed with %d",
|
|
|
+ ret);
|
|
|
+ return ret;
|
|
|
+ }
|
|
|
+
|
|
|
edidp = of_get_property(np, "edid", &imxpd->edid_len);
|
|
|
if (edidp)
|
|
|
imxpd->edid = kmemdup(edidp, imxpd->edid_len, GFP_KERNEL);
|