• Sylwester Nawrocki's avatar
    phy: exynos-video-mipi: Fix regression by adding support for PMU regmap · e4b3d380
    Sylwester Nawrocki authored
    After the Exynos Power Management Unit (PMU) driver was converted
    to the platform device driver in commit 14fc8b93
    ("ARM: EXYNOS: Add platform driver support for Exynos PMU") and
    then PMU device nodes added to Exynos4 DTs in commit
    7b9613ac ("ARM: dts: add PMU syscon node for exynos4")
    the mipi video phy driver started failing probing, due to overlapping
    memory mapped register region resources.
    
    Now all the Exynos peripheral devices which have registers in the PMU
    region are supposed to use the regmap provided by the syscon driver.
    So support for regmap is added in this patch, this unfortunately
    creates yet another indirection into that supposedly trivial driver.
    
    The additional mutex is required because single register is used by
    PHY pairs (they share bit in a register). An improvement here could
    be to allow a PHY instance be created with a driver custom mutex,
    which would then be common for each PHY pair. This would eliminate
    one of 3 mutexes which need to be taken in the phy_power_on/
    phy_power_off code path. However, I tried to keep this bug fix patch
    possibly simple.
    
    This change is needed to make MIPI DSI displays and MIPI CSI-2
    camera sensors working again on Exynos4 boards.
    
    Cc: Pankaj Dubey <pankaj.dubey@samsung.com>
    Cc: Kukjin Kim <kgene.kim@samsung.com>
    Signed-off-by: default avatarSylwester Nawrocki <s.nawrocki@samsung.com>
    Signed-off-by: default avatarKishon Vijay Abraham I <kishon@ti.com>
    e4b3d380
phy-exynos-mipi-video.c 5.24 KB