diff options
author | Wenlong Zhuang <daisen.zhuang@rock-chips.com> | 2018-09-30 16:55:42 +0800 |
---|---|---|
committer | Tao Huang <huangtao@rock-chips.com> | 2018-11-02 10:44:23 +0800 |
commit | 44799d26ce36f6f1c10b15e742bb33476b2755ed (patch) | |
tree | 359b9e2378120d93fabf41c53213fd97b1c3d9f2 | |
parent | 573f0547a89be335652d76b0d6e0f66ab63d576c (diff) |
phy: rockchip: mipi-dphy-rx: move MIPI RX DPHY drivers to phy directory
This driver supports MIPI RX DPHY with Synopsys or Innosilicon IP block.
It is also a v4l2 subdev driver.
Also select PHY_ROCKCHIP_MIPI_RX when VIDEO_ROCKCHIP_ISP1 or
VIDEO_ROCKCHIP_CIF is enabled.
Change-Id: I6d828c9e506f03d4a530d80ab8419f5cddeff7d7
Signed-off-by: Wenlong Zhuang <daisen.zhuang@rock-chips.com>
-rw-r--r-- | drivers/media/platform/rockchip/cif/Kconfig | 1 | ||||
-rw-r--r-- | drivers/media/platform/rockchip/isp1/Kconfig | 10 | ||||
-rw-r--r-- | drivers/media/platform/rockchip/isp1/Makefile | 1 | ||||
-rw-r--r-- | drivers/phy/rockchip/Kconfig | 8 | ||||
-rw-r--r-- | drivers/phy/rockchip/Makefile | 1 | ||||
-rw-r--r-- | drivers/phy/rockchip/phy-rockchip-mipi-rx.c (renamed from drivers/media/platform/rockchip/isp1/mipi_dphy_sy.c) | 28 |
6 files changed, 25 insertions, 24 deletions
diff --git a/drivers/media/platform/rockchip/cif/Kconfig b/drivers/media/platform/rockchip/cif/Kconfig index b38f3e79c669..019cb33fde57 100644 --- a/drivers/media/platform/rockchip/cif/Kconfig +++ b/drivers/media/platform/rockchip/cif/Kconfig @@ -6,6 +6,7 @@ config VIDEO_ROCKCHIP_CIF depends on MEDIA_CAMERA_SUPPORT select VIDEOBUF2_DMA_CONTIG select V4L2_FWNODE + select PHY_ROCKCHIP_MIPI_RX default n help Support for CIF on the rockchip SoCs like rk312x, rk3288. diff --git a/drivers/media/platform/rockchip/isp1/Kconfig b/drivers/media/platform/rockchip/isp1/Kconfig index a2f654bc2fa8..5637cc758cc5 100644 --- a/drivers/media/platform/rockchip/isp1/Kconfig +++ b/drivers/media/platform/rockchip/isp1/Kconfig @@ -6,15 +6,7 @@ config VIDEO_ROCKCHIP_ISP1 select VIDEOBUF2_DMA_CONTIG select VIDEOBUF2_VMALLOC select V4L2_FWNODE - select VIDEO_ROCKCHIP_ISP_DPHY_SY + select PHY_ROCKCHIP_MIPI_RX default n help Support for ISP1 on the rockchip SoC. - -config VIDEO_ROCKCHIP_ISP_DPHY_SY - tristate "Rockchip Image Signal Processing v1 Dphy driver" - depends on VIDEO_V4L2 && VIDEO_V4L2_SUBDEV_API - depends on ARCH_ROCKCHIP || COMPILE_TEST - default n - help - Support for ISP MIPI Synopsys DPHY on the rockchip SoC. diff --git a/drivers/media/platform/rockchip/isp1/Makefile b/drivers/media/platform/rockchip/isp1/Makefile index d698660ac500..5fe250336de9 100644 --- a/drivers/media/platform/rockchip/isp1/Makefile +++ b/drivers/media/platform/rockchip/isp1/Makefile @@ -1,6 +1,5 @@ # SPDX-License-Identifier: GPL-2.0 obj-$(CONFIG_VIDEO_ROCKCHIP_ISP1) += video_rkisp1.o -obj-$(CONFIG_VIDEO_ROCKCHIP_ISP_DPHY_SY) += mipi_dphy_sy.o video_rkisp1-objs += rkisp1.o \ dev.o \ diff --git a/drivers/phy/rockchip/Kconfig b/drivers/phy/rockchip/Kconfig index 2a10513b6b85..612362ddf339 100644 --- a/drivers/phy/rockchip/Kconfig +++ b/drivers/phy/rockchip/Kconfig @@ -51,6 +51,14 @@ config PHY_ROCKCHIP_DP help Enable this to support the Rockchip Display Port PHY. +config PHY_ROCKCHIP_MIPI_RX + tristate "Rockchip MIPI RX D-PHY Driver" + depends on VIDEO_V4L2 && VIDEO_V4L2_SUBDEV_API + depends on ARCH_ROCKCHIP && OF + select GENERIC_PHY + help + Enable this to support the Rockchip MIPI D-PHY with Synopsys or Innosilicon IP block. + config PHY_ROCKCHIP_INNO_MIPI_DPHY tristate "Rockchip INNO MIPI D-PHY Driver" depends on ARCH_ROCKCHIP && OF diff --git a/drivers/phy/rockchip/Makefile b/drivers/phy/rockchip/Makefile index 7e8db07d435a..1ff9984133dd 100644 --- a/drivers/phy/rockchip/Makefile +++ b/drivers/phy/rockchip/Makefile @@ -5,6 +5,7 @@ obj-$(CONFIG_PHY_ROCKCHIP_INNO_USB2) += phy-rockchip-inno-usb2.o obj-$(CONFIG_PHY_ROCKCHIP_INNO_USB3) += phy-rockchip-inno-usb3.o obj-$(CONFIG_PHY_ROCKCHIP_INNO_MIPI_DPHY) += phy-rockchip-inno-mipi-dphy.o obj-$(CONFIG_PHY_ROCKCHIP_INNO_HDMI_PHY) += phy-rockchip-inno-hdmi-phy.o +obj-$(CONFIG_PHY_ROCKCHIP_MIPI_RX) += phy-rockchip-mipi-rx.o obj-$(CONFIG_PHY_ROCKCHIP_EMMC) += phy-rockchip-emmc.o obj-$(CONFIG_PHY_ROCKCHIP_DP) += phy-rockchip-dp.o obj-$(CONFIG_PHY_ROCKCHIP_TYPEC) += phy-rockchip-typec.o diff --git a/drivers/media/platform/rockchip/isp1/mipi_dphy_sy.c b/drivers/phy/rockchip/phy-rockchip-mipi-rx.c index d615e7cafb0e..937b3544cfe4 100644 --- a/drivers/media/platform/rockchip/isp1/mipi_dphy_sy.c +++ b/drivers/phy/rockchip/phy-rockchip-mipi-rx.c @@ -1,5 +1,5 @@ /* - * Rockchip MIPI Synopsys DPHY driver + * Rockchip MIPI RX Synopsys/Innosilicon DPHY driver * * Copyright (C) 2017 Fuzhou Rockchip Electronics Co., Ltd. * @@ -134,10 +134,10 @@ #define HIWORD_UPDATE(val, mask, shift) \ ((val) << (shift) | (mask) << ((shift) + 16)) -enum mipi_dphy_sy_pads { - MIPI_DPHY_SY_PAD_SINK = 0, - MIPI_DPHY_SY_PAD_SOURCE, - MIPI_DPHY_SY_PADS_NUM, +enum mipi_dphy_rx_pads { + MIPI_DPHY_RX_PAD_SINK = 0, + MIPI_DPHY_RX_PAD_SOURCE, + MIPI_DPHY_RX_PADS_NUM, }; enum dphy_reg_id { @@ -387,7 +387,7 @@ struct mipidphy_priv { u64 data_rate_mbps; struct v4l2_async_notifier notifier; struct v4l2_subdev sd; - struct media_pad pads[MIPI_DPHY_SY_PADS_NUM]; + struct media_pad pads[MIPI_DPHY_RX_PADS_NUM]; struct mipidphy_sensor sensors[MAX_DPHY_SENSORS]; int num_sensors; bool is_streaming; @@ -505,7 +505,7 @@ static struct v4l2_subdev *get_remote_sensor(struct v4l2_subdev *sd) struct media_pad *local, *remote; struct media_entity *sensor_me; - local = &sd->entity.pads[MIPI_DPHY_SY_PAD_SINK]; + local = &sd->entity.pads[MIPI_DPHY_RX_PAD_SINK]; remote = media_entity_remote_pad(local); if (!remote) { v4l2_warn(sd, "No link between dphy and sensor\n"); @@ -1122,7 +1122,7 @@ rockchip_mipidphy_notifier_bound(struct v4l2_async_notifier *notifier, ret = media_entity_create_link( &sensor->sd->entity, pad, - &priv->sd.entity, MIPI_DPHY_SY_PAD_SINK, + &priv->sd.entity, MIPI_DPHY_RX_PAD_SINK, priv->num_sensors != 1 ? 0 : MEDIA_LNK_FL_ENABLED); if (ret) { dev_err(priv->dev, @@ -1200,13 +1200,13 @@ static int rockchip_mipidphy_media_init(struct mipidphy_priv *priv) { int ret; - priv->pads[MIPI_DPHY_SY_PAD_SOURCE].flags = + priv->pads[MIPI_DPHY_RX_PAD_SOURCE].flags = MEDIA_PAD_FL_SOURCE | MEDIA_PAD_FL_MUST_CONNECT; - priv->pads[MIPI_DPHY_SY_PAD_SINK].flags = + priv->pads[MIPI_DPHY_RX_PAD_SINK].flags = MEDIA_PAD_FL_SINK | MEDIA_PAD_FL_MUST_CONNECT; ret = media_entity_init(&priv->sd.entity, - MIPI_DPHY_SY_PADS_NUM, priv->pads, 0); + MIPI_DPHY_RX_PADS_NUM, priv->pads, 0); if (ret < 0) return ret; @@ -1292,7 +1292,7 @@ static int rockchip_mipidphy_probe(struct platform_device *pdev) sd = &priv->sd; v4l2_subdev_init(sd, &mipidphy_subdev_ops); sd->flags |= V4L2_SUBDEV_FL_HAS_DEVNODE; - snprintf(sd->name, sizeof(sd->name), "rockchip-sy-mipi-dphy"); + snprintf(sd->name, sizeof(sd->name), "rockchip-mipi-dphy-rx"); sd->dev = dev; platform_set_drvdata(pdev, &sd->entity); @@ -1328,7 +1328,7 @@ static struct platform_driver rockchip_isp_mipidphy_driver = { .probe = rockchip_mipidphy_probe, .remove = rockchip_mipidphy_remove, .driver = { - .name = "rockchip-sy-mipi-dphy", + .name = "rockchip-mipi-dphy-rx", .pm = &rockchip_mipidphy_pm_ops, .of_match_table = rockchip_mipidphy_match_id, }, @@ -1336,5 +1336,5 @@ static struct platform_driver rockchip_isp_mipidphy_driver = { module_platform_driver(rockchip_isp_mipidphy_driver); MODULE_AUTHOR("Rockchip Camera/ISP team"); -MODULE_DESCRIPTION("Rockchip MIPI DPHY driver"); +MODULE_DESCRIPTION("Rockchip MIPI RX DPHY driver"); MODULE_LICENSE("Dual BSD/GPL"); |