Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

Merge tag 'i2c-for-6.4-rc8' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux

Pull i2c fixes from Wolfram Sang:
"Nothing fancy. Two driver and one DT binding fix"

* tag 'i2c-for-6.4-rc8' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux:
i2c: imx-lpi2c: fix type char overflow issue when calculating the clock cycle
i2c: qup: Add missing unwind goto in qup_i2c_probe()
dt-bindings: i2c: opencores: Add missing type for "regstep"

+17 -9
+1
Documentation/devicetree/bindings/i2c/opencores,i2c-ocores.yaml
··· 60 60 default: 0 61 61 62 62 regstep: 63 + $ref: /schemas/types.yaml#/definitions/uint32 63 64 description: | 64 65 deprecated, use reg-shift above 65 66 deprecated: true
+2 -2
drivers/i2c/busses/i2c-imx-lpi2c.c
··· 201 201 /* CLKLO = I2C_CLK_RATIO * CLKHI, SETHOLD = CLKHI, DATAVD = CLKHI/2 */ 202 202 static int lpi2c_imx_config(struct lpi2c_imx_struct *lpi2c_imx) 203 203 { 204 - u8 prescale, filt, sethold, clkhi, clklo, datavd; 205 - unsigned int clk_rate, clk_cycle; 204 + u8 prescale, filt, sethold, datavd; 205 + unsigned int clk_rate, clk_cycle, clkhi, clklo; 206 206 enum lpi2c_imx_pincfg pincfg; 207 207 unsigned int temp; 208 208
+14 -7
drivers/i2c/busses/i2c-qup.c
··· 1752 1752 if (!clk_freq || clk_freq > I2C_MAX_FAST_MODE_PLUS_FREQ) { 1753 1753 dev_err(qup->dev, "clock frequency not supported %d\n", 1754 1754 clk_freq); 1755 - return -EINVAL; 1755 + ret = -EINVAL; 1756 + goto fail_dma; 1756 1757 } 1757 1758 1758 1759 qup->base = devm_platform_ioremap_resource(pdev, 0); 1759 - if (IS_ERR(qup->base)) 1760 - return PTR_ERR(qup->base); 1760 + if (IS_ERR(qup->base)) { 1761 + ret = PTR_ERR(qup->base); 1762 + goto fail_dma; 1763 + } 1761 1764 1762 1765 qup->irq = platform_get_irq(pdev, 0); 1763 - if (qup->irq < 0) 1764 - return qup->irq; 1766 + if (qup->irq < 0) { 1767 + ret = qup->irq; 1768 + goto fail_dma; 1769 + } 1765 1770 1766 1771 if (has_acpi_companion(qup->dev)) { 1767 1772 ret = device_property_read_u32(qup->dev, ··· 1780 1775 qup->clk = devm_clk_get(qup->dev, "core"); 1781 1776 if (IS_ERR(qup->clk)) { 1782 1777 dev_err(qup->dev, "Could not get core clock\n"); 1783 - return PTR_ERR(qup->clk); 1778 + ret = PTR_ERR(qup->clk); 1779 + goto fail_dma; 1784 1780 } 1785 1781 1786 1782 qup->pclk = devm_clk_get(qup->dev, "iface"); 1787 1783 if (IS_ERR(qup->pclk)) { 1788 1784 dev_err(qup->dev, "Could not get iface clock\n"); 1789 - return PTR_ERR(qup->pclk); 1785 + ret = PTR_ERR(qup->pclk); 1786 + goto fail_dma; 1790 1787 } 1791 1788 qup_i2c_enable_clocks(qup); 1792 1789 src_clk_freq = clk_get_rate(qup->clk);