On 8/15/25 9:12 AM, Luca Weiss wrote: > Hi Wolfram, > > On 2025-08-11 14:13, Wolfram Sang wrote: >> On Sun, Aug 10, 2025 at 05:37:53PM +0200, Luca Weiss wrote: >>> Add a config for the v1.2.5 CCI found on msm8953 which has different >> >> Given the above version number... >> >>> static const struct of_device_id cci_dt_match[] = { >>> { .compatible = "qcom,msm8226-cci", .data = &cci_v1_data}, >>> + { .compatible = "qcom,msm8953-cci", .data = &cci_msm8953_data}, >> >> ... why don't we use it here to stay consistent? cci_v1_2_5_data? > > I don't think the existing 'v2' or 'v1' configs have much to do with the > actual > HW_VERSION of the IP block. For example on of the newer Qualcomm SoCs has HW > version 1.7.0 and is many years newer than the msm8996 which was called 'v2'.
Most of the i2c-speed-dependent configs are electrical and therefore may be configured as you wish.. I recall Sony Xperia kernels made changes to that rather often, whether really necessary - I don't know. The programming guide suggests a couple sets of values, picked in order to meet the I2C spec. The queue depths and max r/w lengths are per-instance (SoC specific) and change very rarely. > > I'm also not sure what these parameters depend on, if it's CCI HW version, or > something else. So naming it after the SoC should be a safer bet. Also the > msm8974-cci was only named 'v1.5' because it's an inbetween mix of the v1 and > v2 that were already upstream so arguably that one shouldn't have been called > v1.5 in the first place either. AFAICS there is no "v2" CCI in existence, msm8996 is v1.4.0 and newer platforms are v1.x.y. JFYI there's a revision ID register at (base + 0x0) which the driver's probe function conveniently reads and prints with dev_dbg. Konrad