Hi Andy For i2c-stm32f4.c and i2c-stm32f7.c Reviewed-by: Pierre-Yves MORDRET <pierre-yves.mordret@xxxxxx> Thanks On 2/27/20 1:21 PM, Andy Shevchenko wrote: > Since we have generic definitions for bus frequencies, let's use them. > > Cc: Thor Thayer <thor.thayer@xxxxxxxxxxxxxxx> > Acked-by: Elie Morisse <syniurge@xxxxxxxxx> > Acked-by: Nehal Shah <nehal-bakulchandra.shah@xxxxxxx> > Cc: Shyam Sundar S K <shyam-sundar.s-k@xxxxxxx> > Reviewed-by: Brendan Higgins <brendanhiggins@xxxxxxxxxx> > Cc: Krzysztof Adamski <krzysztof.adamski@xxxxxxxxx> > Cc: Florian Fainelli <f.fainelli@xxxxxxxxx> > Cc: Ray Jui <rjui@xxxxxxxxxxxx> > Acked-by: Scott Branden <scott.branden@xxxxxxxxxxxx> > Cc: Michal Simek <michal.simek@xxxxxxxxxx> > Reviewed-by: Mika Westerberg <mika.westerberg@xxxxxxxxxxxxxxx> > Acked-by: Jarkko Nikula <jarkko.nikula@xxxxxxxxxxxxxxx> > Acked-by: Baruch Siach <baruch@xxxxxxxxxx> > Reviewed-by: Guenter Roeck <linux@xxxxxxxxxxxx> > Cc: Kukjin Kim <kgene@xxxxxxxxxx> > Cc: Krzysztof Kozlowski <krzk@xxxxxxxxxx> > Cc: Dong Aisheng <aisheng.dong@xxxxxxx> > Cc: Shawn Guo <shawnguo@xxxxxxxxxx> > Cc: Sascha Hauer <s.hauer@xxxxxxxxxxxxxx> > Acked-by: Oleksij Rempel <o.rempel@xxxxxxxxxxxxxx> > Acked-by: Vladimir Zapolskiy <vz@xxxxxxxxx> > Cc: Matthias Brugger <matthias.bgg@xxxxxxxxx> > Cc: Gregory CLEMENT <gregory.clement@xxxxxxxxxxx> > Reviewed-by: Linus Walleij <linus.walleij@xxxxxxxxxx> > Cc: "Andreas Färber" <afaerber@xxxxxxx> > Reviewed-by: Manivannan Sadhasivam <manivannan.sadhasivam@xxxxxxxxxx> > Cc: Andy Gross <agross@xxxxxxxxxx> > Cc: Bjorn Andersson <bjorn.andersson@xxxxxxxxxx> > Reviewed-by: Chris Brandt <chris.brandt@xxxxxxxxxxx> > Cc: Heiko Stuebner <heiko@xxxxxxxxx> > Cc: Barry Song <baohua@xxxxxxxxxx> > Cc: Orson Zhai <orsonzhai@xxxxxxxxx> > Reviewed-by: Baolin Wang <baolin.wang7@xxxxxxxxx> > Cc: Chunyan Zhang <zhang.lyra@xxxxxxxxx> > Cc: Pierre-Yves MORDRET <pierre-yves.mordret@xxxxxx> > Cc: Maxime Coquelin <mcoquelin.stm32@xxxxxxxxx> > Cc: Alexandre Torgue <alexandre.torgue@xxxxxx> > Cc: Patrice Chotard <patrice.chotard@xxxxxx> > Acked-by: Ard Biesheuvel <ardb@xxxxxxxxxx> > Cc: Laxman Dewangan <ldewangan@xxxxxxxxxx> > Cc: Dmitry Osipenko <digetx@xxxxxxxxx> > Cc: Masahiro Yamada <yamada.masahiro@xxxxxxxxxxxxx> > --- > v2: > squash to one patch (Wolfram) > used MAX in the definition names (Wolfram) > dropped HZ_PER_* > added collected tags > > drivers/i2c/busses/i2c-altera.c | 6 ++-- > drivers/i2c/busses/i2c-amd-mp2-plat.c | 27 +++++++++------ > drivers/i2c/busses/i2c-aspeed.c | 2 +- > drivers/i2c/busses/i2c-axxia.c | 4 +-- > drivers/i2c/busses/i2c-bcm-iproc.c | 14 ++++---- > drivers/i2c/busses/i2c-bcm-kona.c | 8 ++--- > drivers/i2c/busses/i2c-cadence.c | 7 ++-- > drivers/i2c/busses/i2c-designware-platdrv.c | 37 ++++++++++++--------- > drivers/i2c/busses/i2c-digicolor.c | 3 +- > drivers/i2c/busses/i2c-diolan-u2c.c | 12 +++---- > drivers/i2c/busses/i2c-exynos5.c | 18 ++++------ > drivers/i2c/busses/i2c-hix5hd2.c | 10 +++--- > drivers/i2c/busses/i2c-img-scb.c | 4 +-- > drivers/i2c/busses/i2c-imx-lpi2c.c | 16 +++------ > drivers/i2c/busses/i2c-imx.c | 5 +-- > drivers/i2c/busses/i2c-lpc2k.c | 6 ++-- > drivers/i2c/busses/i2c-mt65xx.c | 21 +++++------- > drivers/i2c/busses/i2c-mv64xxx.c | 6 ++-- > drivers/i2c/busses/i2c-mxs.c | 4 +-- > drivers/i2c/busses/i2c-nomadik.c | 8 ++--- > drivers/i2c/busses/i2c-owl.c | 9 ++--- > drivers/i2c/busses/i2c-qup.c | 11 ++---- > drivers/i2c/busses/i2c-rcar.c | 2 +- > drivers/i2c/busses/i2c-riic.c | 6 ++-- > drivers/i2c/busses/i2c-rk3x.c | 12 +++---- > drivers/i2c/busses/i2c-s3c2410.c | 4 +-- > drivers/i2c/busses/i2c-sh_mobile.c | 9 ++--- > drivers/i2c/busses/i2c-sirf.c | 3 +- > drivers/i2c/busses/i2c-sprd.c | 9 ++--- > drivers/i2c/busses/i2c-st.c | 6 ++-- > drivers/i2c/busses/i2c-stm32f4.c | 6 ++-- > drivers/i2c/busses/i2c-stm32f7.c | 24 ++++++------- > drivers/i2c/busses/i2c-stu300.c | 6 ++-- > drivers/i2c/busses/i2c-synquacer.c | 6 ++-- > drivers/i2c/busses/i2c-tegra.c | 18 ++++------ > drivers/i2c/busses/i2c-uniphier-f.c | 6 ++-- > drivers/i2c/busses/i2c-uniphier.c | 7 ++-- > drivers/i2c/busses/i2c-xlp9xx.c | 8 ++--- > 38 files changed, 168 insertions(+), 202 deletions(-) > > diff --git a/drivers/i2c/busses/i2c-altera.c b/drivers/i2c/busses/i2c-altera.c > index 1de23b4f3809..20ef63820c77 100644 > --- a/drivers/i2c/busses/i2c-altera.c > +++ b/drivers/i2c/busses/i2c-altera.c > @@ -147,7 +147,7 @@ static void altr_i2c_init(struct altr_i2c_dev *idev) > (ALTR_I2C_THRESHOLD << ALTR_I2C_CTRL_TCT_SHFT); > u32 t_high, t_low; > > - if (idev->bus_clk_rate <= 100000) { > + if (idev->bus_clk_rate <= I2C_MAX_STANDARD_MODE_FREQ) { > tmp &= ~ALTR_I2C_CTRL_BSPEED; > /* Standard mode SCL 50/50 */ > t_high = divisor * 1 / 2; > @@ -423,10 +423,10 @@ static int altr_i2c_probe(struct platform_device *pdev) > &idev->bus_clk_rate); > if (val) { > dev_err(&pdev->dev, "Default to 100kHz\n"); > - idev->bus_clk_rate = 100000; /* default clock rate */ > + idev->bus_clk_rate = I2C_MAX_STANDARD_MODE_FREQ; /* default clock rate */ > } > > - if (idev->bus_clk_rate > 400000) { > + if (idev->bus_clk_rate > I2C_MAX_FAST_MODE_FREQ) { > dev_err(&pdev->dev, "invalid clock-frequency %d\n", > idev->bus_clk_rate); > return -EINVAL; > diff --git a/drivers/i2c/busses/i2c-amd-mp2-plat.c b/drivers/i2c/busses/i2c-amd-mp2-plat.c > index f5b3f00c6559..5e5b973cae4c 100644 > --- a/drivers/i2c/busses/i2c-amd-mp2-plat.c > +++ b/drivers/i2c/busses/i2c-amd-mp2-plat.c > @@ -201,32 +201,37 @@ static int i2c_amd_resume(struct amd_i2c_common *i2c_common) > } > #endif > > +static const u32 supported_speeds[] = { > + I2C_MAX_HIGH_SPEED_MODE_FREQ, > + I2C_MAX_TURBO_MODE_FREQ, > + I2C_MAX_FAST_PLUS_MODE_FREQ, > + I2C_MAX_FAST_MODE_FREQ, > + I2C_MAX_STANDARD_MODE_FREQ, > +}; > + > static enum speed_enum i2c_amd_get_bus_speed(struct platform_device *pdev) > { > u32 acpi_speed; > int i; > - static const u32 supported_speeds[] = { > - 0, 100000, 400000, 1000000, 1400000, 3400000 > - }; > > acpi_speed = i2c_acpi_find_bus_speed(&pdev->dev); > /* round down to the lowest standard speed */ > - for (i = 1; i < ARRAY_SIZE(supported_speeds); i++) { > - if (acpi_speed < supported_speeds[i]) > + for (i = 0; i < ARRAY_SIZE(supported_speeds); i++) { > + if (acpi_speed >= supported_speeds[i]) > break; > } > - acpi_speed = supported_speeds[i - 1]; > + acpi_speed = i < ARRAY_SIZE(supported_speeds) ? supported_speeds[i] : 0; > > switch (acpi_speed) { > - case 100000: > + case I2C_MAX_STANDARD_MODE_FREQ: > return speed100k; > - case 400000: > + case I2C_MAX_FAST_MODE_FREQ: > return speed400k; > - case 1000000: > + case I2C_MAX_FAST_PLUS_MODE_FREQ: > return speed1000k; > - case 1400000: > + case I2C_MAX_TURBO_MODE_FREQ: > return speed1400k; > - case 3400000: > + case I2C_MAX_HIGH_SPEED_MODE_FREQ: > return speed3400k; > default: > return speed400k; > diff --git a/drivers/i2c/busses/i2c-aspeed.c b/drivers/i2c/busses/i2c-aspeed.c > index a7be6f24450b..07c1993274c5 100644 > --- a/drivers/i2c/busses/i2c-aspeed.c > +++ b/drivers/i2c/busses/i2c-aspeed.c > @@ -997,7 +997,7 @@ static int aspeed_i2c_probe_bus(struct platform_device *pdev) > if (ret < 0) { > dev_err(&pdev->dev, > "Could not read bus-frequency property\n"); > - bus->bus_frequency = 100000; > + bus->bus_frequency = I2C_MAX_STANDARD_MODE_FREQ; > } > > match = of_match_node(aspeed_i2c_bus_of_table, pdev->dev.of_node); > diff --git a/drivers/i2c/busses/i2c-axxia.c b/drivers/i2c/busses/i2c-axxia.c > index 0214daa913ff..be3681d08a8d 100644 > --- a/drivers/i2c/busses/i2c-axxia.c > +++ b/drivers/i2c/busses/i2c-axxia.c > @@ -199,7 +199,7 @@ static int axxia_i2c_init(struct axxia_i2c_dev *idev) > /* Enable Master Mode */ > writel(0x1, idev->base + GLOBAL_CONTROL); > > - if (idev->bus_clk_rate <= 100000) { > + if (idev->bus_clk_rate <= I2C_MAX_STANDARD_MODE_FREQ) { > /* Standard mode SCL 50/50, tSU:DAT = 250 ns */ > t_high = divisor * 1 / 2; > t_low = divisor * 1 / 2; > @@ -765,7 +765,7 @@ static int axxia_i2c_probe(struct platform_device *pdev) > > of_property_read_u32(np, "clock-frequency", &idev->bus_clk_rate); > if (idev->bus_clk_rate == 0) > - idev->bus_clk_rate = 100000; /* default clock rate */ > + idev->bus_clk_rate = I2C_MAX_STANDARD_MODE_FREQ; /* default clock rate */ > > ret = clk_prepare_enable(idev->i2c_clk); > if (ret) { > diff --git a/drivers/i2c/busses/i2c-bcm-iproc.c b/drivers/i2c/busses/i2c-bcm-iproc.c > index 30efb7913b2e..44be0926b566 100644 > --- a/drivers/i2c/busses/i2c-bcm-iproc.c > +++ b/drivers/i2c/busses/i2c-bcm-iproc.c > @@ -858,25 +858,25 @@ static int bcm_iproc_i2c_cfg_speed(struct bcm_iproc_i2c_dev *iproc_i2c) > if (ret < 0) { > dev_info(iproc_i2c->device, > "unable to interpret clock-frequency DT property\n"); > - bus_speed = 100000; > + bus_speed = I2C_MAX_STANDARD_MODE_FREQ; > } > > - if (bus_speed < 100000) { > + if (bus_speed < I2C_MAX_STANDARD_MODE_FREQ) { > dev_err(iproc_i2c->device, "%d Hz bus speed not supported\n", > bus_speed); > dev_err(iproc_i2c->device, > "valid speeds are 100khz and 400khz\n"); > return -EINVAL; > - } else if (bus_speed < 400000) { > - bus_speed = 100000; > + } else if (bus_speed < I2C_MAX_FAST_MODE_FREQ) { > + bus_speed = I2C_MAX_STANDARD_MODE_FREQ; > } else { > - bus_speed = 400000; > + bus_speed = I2C_MAX_FAST_MODE_FREQ; > } > > iproc_i2c->bus_speed = bus_speed; > val = iproc_i2c_rd_reg(iproc_i2c, TIM_CFG_OFFSET); > val &= ~BIT(TIM_CFG_MODE_400_SHIFT); > - val |= (bus_speed == 400000) << TIM_CFG_MODE_400_SHIFT; > + val |= (bus_speed == I2C_MAX_FAST_MODE_FREQ) << TIM_CFG_MODE_400_SHIFT; > iproc_i2c_wr_reg(iproc_i2c, TIM_CFG_OFFSET, val); > > dev_info(iproc_i2c->device, "bus set to %u Hz\n", bus_speed); > @@ -1029,7 +1029,7 @@ static int bcm_iproc_i2c_resume(struct device *dev) > /* configure to the desired bus speed */ > val = iproc_i2c_rd_reg(iproc_i2c, TIM_CFG_OFFSET); > val &= ~BIT(TIM_CFG_MODE_400_SHIFT); > - val |= (iproc_i2c->bus_speed == 400000) << TIM_CFG_MODE_400_SHIFT; > + val |= (iproc_i2c->bus_speed == I2C_MAX_FAST_MODE_FREQ) << TIM_CFG_MODE_400_SHIFT; > iproc_i2c_wr_reg(iproc_i2c, TIM_CFG_OFFSET, val); > > bcm_iproc_i2c_enable_disable(iproc_i2c, true); > diff --git a/drivers/i2c/busses/i2c-bcm-kona.c b/drivers/i2c/busses/i2c-bcm-kona.c > index 4e489a9d16fb..948cd6e13cf4 100644 > --- a/drivers/i2c/busses/i2c-bcm-kona.c > +++ b/drivers/i2c/busses/i2c-bcm-kona.c > @@ -722,16 +722,16 @@ static int bcm_kona_i2c_assign_bus_speed(struct bcm_kona_i2c_dev *dev) > } > > switch (bus_speed) { > - case 100000: > + case I2C_MAX_STANDARD_MODE_FREQ: > dev->std_cfg = &std_cfg_table[BCM_SPD_100K]; > break; > - case 400000: > + case I2C_MAX_FAST_MODE_FREQ: > dev->std_cfg = &std_cfg_table[BCM_SPD_400K]; > break; > - case 1000000: > + case I2C_MAX_FAST_PLUS_MODE_FREQ: > dev->std_cfg = &std_cfg_table[BCM_SPD_1MHZ]; > break; > - case 3400000: > + case I2C_MAX_HIGH_SPEED_MODE_FREQ: > /* Send mastercode at 100k */ > dev->std_cfg = &std_cfg_table[BCM_SPD_100K]; > dev->hs_cfg = &hs_cfg_table[BCM_SPD_3P4MHZ]; > diff --git a/drivers/i2c/busses/i2c-cadence.c b/drivers/i2c/busses/i2c-cadence.c > index 1105aee6634a..89d58f7d2a25 100644 > --- a/drivers/i2c/busses/i2c-cadence.c > +++ b/drivers/i2c/busses/i2c-cadence.c > @@ -104,9 +104,6 @@ > > #define DRIVER_NAME "cdns-i2c" > > -#define CDNS_I2C_SPEED_MAX 400000 > -#define CDNS_I2C_SPEED_DEFAULT 100000 > - > #define CDNS_I2C_DIVA_MAX 4 > #define CDNS_I2C_DIVB_MAX 64 > > @@ -949,8 +946,8 @@ static int cdns_i2c_probe(struct platform_device *pdev) > > ret = of_property_read_u32(pdev->dev.of_node, "clock-frequency", > &id->i2c_clk); > - if (ret || (id->i2c_clk > CDNS_I2C_SPEED_MAX)) > - id->i2c_clk = CDNS_I2C_SPEED_DEFAULT; > + if (ret || (id->i2c_clk > I2C_MAX_FAST_MODE_FREQ)) > + id->i2c_clk = I2C_MAX_STANDARD_MODE_FREQ; > > cdns_i2c_writereg(CDNS_I2C_CR_ACK_EN | CDNS_I2C_CR_NEA | CDNS_I2C_CR_MS, > CDNS_I2C_CR_OFFSET); > diff --git a/drivers/i2c/busses/i2c-designware-platdrv.c b/drivers/i2c/busses/i2c-designware-platdrv.c > index 3b7d58c2fe85..04f76a6fa4af 100644 > --- a/drivers/i2c/busses/i2c-designware-platdrv.c > +++ b/drivers/i2c/busses/i2c-designware-platdrv.c > @@ -99,16 +99,16 @@ static int dw_i2c_acpi_configure(struct platform_device *pdev) > dw_i2c_acpi_params(pdev, "FMCN", &dev->fs_hcnt, &dev->fs_lcnt, &fs_ht); > > switch (t->bus_freq_hz) { > - case 100000: > + case I2C_MAX_STANDARD_MODE_FREQ: > dev->sda_hold_time = ss_ht; > break; > - case 1000000: > + case I2C_MAX_FAST_PLUS_MODE_FREQ: > dev->sda_hold_time = fp_ht; > break; > - case 3400000: > + case I2C_MAX_HIGH_SPEED_MODE_FREQ: > dev->sda_hold_time = hs_ht; > break; > - case 400000: > + case I2C_MAX_FAST_MODE_FREQ: > default: > dev->sda_hold_time = fs_ht; > break; > @@ -198,10 +198,10 @@ static void i2c_dw_configure_master(struct dw_i2c_dev *dev) > dev->mode = DW_IC_MASTER; > > switch (t->bus_freq_hz) { > - case 100000: > + case I2C_MAX_STANDARD_MODE_FREQ: > dev->master_cfg |= DW_IC_CON_SPEED_STD; > break; > - case 3400000: > + case I2C_MAX_HIGH_SPEED_MODE_FREQ: > dev->master_cfg |= DW_IC_CON_SPEED_HIGH; > break; > default: > @@ -249,6 +249,13 @@ static void dw_i2c_plat_pm_cleanup(struct dw_i2c_dev *dev) > pm_runtime_put_noidle(dev->dev); > } > > +static const u32 supported_speeds[] = { > + I2C_MAX_HIGH_SPEED_MODE_FREQ, > + I2C_MAX_FAST_PLUS_MODE_FREQ, > + I2C_MAX_FAST_MODE_FREQ, > + I2C_MAX_STANDARD_MODE_FREQ, > +}; > + > static int dw_i2c_plat_probe(struct platform_device *pdev) > { > struct dw_i2c_platform_data *pdata = dev_get_platdata(&pdev->dev); > @@ -258,9 +265,6 @@ static int dw_i2c_plat_probe(struct platform_device *pdev) > u32 acpi_speed; > struct resource *mem; > int i, irq, ret; > - static const int supported_speeds[] = { > - 0, 100000, 400000, 1000000, 3400000 > - }; > > irq = platform_get_irq(pdev, 0); > if (irq < 0) > @@ -296,11 +300,11 @@ static int dw_i2c_plat_probe(struct platform_device *pdev) > * Some DSTDs use a non standard speed, round down to the lowest > * standard speed. > */ > - for (i = 1; i < ARRAY_SIZE(supported_speeds); i++) { > - if (acpi_speed < supported_speeds[i]) > + for (i = 0; i < ARRAY_SIZE(supported_speeds); i++) { > + if (acpi_speed >= supported_speeds[i]) > break; > } > - acpi_speed = supported_speeds[i - 1]; > + acpi_speed = i < ARRAY_SIZE(supported_speeds) ? supported_speeds[i] : 0; > > /* > * Find bus speed from the "clock-frequency" device property, ACPI > @@ -311,7 +315,7 @@ static int dw_i2c_plat_probe(struct platform_device *pdev) > else if (acpi_speed || t->bus_freq_hz) > t->bus_freq_hz = max(t->bus_freq_hz, acpi_speed); > else > - t->bus_freq_hz = 400000; > + t->bus_freq_hz = I2C_MAX_FAST_MODE_FREQ; > > dev->flags |= (uintptr_t)device_get_match_data(&pdev->dev); > > @@ -325,8 +329,11 @@ static int dw_i2c_plat_probe(struct platform_device *pdev) > * Only standard mode at 100kHz, fast mode at 400kHz, > * fast mode plus at 1MHz and high speed mode at 3.4MHz are supported. > */ > - if (t->bus_freq_hz != 100000 && t->bus_freq_hz != 400000 && > - t->bus_freq_hz != 1000000 && t->bus_freq_hz != 3400000) { > + for (i = 0; i < ARRAY_SIZE(supported_speeds); i++) { > + if (t->bus_freq_hz == supported_speeds[i]) > + break; > + } > + if (i == ARRAY_SIZE(supported_speeds)) { > dev_err(&pdev->dev, > "%d Hz is unsupported, only 100kHz, 400kHz, 1MHz and 3.4MHz are supported\n", > t->bus_freq_hz); > diff --git a/drivers/i2c/busses/i2c-digicolor.c b/drivers/i2c/busses/i2c-digicolor.c > index 3adf72540db1..056a5c4f0833 100644 > --- a/drivers/i2c/busses/i2c-digicolor.c > +++ b/drivers/i2c/busses/i2c-digicolor.c > @@ -18,7 +18,6 @@ > #include <linux/of.h> > #include <linux/platform_device.h> > > -#define DEFAULT_FREQ 100000 > #define TIMEOUT_MS 100 > > #define II_CONTROL 0x0 > @@ -300,7 +299,7 @@ static int dc_i2c_probe(struct platform_device *pdev) > > if (of_property_read_u32(pdev->dev.of_node, "clock-frequency", > &i2c->frequency)) > - i2c->frequency = DEFAULT_FREQ; > + i2c->frequency = I2C_MAX_STANDARD_MODE_FREQ; > > i2c->dev = &pdev->dev; > platform_set_drvdata(pdev, i2c); > diff --git a/drivers/i2c/busses/i2c-diolan-u2c.c b/drivers/i2c/busses/i2c-diolan-u2c.c > index 382f105e0fe3..b48b7888936f 100644 > --- a/drivers/i2c/busses/i2c-diolan-u2c.c > +++ b/drivers/i2c/busses/i2c-diolan-u2c.c > @@ -64,8 +64,6 @@ > #define U2C_I2C_SPEED_2KHZ 242 /* 2 kHz, minimum speed */ > #define U2C_I2C_SPEED(f) ((DIV_ROUND_UP(1000000, (f)) - 10) / 2 + 1) > > -#define U2C_I2C_FREQ_FAST 400000 > -#define U2C_I2C_FREQ_STD 100000 > #define U2C_I2C_FREQ(s) (1000000 / (2 * (s - 1) + 10)) > > #define DIOLAN_USB_TIMEOUT 100 /* in ms */ > @@ -87,7 +85,7 @@ struct i2c_diolan_u2c { > int ocount; /* Number of enqueued messages */ > }; > > -static uint frequency = U2C_I2C_FREQ_STD; /* I2C clock frequency in Hz */ > +static uint frequency = I2C_MAX_STANDARD_MODE_FREQ; /* I2C clock frequency in Hz */ > > module_param(frequency, uint, S_IRUGO | S_IWUSR); > MODULE_PARM_DESC(frequency, "I2C clock frequency in hertz"); > @@ -299,12 +297,12 @@ static int diolan_init(struct i2c_diolan_u2c *dev) > { > int speed, ret; > > - if (frequency >= 200000) { > + if (frequency >= 2 * I2C_MAX_STANDARD_MODE_FREQ) { > speed = U2C_I2C_SPEED_FAST; > - frequency = U2C_I2C_FREQ_FAST; > - } else if (frequency >= 100000 || frequency == 0) { > + frequency = I2C_MAX_FAST_MODE_FREQ; > + } else if (frequency >= I2C_MAX_STANDARD_MODE_FREQ || frequency == 0) { > speed = U2C_I2C_SPEED_STD; > - frequency = U2C_I2C_FREQ_STD; > + frequency = I2C_MAX_STANDARD_MODE_FREQ; > } else { > speed = U2C_I2C_SPEED(frequency); > if (speed > U2C_I2C_SPEED_2KHZ) > diff --git a/drivers/i2c/busses/i2c-exynos5.c b/drivers/i2c/busses/i2c-exynos5.c > index e7514c16b756..4bf3e175ae3e 100644 > --- a/drivers/i2c/busses/i2c-exynos5.c > +++ b/drivers/i2c/busses/i2c-exynos5.c > @@ -164,13 +164,6 @@ > #define HSI2C_MASTER_ID(x) ((x & 0xff) << 24) > #define MASTER_ID(x) ((x & 0x7) + 0x08) > > -/* > - * Controller operating frequency, timing values for operation > - * are calculated against this frequency > - */ > -#define HSI2C_HS_TX_CLOCK 1000000 > -#define HSI2C_FS_TX_CLOCK 100000 > - > #define EXYNOS5_I2C_TIMEOUT (msecs_to_jiffies(100)) > > enum i2c_type_exynos { > @@ -264,6 +257,9 @@ static void exynos5_i2c_clr_pend_irq(struct exynos5_i2c *i2c) > * exynos5_i2c_set_timing: updates the registers with appropriate > * timing values calculated > * > + * Timing values for operation are calculated against either 100kHz > + * or 1MHz controller operating frequency. > + * > * Returns 0 on success, -EINVAL if the cycle length cannot > * be calculated. > */ > @@ -281,7 +277,7 @@ static int exynos5_i2c_set_timing(struct exynos5_i2c *i2c, bool hs_timings) > unsigned int t_ftl_cycle; > unsigned int clkin = clk_get_rate(i2c->clk); > unsigned int op_clk = hs_timings ? i2c->op_clock : > - (i2c->op_clock >= HSI2C_HS_TX_CLOCK) ? HSI2C_FS_TX_CLOCK : > + (i2c->op_clock >= I2C_MAX_FAST_PLUS_MODE_FREQ) ? I2C_MAX_STANDARD_MODE_FREQ : > i2c->op_clock; > int div, clk_cycle, temp; > > @@ -353,7 +349,7 @@ static int exynos5_hsi2c_clock_setup(struct exynos5_i2c *i2c) > /* always set Fast Speed timings */ > int ret = exynos5_i2c_set_timing(i2c, false); > > - if (ret < 0 || i2c->op_clock < HSI2C_HS_TX_CLOCK) > + if (ret < 0 || i2c->op_clock < I2C_MAX_FAST_PLUS_MODE_FREQ) > return ret; > > return exynos5_i2c_set_timing(i2c, true); > @@ -376,7 +372,7 @@ static void exynos5_i2c_init(struct exynos5_i2c *i2c) > i2c->regs + HSI2C_CTL); > writel(HSI2C_TRAILING_COUNT, i2c->regs + HSI2C_TRAILIG_CTL); > > - if (i2c->op_clock >= HSI2C_HS_TX_CLOCK) { > + if (i2c->op_clock >= I2C_MAX_FAST_PLUS_MODE_FREQ) { > writel(HSI2C_MASTER_ID(MASTER_ID(i2c->adap.nr)), > i2c->regs + HSI2C_ADDR); > i2c_conf |= HSI2C_HS_MODE; > @@ -748,7 +744,7 @@ static int exynos5_i2c_probe(struct platform_device *pdev) > return -ENOMEM; > > if (of_property_read_u32(np, "clock-frequency", &i2c->op_clock)) > - i2c->op_clock = HSI2C_FS_TX_CLOCK; > + i2c->op_clock = I2C_MAX_STANDARD_MODE_FREQ; > > strlcpy(i2c->adap.name, "exynos5-i2c", sizeof(i2c->adap.name)); > i2c->adap.owner = THIS_MODULE; > diff --git a/drivers/i2c/busses/i2c-hix5hd2.c b/drivers/i2c/busses/i2c-hix5hd2.c > index 8497c7a95dd4..febc591efbef 100644 > --- a/drivers/i2c/busses/i2c-hix5hd2.c > +++ b/drivers/i2c/busses/i2c-hix5hd2.c > @@ -68,8 +68,6 @@ > #define I2C_ARBITRATE_INTR BIT(1) > #define I2C_OVER_INTR BIT(0) > > -#define HIX5I2C_MAX_FREQ 400000 /* 400k */ > - > enum hix5hd2_i2c_state { > HIX5I2C_STAT_RW_ERR = -1, > HIX5I2C_STAT_INIT, > @@ -400,12 +398,12 @@ static int hix5hd2_i2c_probe(struct platform_device *pdev) > > if (of_property_read_u32(np, "clock-frequency", &freq)) { > /* use 100k as default value */ > - priv->freq = 100000; > + priv->freq = I2C_MAX_STANDARD_MODE_FREQ; > } else { > - if (freq > HIX5I2C_MAX_FREQ) { > - priv->freq = HIX5I2C_MAX_FREQ; > + if (freq > I2C_MAX_FAST_MODE_FREQ) { > + priv->freq = I2C_MAX_FAST_MODE_FREQ; > dev_warn(priv->dev, "use max freq %d instead\n", > - HIX5I2C_MAX_FREQ); > + I2C_MAX_FAST_MODE_FREQ); > } else { > priv->freq = freq; > } > diff --git a/drivers/i2c/busses/i2c-img-scb.c b/drivers/i2c/busses/i2c-img-scb.c > index 20a4fbc53007..422097a31c95 100644 > --- a/drivers/i2c/busses/i2c-img-scb.c > +++ b/drivers/i2c/busses/i2c-img-scb.c > @@ -304,7 +304,7 @@ static struct img_i2c_timings timings[] = { > /* Standard mode */ > { > .name = "standard", > - .max_bitrate = 100000, > + .max_bitrate = I2C_MAX_STANDARD_MODE_FREQ, > .tckh = 4000, > .tckl = 4700, > .tsdh = 4700, > @@ -316,7 +316,7 @@ static struct img_i2c_timings timings[] = { > /* Fast mode */ > { > .name = "fast", > - .max_bitrate = 400000, > + .max_bitrate = I2C_MAX_FAST_MODE_FREQ, > .tckh = 600, > .tckl = 1300, > .tsdh = 600, > diff --git a/drivers/i2c/busses/i2c-imx-lpi2c.c b/drivers/i2c/busses/i2c-imx-lpi2c.c > index c92b56485fa6..a1ae9b464ff9 100644 > --- a/drivers/i2c/busses/i2c-imx-lpi2c.c > +++ b/drivers/i2c/busses/i2c-imx-lpi2c.c > @@ -75,12 +75,6 @@ > #define I2C_CLK_RATIO 2 > #define CHUNK_DATA 256 > > -#define LPI2C_DEFAULT_RATE 100000 > -#define STARDARD_MAX_BITRATE 400000 > -#define FAST_MAX_BITRATE 1000000 > -#define FAST_PLUS_MAX_BITRATE 3400000 > -#define HIGHSPEED_MAX_BITRATE 5000000 > - > #define I2C_PM_TIMEOUT 10 /* ms */ > > enum lpi2c_imx_mode { > @@ -152,13 +146,13 @@ static void lpi2c_imx_set_mode(struct lpi2c_imx_struct *lpi2c_imx) > unsigned int bitrate = lpi2c_imx->bitrate; > enum lpi2c_imx_mode mode; > > - if (bitrate < STARDARD_MAX_BITRATE) > + if (bitrate < I2C_MAX_FAST_MODE_FREQ) > mode = STANDARD; > - else if (bitrate < FAST_MAX_BITRATE) > + else if (bitrate < I2C_MAX_FAST_PLUS_MODE_FREQ) > mode = FAST; > - else if (bitrate < FAST_PLUS_MAX_BITRATE) > + else if (bitrate < I2C_MAX_HIGH_SPEED_MODE_FREQ) > mode = FAST_PLUS; > - else if (bitrate < HIGHSPEED_MAX_BITRATE) > + else if (bitrate < I2C_MAX_ULTRA_SPEED_MODE_FREQ) > mode = HS; > else > mode = ULTRA_FAST; > @@ -578,7 +572,7 @@ static int lpi2c_imx_probe(struct platform_device *pdev) > ret = of_property_read_u32(pdev->dev.of_node, > "clock-frequency", &lpi2c_imx->bitrate); > if (ret) > - lpi2c_imx->bitrate = LPI2C_DEFAULT_RATE; > + lpi2c_imx->bitrate = I2C_MAX_STANDARD_MODE_FREQ; > > ret = devm_request_irq(&pdev->dev, irq, lpi2c_imx_isr, 0, > pdev->name, lpi2c_imx); > diff --git a/drivers/i2c/busses/i2c-imx.c b/drivers/i2c/busses/i2c-imx.c > index 79d5b37fd8a1..66d7a01adc11 100644 > --- a/drivers/i2c/busses/i2c-imx.c > +++ b/drivers/i2c/busses/i2c-imx.c > @@ -50,9 +50,6 @@ > /* This will be the driver name the kernel reports */ > #define DRIVER_NAME "imx-i2c" > > -/* Default value */ > -#define IMX_I2C_BIT_RATE 100000 /* 100kHz */ > - > /* > * Enable DMA if transfer byte size is bigger than this threshold. > * As the hardware request, it must bigger than 4 bytes.\ > @@ -1203,7 +1200,7 @@ static int i2c_imx_probe(struct platform_device *pdev) > goto rpm_disable; > > /* Set up clock divider */ > - i2c_imx->bitrate = IMX_I2C_BIT_RATE; > + i2c_imx->bitrate = I2C_MAX_STANDARD_MODE_FREQ; > ret = of_property_read_u32(pdev->dev.of_node, > "clock-frequency", &i2c_imx->bitrate); > if (ret < 0 && pdata && pdata->bitrate) > diff --git a/drivers/i2c/busses/i2c-lpc2k.c b/drivers/i2c/busses/i2c-lpc2k.c > index deea18b14add..13b0c12e2dba 100644 > --- a/drivers/i2c/busses/i2c-lpc2k.c > +++ b/drivers/i2c/busses/i2c-lpc2k.c > @@ -396,7 +396,7 @@ static int i2c_lpc2k_probe(struct platform_device *pdev) > ret = of_property_read_u32(pdev->dev.of_node, "clock-frequency", > &bus_clk_rate); > if (ret) > - bus_clk_rate = 100000; /* 100 kHz default clock rate */ > + bus_clk_rate = I2C_MAX_STANDARD_MODE_FREQ; > > clkrate = clk_get_rate(i2c->clk); > if (clkrate == 0) { > @@ -407,9 +407,9 @@ static int i2c_lpc2k_probe(struct platform_device *pdev) > > /* Setup I2C dividers to generate clock with proper duty cycle */ > clkrate = clkrate / bus_clk_rate; > - if (bus_clk_rate <= 100000) > + if (bus_clk_rate <= I2C_MAX_STANDARD_MODE_FREQ) > scl_high = (clkrate * I2C_STD_MODE_DUTY) / 100; > - else if (bus_clk_rate <= 400000) > + else if (bus_clk_rate <= I2C_MAX_FAST_MODE_FREQ) > scl_high = (clkrate * I2C_FAST_MODE_DUTY) / 100; > else > scl_high = (clkrate * I2C_FAST_MODE_PLUS_DUTY) / 100; > diff --git a/drivers/i2c/busses/i2c-mt65xx.c b/drivers/i2c/busses/i2c-mt65xx.c > index 2152ec5f535c..47db2f2c17a6 100644 > --- a/drivers/i2c/busses/i2c-mt65xx.c > +++ b/drivers/i2c/busses/i2c-mt65xx.c > @@ -56,9 +56,6 @@ > #define I2C_DMA_4G_MODE 0x0001 > > #define I2C_DEFAULT_CLK_DIV 5 > -#define I2C_DEFAULT_SPEED 100000 /* hz */ > -#define MAX_FS_MODE_SPEED 400000 > -#define MAX_HS_MODE_SPEED 3400000 > #define MAX_SAMPLE_CNT_DIV 8 > #define MAX_STEP_CNT_DIV 64 > #define MAX_HS_STEP_CNT_DIV 8 > @@ -450,10 +447,10 @@ static int mtk_i2c_calculate_speed(struct mtk_i2c *i2c, unsigned int clk_src, > unsigned int best_mul; > unsigned int cnt_mul; > > - if (target_speed > MAX_HS_MODE_SPEED) > - target_speed = MAX_HS_MODE_SPEED; > + if (target_speed > I2C_MAX_FAST_PLUS_MODE_FREQ) > + target_speed = I2C_MAX_FAST_PLUS_MODE_FREQ; > > - if (target_speed > MAX_FS_MODE_SPEED) > + if (target_speed > I2C_MAX_FAST_MODE_FREQ) > max_step_cnt = MAX_HS_STEP_CNT_DIV; > else > max_step_cnt = MAX_STEP_CNT_DIV; > @@ -514,9 +511,9 @@ static int mtk_i2c_set_speed(struct mtk_i2c *i2c, unsigned int parent_clk) > clk_src = parent_clk / i2c->clk_src_div; > target_speed = i2c->speed_hz; > > - if (target_speed > MAX_FS_MODE_SPEED) { > + if (target_speed > I2C_MAX_FAST_MODE_FREQ) { > /* Set master code speed register */ > - ret = mtk_i2c_calculate_speed(i2c, clk_src, MAX_FS_MODE_SPEED, > + ret = mtk_i2c_calculate_speed(i2c, clk_src, I2C_MAX_FAST_MODE_FREQ, > &l_step_cnt, &l_sample_cnt); > if (ret < 0) > return ret; > @@ -581,7 +578,7 @@ static int mtk_i2c_do_transfer(struct mtk_i2c *i2c, struct i2c_msg *msgs, > > control_reg = mtk_i2c_readw(i2c, OFFSET_CONTROL) & > ~(I2C_CONTROL_DIR_CHANGE | I2C_CONTROL_RS); > - if ((i2c->speed_hz > MAX_FS_MODE_SPEED) || (left_num >= 1)) > + if ((i2c->speed_hz > I2C_MAX_FAST_MODE_FREQ) || (left_num >= 1)) > control_reg |= I2C_CONTROL_RS; > > if (i2c->op == I2C_MASTER_WRRD) > @@ -590,7 +587,7 @@ static int mtk_i2c_do_transfer(struct mtk_i2c *i2c, struct i2c_msg *msgs, > mtk_i2c_writew(i2c, control_reg, OFFSET_CONTROL); > > /* set start condition */ > - if (i2c->speed_hz <= I2C_DEFAULT_SPEED) > + if (i2c->speed_hz <= I2C_MAX_STANDARD_MODE_FREQ) > mtk_i2c_writew(i2c, I2C_ST_START_CON, OFFSET_EXT_CONF); > else > mtk_i2c_writew(i2c, I2C_FS_START_CON, OFFSET_EXT_CONF); > @@ -798,7 +795,7 @@ static int mtk_i2c_transfer(struct i2c_adapter *adap, > } > } > > - if (i2c->auto_restart && num >= 2 && i2c->speed_hz > MAX_FS_MODE_SPEED) > + if (i2c->auto_restart && num >= 2 && i2c->speed_hz > I2C_MAX_FAST_MODE_FREQ) > /* ignore the first restart irq after the master code, > * otherwise the first transfer will be discarded. > */ > @@ -893,7 +890,7 @@ static int mtk_i2c_parse_dt(struct device_node *np, struct mtk_i2c *i2c) > > ret = of_property_read_u32(np, "clock-frequency", &i2c->speed_hz); > if (ret < 0) > - i2c->speed_hz = I2C_DEFAULT_SPEED; > + i2c->speed_hz = I2C_MAX_STANDARD_MODE_FREQ; > > ret = of_property_read_u32(np, "clock-div", &i2c->clk_src_div); > if (ret < 0) > diff --git a/drivers/i2c/busses/i2c-mv64xxx.c b/drivers/i2c/busses/i2c-mv64xxx.c > index febb7c7ea72b..9b8f1d8552ea 100644 > --- a/drivers/i2c/busses/i2c-mv64xxx.c > +++ b/drivers/i2c/busses/i2c-mv64xxx.c > @@ -810,7 +810,7 @@ mv64xxx_of_config(struct mv64xxx_i2c_data *drv_data, > tclk = clk_get_rate(drv_data->clk); > > if (of_property_read_u32(np, "clock-frequency", &bus_freq)) > - bus_freq = 100000; /* 100kHz by default */ > + bus_freq = I2C_MAX_STANDARD_MODE_FREQ; /* 100kHz by default */ > > if (of_device_is_compatible(np, "allwinner,sun4i-a10-i2c") || > of_device_is_compatible(np, "allwinner,sun6i-a31-i2c")) > @@ -846,14 +846,14 @@ mv64xxx_of_config(struct mv64xxx_i2c_data *drv_data, > if (of_device_is_compatible(np, "marvell,mv78230-i2c")) { > drv_data->offload_enabled = true; > /* The delay is only needed in standard mode (100kHz) */ > - if (bus_freq <= 100000) > + if (bus_freq <= I2C_MAX_STANDARD_MODE_FREQ) > drv_data->errata_delay = true; > } > > if (of_device_is_compatible(np, "marvell,mv78230-a0-i2c")) { > drv_data->offload_enabled = false; > /* The delay is only needed in standard mode (100kHz) */ > - if (bus_freq <= 100000) > + if (bus_freq <= I2C_MAX_STANDARD_MODE_FREQ) > drv_data->errata_delay = true; > } > > diff --git a/drivers/i2c/busses/i2c-mxs.c b/drivers/i2c/busses/i2c-mxs.c > index 89224913f578..ca7aa587b71f 100644 > --- a/drivers/i2c/busses/i2c-mxs.c > +++ b/drivers/i2c/busses/i2c-mxs.c > @@ -731,7 +731,7 @@ static void mxs_i2c_derive_timing(struct mxs_i2c_dev *i2c, uint32_t speed) > * This is compensated for by subtracting the respective constants > * from the values written to the timing registers. > */ > - if (speed > 100000) { > + if (speed > I2C_MAX_STANDARD_MODE_FREQ) { > /* fast mode */ > low_count = DIV_ROUND_CLOSEST(divider * 13, (13 + 6)); > high_count = DIV_ROUND_CLOSEST(divider * 6, (13 + 6)); > @@ -769,7 +769,7 @@ static int mxs_i2c_get_ofdata(struct mxs_i2c_dev *i2c) > ret = of_property_read_u32(node, "clock-frequency", &speed); > if (ret) { > dev_warn(dev, "No I2C speed selected, using 100kHz\n"); > - speed = 100000; > + speed = I2C_MAX_STANDARD_MODE_FREQ; > } > > mxs_i2c_derive_timing(i2c, speed); > diff --git a/drivers/i2c/busses/i2c-nomadik.c b/drivers/i2c/busses/i2c-nomadik.c > index 01a7d72e5511..e1e8d4ef9aa7 100644 > --- a/drivers/i2c/busses/i2c-nomadik.c > +++ b/drivers/i2c/busses/i2c-nomadik.c > @@ -396,7 +396,7 @@ static void setup_i2c_controller(struct nmk_i2c_dev *dev) > * 2 whereas it is 3 for fast and fastplus mode of > * operation. TODO - high speed support. > */ > - div = (dev->clk_freq > 100000) ? 3 : 2; > + div = (dev->clk_freq > I2C_MAX_STANDARD_MODE_FREQ) ? 3 : 2; > > /* > * generate the mask for baud rate counters. The controller > @@ -420,7 +420,7 @@ static void setup_i2c_controller(struct nmk_i2c_dev *dev) > if (dev->sm > I2C_FREQ_MODE_FAST) { > dev_err(&dev->adev->dev, > "do not support this mode defaulting to std. mode\n"); > - brcr2 = i2c_clk/(100000 * 2) & 0xffff; > + brcr2 = i2c_clk / (I2C_MAX_STANDARD_MODE_FREQ * 2) & 0xffff; > writel((brcr1 | brcr2), dev->virtbase + I2C_BRCR); > writel(I2C_FREQ_MODE_STANDARD << 4, > dev->virtbase + I2C_CR); > @@ -949,10 +949,10 @@ static void nmk_i2c_of_probe(struct device_node *np, > { > /* Default to 100 kHz if no frequency is given in the node */ > if (of_property_read_u32(np, "clock-frequency", &nmk->clk_freq)) > - nmk->clk_freq = 100000; > + nmk->clk_freq = I2C_MAX_STANDARD_MODE_FREQ; > > /* This driver only supports 'standard' and 'fast' modes of operation. */ > - if (nmk->clk_freq <= 100000) > + if (nmk->clk_freq <= I2C_MAX_STANDARD_MODE_FREQ) > nmk->sm = I2C_FREQ_MODE_STANDARD; > else > nmk->sm = I2C_FREQ_MODE_FAST; > diff --git a/drivers/i2c/busses/i2c-owl.c b/drivers/i2c/busses/i2c-owl.c > index b6b5a495118b..3ab8be62c581 100644 > --- a/drivers/i2c/busses/i2c-owl.c > +++ b/drivers/i2c/busses/i2c-owl.c > @@ -87,9 +87,6 @@ > > #define OWL_I2C_MAX_RETRIES 50 > > -#define OWL_I2C_DEF_SPEED_HZ 100000 > -#define OWL_I2C_MAX_SPEED_HZ 400000 > - > struct owl_i2c_dev { > struct i2c_adapter adap; > struct i2c_msg *msg; > @@ -419,11 +416,11 @@ static int owl_i2c_probe(struct platform_device *pdev) > > if (of_property_read_u32(dev->of_node, "clock-frequency", > &i2c_dev->bus_freq)) > - i2c_dev->bus_freq = OWL_I2C_DEF_SPEED_HZ; > + i2c_dev->bus_freq = I2C_MAX_STANDARD_MODE_FREQ; > > /* We support only frequencies of 100k and 400k for now */ > - if (i2c_dev->bus_freq != OWL_I2C_DEF_SPEED_HZ && > - i2c_dev->bus_freq != OWL_I2C_MAX_SPEED_HZ) { > + if (i2c_dev->bus_freq != I2C_MAX_STANDARD_MODE_FREQ && > + i2c_dev->bus_freq != I2C_MAX_FAST_MODE_FREQ) { > dev_err(dev, "invalid clock-frequency %d\n", i2c_dev->bus_freq); > return -EINVAL; > } > diff --git a/drivers/i2c/busses/i2c-qup.c b/drivers/i2c/busses/i2c-qup.c > index 2d7dabe12723..fe39743df0de 100644 > --- a/drivers/i2c/busses/i2c-qup.c > +++ b/drivers/i2c/busses/i2c-qup.c > @@ -136,13 +136,8 @@ > */ > #define TOUT_MIN 2 > > -/* I2C Frequency Modes */ > -#define I2C_STANDARD_FREQ 100000 > -#define I2C_FAST_MODE_FREQ 400000 > -#define I2C_FAST_MODE_PLUS_FREQ 1000000 > - > /* Default values. Use these if FW query fails */ > -#define DEFAULT_CLK_FREQ I2C_STANDARD_FREQ > +#define DEFAULT_CLK_FREQ I2C_MAX_STANDARD_MODE_FREQ > #define DEFAULT_SRC_CLK 20000000 > > /* > @@ -1756,7 +1751,7 @@ static int qup_i2c_probe(struct platform_device *pdev) > > nodma: > /* We support frequencies up to FAST Mode Plus (1MHz) */ > - if (!clk_freq || clk_freq > I2C_FAST_MODE_PLUS_FREQ) { > + if (!clk_freq || clk_freq > I2C_MAX_FAST_PLUS_MODE_FREQ) { > dev_err(qup->dev, "clock frequency not supported %d\n", > clk_freq); > return -EINVAL; > @@ -1861,7 +1856,7 @@ static int qup_i2c_probe(struct platform_device *pdev) > qup->in_fifo_sz = qup->in_blk_sz * (2 << size); > > hs_div = 3; > - if (clk_freq <= I2C_STANDARD_FREQ) { > + if (clk_freq <= I2C_MAX_STANDARD_MODE_FREQ) { > fs_div = ((src_clk_freq / clk_freq) / 2) - 3; > qup->clk_ctl = (hs_div << 8) | (fs_div & 0xff); > } else { > diff --git a/drivers/i2c/busses/i2c-rcar.c b/drivers/i2c/busses/i2c-rcar.c > index 879f0e61a496..2b7e44fb127b 100644 > --- a/drivers/i2c/busses/i2c-rcar.c > +++ b/drivers/i2c/busses/i2c-rcar.c > @@ -242,7 +242,7 @@ static int rcar_i2c_clock_calculate(struct rcar_i2c_priv *priv, struct i2c_timin > struct device *dev = rcar_i2c_priv_to_dev(priv); > > /* Fall back to previously used values if not supplied */ > - t->bus_freq_hz = t->bus_freq_hz ?: 100000; > + t->bus_freq_hz = t->bus_freq_hz ?: I2C_MAX_STANDARD_MODE_FREQ; > t->scl_fall_ns = t->scl_fall_ns ?: 35; > t->scl_rise_ns = t->scl_rise_ns ?: 200; > t->scl_int_delay_ns = t->scl_int_delay_ns ?: 50; > diff --git a/drivers/i2c/busses/i2c-riic.c b/drivers/i2c/busses/i2c-riic.c > index 800414886f6b..4eccc0f69861 100644 > --- a/drivers/i2c/busses/i2c-riic.c > +++ b/drivers/i2c/busses/i2c-riic.c > @@ -287,10 +287,10 @@ static int riic_init_hw(struct riic_dev *riic, struct i2c_timings *t) > > pm_runtime_get_sync(riic->adapter.dev.parent); > > - if (t->bus_freq_hz > 400000) { > + if (t->bus_freq_hz > I2C_MAX_FAST_MODE_FREQ) { > dev_err(&riic->adapter.dev, > - "unsupported bus speed (%dHz). 400000 max\n", > - t->bus_freq_hz); > + "unsupported bus speed (%dHz). %d max\n", > + t->bus_freq_hz, I2C_MAX_FAST_MODE_FREQ); > ret = -EINVAL; > goto out; > } > diff --git a/drivers/i2c/busses/i2c-rk3x.c b/drivers/i2c/busses/i2c-rk3x.c > index 1a33007b03e9..978d069aba7e 100644 > --- a/drivers/i2c/busses/i2c-rk3x.c > +++ b/drivers/i2c/busses/i2c-rk3x.c > @@ -539,9 +539,9 @@ static irqreturn_t rk3x_i2c_irq(int irqno, void *dev_id) > */ > static const struct i2c_spec_values *rk3x_i2c_get_spec(unsigned int speed) > { > - if (speed <= 100000) > + if (speed <= I2C_MAX_STANDARD_MODE_FREQ) > return &standard_mode_spec; > - else if (speed <= 400000) > + else if (speed <= I2C_MAX_FAST_MODE_FREQ) > return &fast_mode_spec; > else > return &fast_mode_plus_spec; > @@ -578,8 +578,8 @@ static int rk3x_i2c_v0_calc_timings(unsigned long clk_rate, > int ret = 0; > > /* Only support standard-mode and fast-mode */ > - if (WARN_ON(t->bus_freq_hz > 400000)) > - t->bus_freq_hz = 400000; > + if (WARN_ON(t->bus_freq_hz > I2C_MAX_FAST_MODE_FREQ)) > + t->bus_freq_hz = I2C_MAX_FAST_MODE_FREQ; > > /* prevent scl_rate_khz from becoming 0 */ > if (WARN_ON(t->bus_freq_hz < 1000)) > @@ -758,8 +758,8 @@ static int rk3x_i2c_v1_calc_timings(unsigned long clk_rate, > int ret = 0; > > /* Support standard-mode, fast-mode and fast-mode plus */ > - if (WARN_ON(t->bus_freq_hz > 1000000)) > - t->bus_freq_hz = 1000000; > + if (WARN_ON(t->bus_freq_hz > I2C_MAX_FAST_PLUS_MODE_FREQ)) > + t->bus_freq_hz = I2C_MAX_FAST_PLUS_MODE_FREQ; > > /* prevent scl_rate_khz from becoming 0 */ > if (WARN_ON(t->bus_freq_hz < 1000)) > diff --git a/drivers/i2c/busses/i2c-s3c2410.c b/drivers/i2c/busses/i2c-s3c2410.c > index c98ef4c4a0c9..5a5638e1daa1 100644 > --- a/drivers/i2c/busses/i2c-s3c2410.c > +++ b/drivers/i2c/busses/i2c-s3c2410.c > @@ -835,11 +835,11 @@ static int s3c24xx_i2c_clockrate(struct s3c24xx_i2c *i2c, unsigned int *got) > int freq; > > i2c->clkrate = clkin; > - clkin /= 1000; /* clkin now in KHz */ > + clkin /= 1000; /* clkin now in KHz */ > > dev_dbg(i2c->dev, "pdata desired frequency %lu\n", pdata->frequency); > > - target_frequency = pdata->frequency ? pdata->frequency : 100000; > + target_frequency = pdata->frequency ?: I2C_MAX_STANDARD_MODE_FREQ; > > target_frequency /= 1000; /* Target frequency now in KHz */ > > diff --git a/drivers/i2c/busses/i2c-sh_mobile.c b/drivers/i2c/busses/i2c-sh_mobile.c > index 82b3b795e0bd..d83ca4028fa0 100644 > --- a/drivers/i2c/busses/i2c-sh_mobile.c > +++ b/drivers/i2c/busses/i2c-sh_mobile.c > @@ -145,9 +145,6 @@ struct sh_mobile_dt_config { > > #define IIC_FLAG_HAS_ICIC67 (1 << 0) > > -#define STANDARD_MODE 100000 > -#define FAST_MODE 400000 > - > /* Register offsets */ > #define ICDR 0x00 > #define ICCR 0x04 > @@ -270,11 +267,11 @@ static int sh_mobile_i2c_init(struct sh_mobile_i2c_data *pd) > > i2c_clk_khz = clk_get_rate(pd->clk) / 1000 / pd->clks_per_count; > > - if (pd->bus_speed == STANDARD_MODE) { > + if (pd->bus_speed == I2C_MAX_STANDARD_MODE_FREQ) { > tLOW = 47; /* tLOW = 4.7 us */ > tHIGH = 40; /* tHD;STA = tHIGH = 4.0 us */ > tf = 3; /* tf = 0.3 us */ > - } else if (pd->bus_speed == FAST_MODE) { > + } else if (pd->bus_speed == I2C_MAX_FAST_MODE_FREQ) { > tLOW = 13; /* tLOW = 1.3 us */ > tHIGH = 6; /* tHD;STA = tHIGH = 0.6 us */ > tf = 3; /* tf = 0.3 us */ > @@ -851,7 +848,7 @@ static int sh_mobile_i2c_probe(struct platform_device *dev) > return PTR_ERR(pd->reg); > > ret = of_property_read_u32(dev->dev.of_node, "clock-frequency", &bus_speed); > - pd->bus_speed = (ret || !bus_speed) ? STANDARD_MODE : bus_speed; > + pd->bus_speed = (ret || !bus_speed) ? I2C_MAX_STANDARD_MODE_FREQ : bus_speed; > pd->clks_per_count = 1; > > /* Newer variants come with two new bits in ICIC */ > diff --git a/drivers/i2c/busses/i2c-sirf.c b/drivers/i2c/busses/i2c-sirf.c > index fb7a046b3226..a459e00c6851 100644 > --- a/drivers/i2c/busses/i2c-sirf.c > +++ b/drivers/i2c/busses/i2c-sirf.c > @@ -62,7 +62,6 @@ > #define SIRFSOC_I2C_STOP BIT(6) > #define SIRFSOC_I2C_START BIT(7) > > -#define SIRFSOC_I2C_DEFAULT_SPEED 100000 > #define SIRFSOC_I2C_ERR_NOACK 1 > #define SIRFSOC_I2C_ERR_TIMEOUT 2 > > @@ -353,7 +352,7 @@ static int i2c_sirfsoc_probe(struct platform_device *pdev) > err = of_property_read_u32(pdev->dev.of_node, > "clock-frequency", &bitrate); > if (err < 0) > - bitrate = SIRFSOC_I2C_DEFAULT_SPEED; > + bitrate = I2C_MAX_STANDARD_MODE_FREQ; > > /* > * Due to some hardware design issues, we need to tune the formula. > diff --git a/drivers/i2c/busses/i2c-sprd.c b/drivers/i2c/busses/i2c-sprd.c > index b432e7580458..123a42bfe3b1 100644 > --- a/drivers/i2c/busses/i2c-sprd.c > +++ b/drivers/i2c/busses/i2c-sprd.c > @@ -337,9 +337,9 @@ static void sprd_i2c_set_clk(struct sprd_i2c *i2c_dev, u32 freq) > writel(div1, i2c_dev->base + ADDR_DVD1); > > /* Start hold timing = hold time(us) * source clock */ > - if (freq == 400000) > + if (freq == I2C_MAX_FAST_MODE_FREQ) > writel((6 * apb_clk) / 10000000, i2c_dev->base + ADDR_STA0_DVD); > - else if (freq == 100000) > + else if (freq == I2C_MAX_STANDARD_MODE_FREQ) > writel((4 * apb_clk) / 1000000, i2c_dev->base + ADDR_STA0_DVD); > } > > @@ -502,7 +502,7 @@ static int sprd_i2c_probe(struct platform_device *pdev) > snprintf(i2c_dev->adap.name, sizeof(i2c_dev->adap.name), > "%s", "sprd-i2c"); > > - i2c_dev->bus_freq = 100000; > + i2c_dev->bus_freq = I2C_MAX_STANDARD_MODE_FREQ; > i2c_dev->adap.owner = THIS_MODULE; > i2c_dev->dev = dev; > i2c_dev->adap.retries = 3; > @@ -516,7 +516,8 @@ static int sprd_i2c_probe(struct platform_device *pdev) > i2c_dev->bus_freq = prop; > > /* We only support 100k and 400k now, otherwise will return error. */ > - if (i2c_dev->bus_freq != 100000 && i2c_dev->bus_freq != 400000) > + if (i2c_dev->bus_freq != I2C_MAX_STANDARD_MODE_FREQ && > + i2c_dev->bus_freq != I2C_MAX_FAST_MODE_FREQ) > return -EINVAL; > > ret = sprd_i2c_clk_init(i2c_dev); > diff --git a/drivers/i2c/busses/i2c-st.c b/drivers/i2c/busses/i2c-st.c > index 54e1fc8a495e..49794e8ec839 100644 > --- a/drivers/i2c/busses/i2c-st.c > +++ b/drivers/i2c/busses/i2c-st.c > @@ -213,7 +213,7 @@ static inline void st_i2c_clr_bits(void __iomem *reg, u32 mask) > */ > static struct st_i2c_timings i2c_timings[] = { > [I2C_MODE_STANDARD] = { > - .rate = 100000, > + .rate = I2C_MAX_STANDARD_MODE_FREQ, > .rep_start_hold = 4400, > .rep_start_setup = 5170, > .start_hold = 4400, > @@ -222,7 +222,7 @@ static struct st_i2c_timings i2c_timings[] = { > .bus_free_time = 5170, > }, > [I2C_MODE_FAST] = { > - .rate = 400000, > + .rate = I2C_MAX_FAST_MODE_FREQ, > .rep_start_hold = 660, > .rep_start_setup = 660, > .start_hold = 660, > @@ -835,7 +835,7 @@ static int st_i2c_probe(struct platform_device *pdev) > > i2c_dev->mode = I2C_MODE_STANDARD; > ret = of_property_read_u32(np, "clock-frequency", &clk_rate); > - if ((!ret) && (clk_rate == 400000)) > + if (!ret && (clk_rate == I2C_MAX_FAST_MODE_FREQ)) > i2c_dev->mode = I2C_MODE_FAST; > > i2c_dev->dev = &pdev->dev; > diff --git a/drivers/i2c/busses/i2c-stm32f4.c b/drivers/i2c/busses/i2c-stm32f4.c > index ba600d77a3f8..8bc9250aa99c 100644 > --- a/drivers/i2c/busses/i2c-stm32f4.c > +++ b/drivers/i2c/busses/i2c-stm32f4.c > @@ -243,7 +243,7 @@ static void stm32f4_i2c_set_speed_mode(struct stm32f4_i2c_dev *i2c_dev) > * parent rate is not higher than 46 MHz . As a result val > * is at most 8 bits wide and so fits into the CCR bits [11:0]. > */ > - val = i2c_dev->parent_rate / (100000 << 1); > + val = i2c_dev->parent_rate / (I2C_MAX_STANDARD_MODE_FREQ << 1); > } else { > /* > * In fast mode, we compute CCR with duty = 0 as with low > @@ -263,7 +263,7 @@ static void stm32f4_i2c_set_speed_mode(struct stm32f4_i2c_dev *i2c_dev) > * parent rate is not higher than 46 MHz . As a result val > * is at most 6 bits wide and so fits into the CCR bits [11:0]. > */ > - val = DIV_ROUND_UP(i2c_dev->parent_rate, 400000 * 3); > + val = DIV_ROUND_UP(i2c_dev->parent_rate, I2C_MAX_FAST_MODE_FREQ * 3); > > /* Select Fast mode */ > ccr |= STM32F4_I2C_CCR_FS; > @@ -807,7 +807,7 @@ static int stm32f4_i2c_probe(struct platform_device *pdev) > > i2c_dev->speed = STM32_I2C_SPEED_STANDARD; > ret = of_property_read_u32(np, "clock-frequency", &clk_rate); > - if (!ret && clk_rate >= 400000) > + if (!ret && clk_rate >= I2C_MAX_FAST_MODE_FREQ) > i2c_dev->speed = STM32_I2C_SPEED_FAST; > > i2c_dev->dev = &pdev->dev; > diff --git a/drivers/i2c/busses/i2c-stm32f7.c b/drivers/i2c/busses/i2c-stm32f7.c > index 378956ac6d1d..b9ed022c35d1 100644 > --- a/drivers/i2c/busses/i2c-stm32f7.c > +++ b/drivers/i2c/busses/i2c-stm32f7.c > @@ -338,9 +338,9 @@ struct stm32f7_i2c_dev { > */ > static struct stm32f7_i2c_spec i2c_specs[] = { > [STM32_I2C_SPEED_STANDARD] = { > - .rate = 100000, > - .rate_min = 80000, > - .rate_max = 100000, > + .rate = I2C_MAX_STANDARD_MODE_FREQ, > + .rate_min = I2C_MAX_STANDARD_MODE_FREQ * 8 / 10, /* 80% */ > + .rate_max = I2C_MAX_STANDARD_MODE_FREQ, > .fall_max = 300, > .rise_max = 1000, > .hddat_min = 0, > @@ -350,9 +350,9 @@ static struct stm32f7_i2c_spec i2c_specs[] = { > .h_min = 4000, > }, > [STM32_I2C_SPEED_FAST] = { > - .rate = 400000, > - .rate_min = 320000, > - .rate_max = 400000, > + .rate = I2C_MAX_FAST_MODE_FREQ, > + .rate_min = I2C_MAX_FAST_MODE_FREQ * 8 / 10, /* 80% */ > + .rate_max = I2C_MAX_FAST_MODE_FREQ, > .fall_max = 300, > .rise_max = 300, > .hddat_min = 0, > @@ -362,9 +362,9 @@ static struct stm32f7_i2c_spec i2c_specs[] = { > .h_min = 600, > }, > [STM32_I2C_SPEED_FAST_PLUS] = { > - .rate = 1000000, > - .rate_min = 800000, > - .rate_max = 1000000, > + .rate = I2C_MAX_FAST_PLUS_MODE_FREQ, > + .rate_min = I2C_MAX_FAST_PLUS_MODE_FREQ * 8 / 10, /* 80% */ > + .rate_max = I2C_MAX_FAST_PLUS_MODE_FREQ, > .fall_max = 100, > .rise_max = 120, > .hddat_min = 0, > @@ -1927,14 +1927,14 @@ static int stm32f7_i2c_probe(struct platform_device *pdev) > i2c_dev->speed = STM32_I2C_SPEED_STANDARD; > ret = device_property_read_u32(&pdev->dev, "clock-frequency", > &clk_rate); > - if (!ret && clk_rate >= 1000000) { > + if (!ret && clk_rate >= I2C_MAX_FAST_PLUS_MODE_FREQ) { > i2c_dev->speed = STM32_I2C_SPEED_FAST_PLUS; > ret = stm32f7_i2c_setup_fm_plus_bits(pdev, i2c_dev); > if (ret) > goto clk_free; > - } else if (!ret && clk_rate >= 400000) { > + } else if (!ret && clk_rate >= I2C_MAX_FAST_MODE_FREQ) { > i2c_dev->speed = STM32_I2C_SPEED_FAST; > - } else if (!ret && clk_rate >= 100000) { > + } else if (!ret && clk_rate >= I2C_MAX_STANDARD_MODE_FREQ) { > i2c_dev->speed = STM32_I2C_SPEED_STANDARD; > } > > diff --git a/drivers/i2c/busses/i2c-stu300.c b/drivers/i2c/busses/i2c-stu300.c > index 42e0a53e7fa4..ba6b60caa45e 100644 > --- a/drivers/i2c/busses/i2c-stu300.c > +++ b/drivers/i2c/busses/i2c-stu300.c > @@ -132,7 +132,7 @@ enum stu300_error { > #define NUM_ADDR_RESEND_ATTEMPTS 12 > > /* I2C clock speed, in Hz 0-400kHz*/ > -static unsigned int scl_frequency = 100000; > +static unsigned int scl_frequency = I2C_MAX_STANDARD_MODE_FREQ; > module_param(scl_frequency, uint, 0644); > > /** > @@ -497,7 +497,7 @@ static int stu300_set_clk(struct stu300_dev *dev, unsigned long clkrate) > dev_dbg(&dev->pdev->dev, "Clock rate %lu Hz, I2C bus speed %d Hz " > "virtbase %p\n", clkrate, dev->speed, dev->virtbase); > > - if (dev->speed > 100000) > + if (dev->speed > I2C_MAX_STANDARD_MODE_FREQ) > /* Fast Mode I2C */ > val = ((clkrate/dev->speed) - 9)/3 + 1; > else > @@ -518,7 +518,7 @@ static int stu300_set_clk(struct stu300_dev *dev, unsigned long clkrate) > return -EINVAL; > } > > - if (dev->speed > 100000) { > + if (dev->speed > I2C_MAX_STANDARD_MODE_FREQ) { > /* CC6..CC0 */ > stu300_wr8((val & I2C_CCR_CC_MASK) | I2C_CCR_FMSM, > dev->virtbase + I2C_CCR); > diff --git a/drivers/i2c/busses/i2c-synquacer.c b/drivers/i2c/busses/i2c-synquacer.c > index 86026798b4f7..9099d0a67ace 100644 > --- a/drivers/i2c/busses/i2c-synquacer.c > +++ b/drivers/i2c/busses/i2c-synquacer.c > @@ -67,10 +67,10 @@ > > /* STANDARD MODE frequency */ > #define SYNQUACER_I2C_CLK_MASTER_STD(rate) \ > - DIV_ROUND_UP(DIV_ROUND_UP((rate), 100000) - 2, 2) > + DIV_ROUND_UP(DIV_ROUND_UP((rate), I2C_MAX_STANDARD_MODE_FREQ) - 2, 2) > /* FAST MODE frequency */ > #define SYNQUACER_I2C_CLK_MASTER_FAST(rate) \ > - DIV_ROUND_UP((DIV_ROUND_UP((rate), 400000) - 2) * 2, 3) > + DIV_ROUND_UP((DIV_ROUND_UP((rate), I2C_MAX_FAST_MODE_FREQ) - 2) * 2, 3) > > /* (clkrate <= 18000000) */ > /* calculate the value of CS bits in CCR register on standard mode */ > @@ -602,7 +602,7 @@ static int synquacer_i2c_probe(struct platform_device *pdev) > i2c->adapter.nr = pdev->id; > init_completion(&i2c->completion); > > - if (bus_speed < 400000) > + if (bus_speed < I2C_MAX_FAST_MODE_FREQ) > i2c->speed_khz = SYNQUACER_I2C_SPEED_SM; > else > i2c->speed_khz = SYNQUACER_I2C_SPEED_FM; > diff --git a/drivers/i2c/busses/i2c-tegra.c b/drivers/i2c/busses/i2c-tegra.c > index cbc2ad49043e..9f06c520b4ec 100644 > --- a/drivers/i2c/busses/i2c-tegra.c > +++ b/drivers/i2c/busses/i2c-tegra.c > @@ -123,10 +123,6 @@ > #define I2C_THIGH_SHIFT 8 > #define I2C_INTERFACE_TIMING_1 0x98 > > -#define I2C_STANDARD_MODE 100000 > -#define I2C_FAST_MODE 400000 > -#define I2C_FAST_PLUS_MODE 1000000 > - > /* Packet header size in bytes */ > #define I2C_PACKET_HEADER_SIZE 12 > > @@ -737,8 +733,8 @@ static int tegra_i2c_init(struct tegra_i2c_dev *i2c_dev, bool clk_reinit) > I2C_CLK_DIVISOR_STD_FAST_MODE_SHIFT; > i2c_writel(i2c_dev, clk_divisor, I2C_CLK_DIVISOR); > > - if (i2c_dev->bus_clk_rate > I2C_STANDARD_MODE && > - i2c_dev->bus_clk_rate <= I2C_FAST_PLUS_MODE) { > + if (i2c_dev->bus_clk_rate > I2C_MAX_STANDARD_MODE_FREQ && > + i2c_dev->bus_clk_rate <= I2C_MAX_FAST_PLUS_MODE_FREQ) { > tlow = i2c_dev->hw->tlow_fast_fastplus_mode; > thigh = i2c_dev->hw->thigh_fast_fastplus_mode; > tsu_thd = i2c_dev->hw->setup_hold_time_fast_fast_plus_mode; > @@ -1341,7 +1337,7 @@ static void tegra_i2c_parse_dt(struct tegra_i2c_dev *i2c_dev) > ret = of_property_read_u32(np, "clock-frequency", > &i2c_dev->bus_clk_rate); > if (ret) > - i2c_dev->bus_clk_rate = 100000; /* default clock rate */ > + i2c_dev->bus_clk_rate = I2C_MAX_STANDARD_MODE_FREQ; /* default clock rate */ > > multi_mode = of_property_read_bool(np, "multi-master"); > i2c_dev->is_multimaster_mode = multi_mode; > @@ -1640,12 +1636,12 @@ static int tegra_i2c_probe(struct platform_device *pdev) > } > } > > - if (i2c_dev->bus_clk_rate > I2C_FAST_MODE && > - i2c_dev->bus_clk_rate <= I2C_FAST_PLUS_MODE) > + if (i2c_dev->bus_clk_rate > I2C_MAX_FAST_MODE_FREQ && > + i2c_dev->bus_clk_rate <= I2C_MAX_FAST_PLUS_MODE_FREQ) > i2c_dev->clk_divisor_non_hs_mode = > i2c_dev->hw->clk_divisor_fast_plus_mode; > - else if (i2c_dev->bus_clk_rate > I2C_STANDARD_MODE && > - i2c_dev->bus_clk_rate <= I2C_FAST_MODE) > + else if (i2c_dev->bus_clk_rate > I2C_MAX_STANDARD_MODE_FREQ && > + i2c_dev->bus_clk_rate <= I2C_MAX_FAST_MODE_FREQ) > i2c_dev->clk_divisor_non_hs_mode = > i2c_dev->hw->clk_divisor_fast_mode; > else > diff --git a/drivers/i2c/busses/i2c-uniphier-f.c b/drivers/i2c/busses/i2c-uniphier-f.c > index 4241aac79e7e..2b258d54d68c 100644 > --- a/drivers/i2c/busses/i2c-uniphier-f.c > +++ b/drivers/i2c/busses/i2c-uniphier-f.c > @@ -73,8 +73,6 @@ > #define UNIPHIER_FI2C_BYTE_WISE BIT(3) > #define UNIPHIER_FI2C_DEFER_STOP_COMP BIT(4) > > -#define UNIPHIER_FI2C_DEFAULT_SPEED 100000 > -#define UNIPHIER_FI2C_MAX_SPEED 400000 > #define UNIPHIER_FI2C_FIFO_SIZE 8 > > struct uniphier_fi2c_priv { > @@ -537,9 +535,9 @@ static int uniphier_fi2c_probe(struct platform_device *pdev) > } > > if (of_property_read_u32(dev->of_node, "clock-frequency", &bus_speed)) > - bus_speed = UNIPHIER_FI2C_DEFAULT_SPEED; > + bus_speed = I2C_MAX_STANDARD_MODE_FREQ; > > - if (!bus_speed || bus_speed > UNIPHIER_FI2C_MAX_SPEED) { > + if (!bus_speed || bus_speed > I2C_MAX_FAST_MODE_FREQ) { > dev_err(dev, "invalid clock-frequency %d\n", bus_speed); > return -EINVAL; > } > diff --git a/drivers/i2c/busses/i2c-uniphier.c b/drivers/i2c/busses/i2c-uniphier.c > index 0270090c0360..668b1fa2b0ef 100644 > --- a/drivers/i2c/busses/i2c-uniphier.c > +++ b/drivers/i2c/busses/i2c-uniphier.c > @@ -35,9 +35,6 @@ > #define UNIPHIER_I2C_NOISE 0x1c /* noise filter control */ > #define UNIPHIER_I2C_SETUP 0x20 /* setup time control */ > > -#define UNIPHIER_I2C_DEFAULT_SPEED 100000 > -#define UNIPHIER_I2C_MAX_SPEED 400000 > - > struct uniphier_i2c_priv { > struct completion comp; > struct i2c_adapter adap; > @@ -333,9 +330,9 @@ static int uniphier_i2c_probe(struct platform_device *pdev) > } > > if (of_property_read_u32(dev->of_node, "clock-frequency", &bus_speed)) > - bus_speed = UNIPHIER_I2C_DEFAULT_SPEED; > + bus_speed = I2C_MAX_STANDARD_MODE_FREQ; > > - if (!bus_speed || bus_speed > UNIPHIER_I2C_MAX_SPEED) { > + if (!bus_speed || bus_speed > I2C_MAX_FAST_MODE_FREQ) { > dev_err(dev, "invalid clock-frequency %d\n", bus_speed); > return -EINVAL; > } > diff --git a/drivers/i2c/busses/i2c-xlp9xx.c b/drivers/i2c/busses/i2c-xlp9xx.c > index 8a873975cf12..f678f8d9abd6 100644 > --- a/drivers/i2c/busses/i2c-xlp9xx.c > +++ b/drivers/i2c/busses/i2c-xlp9xx.c > @@ -71,8 +71,6 @@ > #define XLP9XX_I2C_SLAVEADDR_ADDR_SHIFT 1 > > #define XLP9XX_I2C_IP_CLK_FREQ 133000000UL > -#define XLP9XX_I2C_DEFAULT_FREQ 100000 > -#define XLP9XX_I2C_HIGH_FREQ 400000 > #define XLP9XX_I2C_FIFO_SIZE 0x80U > #define XLP9XX_I2C_TIMEOUT_MS 1000 > #define XLP9XX_I2C_BUSY_TIMEOUT 50 > @@ -476,12 +474,12 @@ static int xlp9xx_i2c_get_frequency(struct platform_device *pdev, > > err = device_property_read_u32(&pdev->dev, "clock-frequency", &freq); > if (err) { > - freq = XLP9XX_I2C_DEFAULT_FREQ; > + freq = I2C_MAX_STANDARD_MODE_FREQ; > dev_dbg(&pdev->dev, "using default frequency %u\n", freq); > - } else if (freq == 0 || freq > XLP9XX_I2C_HIGH_FREQ) { > + } else if (freq == 0 || freq > I2C_MAX_FAST_MODE_FREQ) { > dev_warn(&pdev->dev, "invalid frequency %u, using default\n", > freq); > - freq = XLP9XX_I2C_DEFAULT_FREQ; > + freq = I2C_MAX_STANDARD_MODE_FREQ; > } > priv->clk_hz = freq; > >