@@ -1299,7 +1299,7 @@ static int dpu_kms_init(struct drm_device *ddev)
static int dpu_dev_probe(struct platform_device *pdev)
{
- return msm_drv_probe(&pdev->dev, dpu_kms_init);
+ return msm_drv_probe(&pdev->dev, dpu_kms_init, NULL);
}
static void dpu_dev_remove(struct platform_device *pdev)
@@ -557,7 +557,7 @@ static const struct dev_pm_ops mdp4_pm_ops = {
static int mdp4_probe(struct platform_device *pdev)
{
- return msm_drv_probe(&pdev->dev, mdp4_kms_init);
+ return msm_drv_probe(&pdev->dev, mdp4_kms_init, NULL);
}
static void mdp4_remove(struct platform_device *pdev)
@@ -939,7 +939,7 @@ static int mdp5_dev_probe(struct platform_device *pdev)
if (ret)
return ret;
- return msm_drv_probe(&pdev->dev, mdp5_kms_init);
+ return msm_drv_probe(&pdev->dev, mdp5_kms_init, NULL);
}
static void mdp5_dev_remove(struct platform_device *pdev)
@@ -1232,7 +1232,8 @@ const struct component_master_ops msm_drm_ops = {
};
int msm_drv_probe(struct device *master_dev,
- int (*kms_init)(struct drm_device *dev))
+ int (*kms_init)(struct drm_device *dev),
+ struct msm_kms *kms)
{
struct msm_drm_private *priv;
struct component_match *match = NULL;
@@ -1242,6 +1243,7 @@ int msm_drv_probe(struct device *master_dev,
if (!priv)
return -ENOMEM;
+ priv->kms = kms;
priv->kms_init = kms_init;
dev_set_drvdata(master_dev, priv);
@@ -1277,7 +1279,7 @@ int msm_drv_probe(struct device *master_dev,
static int msm_pdev_probe(struct platform_device *pdev)
{
- return msm_drv_probe(&pdev->dev, NULL);
+ return msm_drv_probe(&pdev->dev, NULL, NULL);
}
static void msm_pdev_remove(struct platform_device *pdev)
@@ -570,7 +570,8 @@ int msm_pm_prepare(struct device *dev);
void msm_pm_complete(struct device *dev);
int msm_drv_probe(struct device *dev,
- int (*kms_init)(struct drm_device *dev));
+ int (*kms_init)(struct drm_device *dev),
+ struct msm_kms *kms);
void msm_drv_shutdown(struct platform_device *pdev);