summaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
authorLakshmi Sowjanya D <lakshmi.sowjanya.d@intel.com>2021-11-09 11:35:51 +0100
committerWolfram Sang <wsa@kernel.org>2021-11-29 17:55:17 +0100
commite8578547ce59ddba3651ac0e68dbcb6daa8ce790 (patch)
tree843532a1895f7fade55f9b063d2bb4e579df4d54 /drivers
parenti2c: enable async suspend/resume on i2c client devices (diff)
downloadlinux-e8578547ce59ddba3651ac0e68dbcb6daa8ce790.tar.xz
linux-e8578547ce59ddba3651ac0e68dbcb6daa8ce790.zip
i2c: designware-pci: Add support for Fast Mode Plus and High Speed Mode
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>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/i2c/busses/i2c-designware-pcidrv.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/drivers/i2c/busses/i2c-designware-pcidrv.c b/drivers/i2c/busses/i2c-designware-pcidrv.c
index 0f409a4c2da0..174938fc7a7e 100644
--- a/drivers/i2c/busses/i2c-designware-pcidrv.c
+++ b/drivers/i2c/busses/i2c-designware-pcidrv.c
@@ -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;
}