i2c: designware-pci: Add support for Fast Mode Plus and High Speed Mode
authorLakshmi Sowjanya D <lakshmi.sowjanya.d@intel.com>
Tue, 9 Nov 2021 10:35:51 +0000 (16:05 +0530)
committerWolfram Sang <wsa@kernel.org>
Mon, 29 Nov 2021 16:55:17 +0000 (17:55 +0100)
Add support to configure HCNT, LCNT values for Fast Mode Plus and High
Speed Mode.

Signed-off-by: Lakshmi Sowjanya D <lakshmi.sowjanya.d@intel.com>
Acked-by: Jarkko Nikula <jarkko.nikula@linux.intel.com>
Signed-off-by: Wolfram Sang <wsa@kernel.org>
drivers/i2c/busses/i2c-designware-pcidrv.c

index 0f409a4c2da0defb3a14f61ffb2a87392be8d4e8..174938fc7a7eecd52901a2a1c04eda76829b9ead 100644 (file)
@@ -41,8 +41,12 @@ enum dw_pci_ctl_id_t {
 struct dw_scl_sda_cfg {
        u32 ss_hcnt;
        u32 fs_hcnt;
+       u32 fp_hcnt;
+       u32 hs_hcnt;
        u32 ss_lcnt;
        u32 fs_lcnt;
+       u32 fp_lcnt;
+       u32 hs_lcnt;
        u32 sda_hold;
 };
 
@@ -306,8 +310,12 @@ static int i2c_dw_pci_probe(struct pci_dev *pdev,
                cfg = controller->scl_sda_cfg;
                dev->ss_hcnt = cfg->ss_hcnt;
                dev->fs_hcnt = cfg->fs_hcnt;
+               dev->fp_hcnt = cfg->fp_hcnt;
+               dev->hs_hcnt = cfg->hs_hcnt;
                dev->ss_lcnt = cfg->ss_lcnt;
                dev->fs_lcnt = cfg->fs_lcnt;
+               dev->fp_lcnt = cfg->fp_lcnt;
+               dev->hs_lcnt = cfg->hs_lcnt;
                dev->sda_hold_time = cfg->sda_hold;
        }