<feed xmlns='http://www.w3.org/2005/Atom'>
<title>BMC/Intel-BMC/linux.git/drivers/i2c, branch dev-5.8-intel</title>
<subtitle>Intel OpenBMC Linux kernel source tree (mirror)</subtitle>
<id>https://git.radix-linux.su/BMC/Intel-BMC/linux.git/atom?h=dev-5.8-intel</id>
<link rel='self' href='https://git.radix-linux.su/BMC/Intel-BMC/linux.git/atom?h=dev-5.8-intel'/>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/BMC/Intel-BMC/linux.git/'/>
<updated>2020-12-18T17:03:46+00:00</updated>
<entry>
<title>i2c: aspeed: clear slave addresses in probe</title>
<updated>2020-12-18T17:03:46+00:00</updated>
<author>
<name>Jae Hyun Yoo</name>
<email>jae.hyun.yoo@linux.intel.com</email>
</author>
<published>2020-12-16T20:49:16+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/BMC/Intel-BMC/linux.git/commit/?id=27c6f30e6e4317b43661fabcf4839613f3d9ef62'/>
<id>urn:sha1:27c6f30e6e4317b43661fabcf4839613f3d9ef62</id>
<content type='text'>
Initial value of I2CD18 is undefined according to the datasheet
so this commit adds the I2CD18 register clearing code into bus
initialization function to prevent any unexpected slave match
events.

Signed-off-by: Jae Hyun Yoo &lt;jae.hyun.yoo@linux.intel.com&gt;
Change-Id: I6c6cadeaf6fefcf74eba0d96c49986a810ccbb51
</content>
</entry>
<entry>
<title>fixup! i2c: Add mux hold/unhold msg types</title>
<updated>2020-12-16T22:05:52+00:00</updated>
<author>
<name>Jae Hyun Yoo</name>
<email>jae.hyun.yoo@intel.com</email>
</author>
<published>2020-12-15T02:53:13+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/BMC/Intel-BMC/linux.git/commit/?id=ec06446ae64ec6dc05609ddab456be9c22bf30b0'/>
<id>urn:sha1:ec06446ae64ec6dc05609ddab456be9c22bf30b0</id>
<content type='text'>
This commit fixes a deadlock case by replacing a del_timer_sync call
with a del_timer in timer handler function. This issue was not
observed in previous platform because the previous UP kernel calls
del_timer instead of del_timer_sync but in SMP kernel, it calls
del_timer_sync actually.

Signed-off-by: Jae Hyun Yoo &lt;jae.hyun.yoo@intel.com&gt;
Change-Id: I0633acafb5023c50494e41c82c65c0acaa3bc068
</content>
</entry>
<entry>
<title>Merge v5.8.17, commit '6d07b544ce203a684d9ca52635dcf2f4fc89b7d4' into dev-5.8-intel</title>
<updated>2020-11-05T01:31:53+00:00</updated>
<author>
<name>Jason M. Bills</name>
<email>jason.m.bills@linux.intel.com</email>
</author>
<published>2020-11-05T00:38:30+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/BMC/Intel-BMC/linux.git/commit/?id=7de5aa18271ada4f01793f26f5b5f4253123d581'/>
<id>urn:sha1:7de5aa18271ada4f01793f26f5b5f4253123d581</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Merge tag 'v5.8.17' into dev-5.8</title>
<updated>2020-10-30T02:37:00+00:00</updated>
<author>
<name>Joel Stanley</name>
<email>joel@jms.id.au</email>
</author>
<published>2020-10-30T02:36:56+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/BMC/Intel-BMC/linux.git/commit/?id=6d07b544ce203a684d9ca52635dcf2f4fc89b7d4'/>
<id>urn:sha1:6d07b544ce203a684d9ca52635dcf2f4fc89b7d4</id>
<content type='text'>
This is the 5.8.17 stable release

Signed-off-by: Joel Stanley &lt;joel@jms.id.au&gt;
</content>
</entry>
<entry>
<title>i2c: core: Restore acpi_walk_dep_device_list() getting called after registering the ACPI i2c devs</title>
<updated>2020-10-29T09:08:17+00:00</updated>
<author>
<name>Hans de Goede</name>
<email>hdegoede@redhat.com</email>
</author>
<published>2020-10-14T14:41:58+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/BMC/Intel-BMC/linux.git/commit/?id=44a58dd22c28f57df52329db0c37006e504155c4'/>
<id>urn:sha1:44a58dd22c28f57df52329db0c37006e504155c4</id>
<content type='text'>
[ Upstream commit 8058d69905058ec8f467a120b5ec5bb831ea67f3 ]

Commit 21653a4181ff ("i2c: core: Call i2c_acpi_install_space_handler()
before i2c_acpi_register_devices()")'s intention was to only move the
acpi_install_address_space_handler() call to the point before where
the ACPI declared i2c-children of the adapter where instantiated by
i2c_acpi_register_devices().

But i2c_acpi_install_space_handler() had a call to
acpi_walk_dep_device_list() hidden (that is I missed it) at the end
of it, so as an unwanted side-effect now acpi_walk_dep_device_list()
was also being called before i2c_acpi_register_devices().

Move the acpi_walk_dep_device_list() call to the end of
i2c_acpi_register_devices(), so that it is once again called *after*
the i2c_client-s hanging of the adapter have been created.

This fixes the Microsoft Surface Go 2 hanging at boot.

Fixes: 21653a4181ff ("i2c: core: Call i2c_acpi_install_space_handler() before i2c_acpi_register_devices()")
Link: https://bugzilla.kernel.org/show_bug.cgi?id=209627
Reported-by: Rainer Finke &lt;rainer@finke.cc&gt;
Reported-by: Kieran Bingham &lt;kieran.bingham@ideasonboard.com&gt;
Suggested-by: Maximilian Luz &lt;luzmaximilian@gmail.com&gt;
Tested-by: Kieran Bingham &lt;kieran.bingham@ideasonboard.com&gt;
Signed-off-by: Hans de Goede &lt;hdegoede@redhat.com&gt;
Signed-off-by: Wolfram Sang &lt;wsa@kernel.org&gt;
Signed-off-by: Sasha Levin &lt;sashal@kernel.org&gt;
</content>
</entry>
<entry>
<title>i2c: rcar: Auto select RESET_CONTROLLER</title>
<updated>2020-10-29T09:08:04+00:00</updated>
<author>
<name>Dirk Behme</name>
<email>dirk.behme@de.bosch.com</email>
</author>
<published>2020-08-27T09:23:30+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/BMC/Intel-BMC/linux.git/commit/?id=66a5d399702cc96128ce8755b9ee5543661c360a'/>
<id>urn:sha1:66a5d399702cc96128ce8755b9ee5543661c360a</id>
<content type='text'>
[ Upstream commit 5b9bacf28a973a6b16510493416baeefa2c06289 ]

The i2c-rcar driver utilizes the Generic Reset Controller kernel
feature, so select the RESET_CONTROLLER option when the I2C_RCAR
option is selected with a Gen3 SoC.

Fixes: 2b16fd63059ab9 ("i2c: rcar: handle RXDMA HW behaviour on Gen3")
Signed-off-by: Dirk Behme &lt;dirk.behme@de.bosch.com&gt;
Signed-off-by: Andy Lowe &lt;andy_lowe@mentor.com&gt;
[erosca: Add "if ARCH_RCAR_GEN3" per Wolfram's request]
Signed-off-by: Eugeniu Rosca &lt;erosca@de.adit-jv.com&gt;
Signed-off-by: Wolfram Sang &lt;wsa@kernel.org&gt;
Signed-off-by: Sasha Levin &lt;sashal@kernel.org&gt;
</content>
</entry>
<entry>
<title>i2c: owl: Clear NACK and BUS error bits</title>
<updated>2020-10-14T09:55:50+00:00</updated>
<author>
<name>Cristian Ciocaltea</name>
<email>cristian.ciocaltea@gmail.com</email>
</author>
<published>2020-10-08T21:44:39+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/BMC/Intel-BMC/linux.git/commit/?id=d63492ab001bfaf7f2bdf2b3be23c40835affc5a'/>
<id>urn:sha1:d63492ab001bfaf7f2bdf2b3be23c40835affc5a</id>
<content type='text'>
commit f5b3f433641c543ebe5171285a42aa6adcdb2d22 upstream.

When the NACK and BUS error bits are set by the hardware, the driver is
responsible for clearing them by writing "1" into the corresponding
status registers.

Hence perform the necessary operations in owl_i2c_interrupt().

Fixes: d211e62af466 ("i2c: Add Actions Semiconductor Owl family S900 I2C driver")
Reported-by: Manivannan Sadhasivam &lt;manivannan.sadhasivam@linaro.org&gt;
Signed-off-by: Cristian Ciocaltea &lt;cristian.ciocaltea@gmail.com&gt;
Signed-off-by: Wolfram Sang &lt;wsa@kernel.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>i2c: meson: fixup rate calculation with filter delay</title>
<updated>2020-10-14T09:55:50+00:00</updated>
<author>
<name>Nicolas Belin</name>
<email>nbelin@baylibre.com</email>
</author>
<published>2020-10-07T08:07:51+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/BMC/Intel-BMC/linux.git/commit/?id=08a1313bfca0751bc2a03448d9abb9a5e69228bb'/>
<id>urn:sha1:08a1313bfca0751bc2a03448d9abb9a5e69228bb</id>
<content type='text'>
commit 1334d3b4e49e35d8912a7c37ffca4c5afb9a0516 upstream.

Apparently, 15 cycles of the peripheral clock are used by the controller
for sampling and filtering. Because this was not known before, the rate
calculation is slightly off.

Clean up and fix the calculation taking this filtering delay into account.

Fixes: 30021e3707a7 ("i2c: add support for Amlogic Meson I2C controller")
Signed-off-by: Nicolas Belin &lt;nbelin@baylibre.com&gt;
Signed-off-by: Jerome Brunet &lt;jbrunet@baylibre.com&gt;
Signed-off-by: Wolfram Sang &lt;wsa@kernel.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>i2c: meson: keep peripheral clock enabled</title>
<updated>2020-10-14T09:55:50+00:00</updated>
<author>
<name>Jerome Brunet</name>
<email>jbrunet@baylibre.com</email>
</author>
<published>2020-10-07T08:07:50+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/BMC/Intel-BMC/linux.git/commit/?id=3531df70c312a0d9996f6800d2e55de1ed48e9f7'/>
<id>urn:sha1:3531df70c312a0d9996f6800d2e55de1ed48e9f7</id>
<content type='text'>
commit 79e137b1540165f788394658442284d55a858984 upstream.

SCL rate appears to be different than what is expected. For example,
We get 164kHz on i2c3 of the vim3 when 400kHz is expected. This is
partially due to the peripheral clock being disabled when the clock is
set.

Let's keep the peripheral clock on after probe to fix the problem. This
does not affect the SCL output which is still gated when i2c is idle.

Fixes: 09af1c2fa490 ("i2c: meson: set clock divider in probe instead of setting it for each transfer")
Signed-off-by: Jerome Brunet &lt;jbrunet@baylibre.com&gt;
Signed-off-by: Wolfram Sang &lt;wsa@kernel.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>i2c: meson: fix clock setting overwrite</title>
<updated>2020-10-14T09:55:49+00:00</updated>
<author>
<name>Jerome Brunet</name>
<email>jbrunet@baylibre.com</email>
</author>
<published>2020-10-07T08:07:49+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/BMC/Intel-BMC/linux.git/commit/?id=fe6124585cfe77a38c785cd5acbf9abc6a543a6a'/>
<id>urn:sha1:fe6124585cfe77a38c785cd5acbf9abc6a543a6a</id>
<content type='text'>
commit 28683e847e2f20eed22cdd24f185d7783db396d3 upstream.

When the slave address is written in do_start(), SLAVE_ADDR is written
completely. This may overwrite some setting related to the clock rate
or signal filtering.

Fix this by writing only the bits related to slave address. To avoid
causing unexpected changed, explicitly disable filtering or high/low
clock mode which may have been left over by the bootloader.

Fixes: 30021e3707a7 ("i2c: add support for Amlogic Meson I2C controller")
Signed-off-by: Jerome Brunet &lt;jbrunet@baylibre.com&gt;
Signed-off-by: Wolfram Sang &lt;wsa@kernel.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
</feed>
