[Linux-stm32] [PATCH v4 0/4] Genericize DW MIPI DSI bridge and add i.MX 6 driver

Adrian Ratiu adrian.ratiu at collabora.com
Tue Dec 10 11:43:03 UTC 2019


On Fri, 06 Dec 2019, Philippe CORNU <philippe.cornu at st.com> wrote:
> Hi Adrian, 
> 
> And sorry for this late reply.  Your patches look good and we 
> ("stm guys") understand that v1.01 is very  different to 
> v1.30/31. 
> 
> We are doing our best to review & test your patches and we will 
> go back  to you asap.  Many thanks, Philippe :-) 

Hi Philippe,

Thank you for taking the time to test this, I really appreciate 
it.

Adrian

>
>
> On 12/2/19 8:33 PM, Adrian Ratiu wrote:
>> Having a generic Synopsis DesignWare MIPI-DSI host controller bridge
>> driver is a very good idea, however the current implementation has
>> hardcoded quite a lot of the register layouts used by the two supported
>> SoC vendors, STM and Rockchip, which use IP cores v1.30 and v1.31.
>> 
>> This makes it hard to support other SoC vendors like the FSL/NXP i.MX 6
>> which use older v1.01 cores or future versions because, based on history,
>> layout changes should also be expected in new DSI versions / SoCs.
>> 
>> This patch series converts the bridge and platform drivers to access
>> registers via generic regmap APIs and allows each platform driver to
>> configure its register layout via struct reg_fields, then adds support
>> for the host controller found on i.MX 6.
>> 
>> I only have i.MX hardware with MIPI-DSI panel and relevant documentation
>> available for testing so I'll really appreciate it if someone could test
>> the series on Rockchip and STM... eyeballing register fields could only
>> get me so far, so sorry in advance for any breakage!
>> 
>> Many thanks to Boris Brezillon <boris.brezillon at collabora.com> for
>> suggesting the regmap solution and to Liu Ying <Ying.Liu at freescale.com>
>> for doing the initial i.MX platform driver implementation.
>> 
>> This series applies on top of latest linux-next tree, next-20191202.
>> 
>> v3 -> v4:
>>    * Added commmit message to dt-binding patch (Neil)
>>    * Converted the dt-binding to yaml dt-schema format (Neil)
>>    * Small DT node + driver fixes (Rob)
>>    * Renamed platform driver to reflect it's only for i.MX v6 (Fabio)
>>    * Added small panel example to the host controller DT binding
>> 
>> v2 -> v3:
>>    * Added const declarations to dw-mipi-dsi.c structs (Emil)
>>    * Fixed Reviewed-by tags and cc'd some more relevant ML (Emil)
>> 
>> v1 -> v2:
>>    * Moved register definitions & regmap initialization into bridge
>>    module. Platform drivers get the regmap via plat_data after calling
>>    the bridge probe (Emil).
>> 
>> Adrian Ratiu (4):
>>    drm: bridge: dw_mipi_dsi: access registers via a regmap
>>    drm: bridge: dw_mipi_dsi: abstract register access using reg_fields
>>    drm: imx: Add i.MX 6 MIPI DSI host driver
>>    dt-bindings: display: add i.MX6 MIPI DSI host controller doc
>> 
>>   .../display/imx/fsl,mipi-dsi-imx6.yaml        | 136 ++++
>>   drivers/gpu/drm/bridge/synopsys/dw-mipi-dsi.c | 699 +++++++++++++-----
>>   drivers/gpu/drm/imx/Kconfig                   |   7 +
>>   drivers/gpu/drm/imx/Makefile                  |   1 +
>>   drivers/gpu/drm/imx/dw_mipi_dsi-imx6.c        | 378 ++++++++++
>>   .../gpu/drm/rockchip/dw-mipi-dsi-rockchip.c   |  17 +-
>>   drivers/gpu/drm/stm/dw_mipi_dsi-stm.c         |  34 +-
>>   include/drm/bridge/dw_mipi_dsi.h              |   2 +-
>>   8 files changed, 1067 insertions(+), 207 deletions(-)
>>   create mode 100644 Documentation/devicetree/bindings/display/imx/fsl,mipi-dsi-imx6.yaml
>>   create mode 100644 drivers/gpu/drm/imx/dw_mipi_dsi-imx6.c
>> 


More information about the dri-devel mailing list