Hi, On 05/02/19 2:16 PM, Daniel Vetter wrote: > 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 :-) cool.. I've merged all the patches except drm/bridge. Please see if everything looks okay once it shows up in phy -next (give a day) Thanks Kishon > -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 > _______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/dri-devel