Re: [PATCH v5 0/9] phy: Add configuration interface for MIPI D-PHY devices

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, Feb 04, 2019 at 03:33:31PM +0530, Kishon Vijay Abraham I wrote:
> 
> 
> On 21/01/19 9:15 PM, Maxime Ripard wrote:
> > Hi,
> > 
> > Here is a set of patches to allow the phy framework consumers to test and
> > apply runtime configurations.
> > 
> > This is needed to support more phy classes that require tuning based on
> > parameters depending on the current use case of the device, in addition to
> > the power state management already provided by the current functions.
> > 
> > A first test bed for that API are the MIPI D-PHY devices. There's a number
> > of solutions that have been used so far to support these phy, most of the
> > time being an ad-hoc driver in the consumer.
> > 
> > That approach has a big shortcoming though, which is that this is quite
> > difficult to deal with consumers integrated with multiple variants of phy,
> > of multiple consumers integrated with the same phy.
> > 
> > The latter case can be found in the Cadence DSI bridge, and the CSI
> > transceiver and receivers. All of them are integrated with the same phy, or
> > can be integrated with different phy, depending on the implementation.
> > 
> > I've looked at all the MIPI DSI drivers I could find, and gathered all the
> > parameters I could find. The interface should be complete, and most of the
> > drivers can be converted in the future. The current set converts two of
> > them: the above mentionned Cadence DSI driver so that the v4l2 drivers can
> > use them, and the Allwinner MIPI-DSI driver.
> 
> Can the PHY changes go independently of the consumer drivers? or else I'll need
> ACKs from the GPU MAINTAINER.

Maxime is a gpu maintainer, so you're all good :-)
-Daniel

> 
> Thanks
> Kishon
> 
> > 
> > Let me know what you think,
> > Maxime
> > 
> > Changes from v4:
> >   - Removed regression on the variable calculation
> >   - Fixed the wakeup unit
> >   - Collected Sean Acked-by on the last patch
> >   - Collected Sakari Reviewed-by on the first patch
> > 
> > Changes from v3
> >   - Rebased on 5.0-rc1
> >   - Added the fixes suggested by Sakari
> > 
> > Changes from v2:
> >   - Rebased on next
> >   - Changed the interface to accomodate for the new submodes
> >   - Changed the timings units from nanoseconds to picoseconds
> >   - Added minimum and maximum boundaries to the documentation
> >   - Moved the clock enabling to phy_power_on in the Cadence DPHY driver
> >   - Exported the phy_configure and phy_validate symbols
> >   - Rework the phy pll divider computation in the cadence dphy driver
> > 
> > Changes from v1:
> >   - Rebased on top of 4.20-rc1
> >   - Removed the bus mode and timings parameters from the MIPI D-PHY
> >     parameters, since that shouldn't have any impact on the PHY itself.
> >   - Reworked the Cadence DSI and D-PHY drivers to take this into account.
> >   - Remove the mode parameter from phy_configure
> >   - Added phy_configure and phy_validate stubs
> >   - Return -EOPNOTSUPP in phy_configure and phy_validate when the operation
> >     is not implemented
> > 
> > Maxime Ripard (9):
> >   phy: dphy: Remove unused header
> >   phy: dphy: Change units of wakeup and init parameters
> >   phy: dphy: Clarify lanes parameter documentation
> >   sun6i: dsi: Convert to generic phy handling
> >   phy: Move Allwinner A31 D-PHY driver to drivers/phy/
> >   drm/bridge: cdns: Separate DSI and D-PHY configuration
> >   dt-bindings: phy: Move the Cadence D-PHY bindings
> >   phy: Add Cadence D-PHY support
> >   drm/bridge: cdns: Convert to phy framework
> > 
> >  Documentation/devicetree/bindings/display/bridge/cdns,dsi.txt |  21 +-
> >  Documentation/devicetree/bindings/phy/cdns,dphy.txt           |  20 +-
> >  drivers/gpu/drm/bridge/Kconfig                                |   1 +-
> >  drivers/gpu/drm/bridge/cdns-dsi.c                             | 538 +------
> >  drivers/gpu/drm/sun4i/Kconfig                                 |   3 +-
> >  drivers/gpu/drm/sun4i/Makefile                                |   5 +-
> >  drivers/gpu/drm/sun4i/sun6i_mipi_dphy.c                       | 292 +----
> >  drivers/gpu/drm/sun4i/sun6i_mipi_dsi.c                        |  31 +-
> >  drivers/gpu/drm/sun4i/sun6i_mipi_dsi.h                        |  17 +-
> >  drivers/phy/allwinner/Kconfig                                 |  12 +-
> >  drivers/phy/allwinner/Makefile                                |   1 +-
> >  drivers/phy/allwinner/phy-sun6i-mipi-dphy.c                   | 318 ++++-
> >  drivers/phy/cadence/Kconfig                                   |  13 +-
> >  drivers/phy/cadence/Makefile                                  |   1 +-
> >  drivers/phy/cadence/cdns-dphy.c                               | 389 +++++-
> >  drivers/phy/phy-core-mipi-dphy.c                              |   8 +-
> >  include/linux/phy/phy-mipi-dphy.h                             |  13 +-
> >  17 files changed, 894 insertions(+), 789 deletions(-)
> >  create mode 100644 Documentation/devicetree/bindings/phy/cdns,dphy.txt
> >  delete mode 100644 drivers/gpu/drm/sun4i/sun6i_mipi_dphy.c
> >  create mode 100644 drivers/phy/allwinner/phy-sun6i-mipi-dphy.c
> >  create mode 100644 drivers/phy/cadence/cdns-dphy.c
> > 
> > base-commit: bfeffd155283772bbe78c6a05dec7c0128ee500c
> > 
> _______________________________________________
> dri-devel mailing list
> dri-devel@xxxxxxxxxxxxxxxxxxxxx
> https://lists.freedesktop.org/mailman/listinfo/dri-devel

-- 
Daniel Vetter
Software Engineer, Intel Corporation
http://blog.ffwll.ch



[Index of Archives]     [Linux Input]     [Video for Linux]     [Gstreamer Embedded]     [Mplayer Users]     [Linux USB Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]

  Powered by Linux