<feed xmlns='http://www.w3.org/2005/Atom'>
<title>lwn.git/drivers/i3c/master, branch header-removal</title>
<subtitle>Linux kernel documentation tree maintained by Jonathan Corbet</subtitle>
<id>http://mirrors.hust.edu.cn/git/lwn.git/atom?h=header-removal</id>
<link rel='self' href='http://mirrors.hust.edu.cn/git/lwn.git/atom?h=header-removal'/>
<link rel='alternate' type='text/html' href='http://mirrors.hust.edu.cn/git/lwn.git/'/>
<updated>2021-07-10T18:53:06+00:00</updated>
<entry>
<title>Merge tag 'i3c/for-5.14' of git://git.kernel.org/pub/scm/linux/kernel/git/i3c/linux</title>
<updated>2021-07-10T18:53:06+00:00</updated>
<author>
<name>Linus Torvalds</name>
<email>torvalds@linux-foundation.org</email>
</author>
<published>2021-07-10T18:53:06+00:00</published>
<link rel='alternate' type='text/html' href='http://mirrors.hust.edu.cn/git/lwn.git/commit/?id=88bbd8a031b83d4a91f1f8f4c1ce8caa16dc0886'/>
<id>urn:sha1:88bbd8a031b83d4a91f1f8f4c1ce8caa16dc0886</id>
<content type='text'>
Pull i3c updates from Alexandre Belloni:

 - two small fixes to the svc driver

* tag 'i3c/for-5.14' of git://git.kernel.org/pub/scm/linux/kernel/git/i3c/linux:
  i3c: master: svc: fix doc warning in svc-i3c-master.c
  i3c: master: svc: drop free_irq of devm_request_irq allocated irq
</content>
</entry>
<entry>
<title>i3c: master: cdns: Fix fall-through warning for Clang</title>
<updated>2021-06-29T13:37:04+00:00</updated>
<author>
<name>Gustavo A. R. Silva</name>
<email>gustavoars@kernel.org</email>
</author>
<published>2021-06-29T13:37:04+00:00</published>
<link rel='alternate' type='text/html' href='http://mirrors.hust.edu.cn/git/lwn.git/commit/?id=ba3fea547236bfd325f4713dfb0569e150010894'/>
<id>urn:sha1:ba3fea547236bfd325f4713dfb0569e150010894</id>
<content type='text'>
In preparation to enable -Wimplicit-fallthrough for Clang, fix a warning
by explicitly adding a break statement instead of letting the code fall
through to the next case.

Link: https://github.com/KSPP/linux/issues/115
Signed-off-by: Gustavo A. R. Silva &lt;gustavoars@kernel.org&gt;
</content>
</entry>
<entry>
<title>i3c: master: svc: fix doc warning in svc-i3c-master.c</title>
<updated>2021-06-09T00:02:45+00:00</updated>
<author>
<name>Yang Yingliang</name>
<email>yangyingliang@huawei.com</email>
</author>
<published>2021-06-02T08:55:44+00:00</published>
<link rel='alternate' type='text/html' href='http://mirrors.hust.edu.cn/git/lwn.git/commit/?id=3e5feb11a82945c88a1518fd2682ca8de66c37d3'/>
<id>urn:sha1:3e5feb11a82945c88a1518fd2682ca8de66c37d3</id>
<content type='text'>
Fix the following make W=1 warning:

  drivers/i3c/master/svc-i3c-master.c:207: warning: expecting prototype for struct svc_i3c_i3c_dev_data. Prototype was for struct svc_i3c_i2c_dev_data instead

Signed-off-by: Yang Yingliang &lt;yangyingliang@huawei.com&gt;
Reviewed-by: Miquel Raynal &lt;miquel.raynal@bootlin.com&gt;
Signed-off-by: Alexandre Belloni &lt;alexandre.belloni@bootlin.com&gt;
Link: https://lore.kernel.org/r/20210602085544.4101980-1-yangyingliang@huawei.com
</content>
</entry>
<entry>
<title>i3c: master: svc: drop free_irq of devm_request_irq allocated irq</title>
<updated>2021-06-09T00:02:22+00:00</updated>
<author>
<name>Yang Yingliang</name>
<email>yangyingliang@huawei.com</email>
</author>
<published>2021-06-02T08:49:35+00:00</published>
<link rel='alternate' type='text/html' href='http://mirrors.hust.edu.cn/git/lwn.git/commit/?id=59a61e69c4252b4e8ecd15e752b0d2337f0121b7'/>
<id>urn:sha1:59a61e69c4252b4e8ecd15e752b0d2337f0121b7</id>
<content type='text'>
irq allocated with devm_request_irq() will be freed in devm_irq_release(),
using free_irq() in -&gt;remove() will causes a dangling pointer, and a
subsequent double free. So remove the free_irq() in svc_i3c_master_remove().

Reported-by: Hulk Robot &lt;hulkci@huawei.com&gt;
Signed-off-by: Yang Yingliang &lt;yangyingliang@huawei.com&gt;
Reviewed-by: Miquel Raynal &lt;miquel.raynal@bootlin.com&gt;
Signed-off-by: Alexandre Belloni &lt;alexandre.belloni@bootlin.com&gt;
Link: https://lore.kernel.org/r/20210602084935.3977636-1-yangyingliang@huawei.com
</content>
</entry>
<entry>
<title>i3c: master: svc: remove redundant assignment to cmd-&gt;read_len</title>
<updated>2021-03-09T20:13:31+00:00</updated>
<author>
<name>Colin Ian King</name>
<email>colin.king@canonical.com</email>
</author>
<published>2021-02-24T15:13:49+00:00</published>
<link rel='alternate' type='text/html' href='http://mirrors.hust.edu.cn/git/lwn.git/commit/?id=436cb709f8a9fd1a52e00e830e715c63191c2e63'/>
<id>urn:sha1:436cb709f8a9fd1a52e00e830e715c63191c2e63</id>
<content type='text'>
The assignment of xfer_len to cmd-&gt;read_len appears to be redundant
as the next statement re-assigns the value 0 to it.  Clean up the
code by removing the redundant first assignment.

Addresses-Coverity: ("Unused value")
Fixes: dd3c52846d59 ("i3c: master: svc: Add Silvaco I3C master driver")
Signed-off-by: Colin Ian King &lt;colin.king@canonical.com&gt;
Reviewed-by: Miquel Raynal &lt;miquel.raynal@bootlin.com&gt;
Signed-off-by: Alexandre Belloni &lt;alexandre.belloni@bootlin.com&gt;
Link: https://lore.kernel.org/r/20210224151349.202332-1-colin.king@canonical.com
</content>
</entry>
<entry>
<title>Merge tag 'i3c/for-5.12' of git://git.kernel.org/pub/scm/linux/kernel/git/i3c/linux</title>
<updated>2021-02-22T17:52:55+00:00</updated>
<author>
<name>Linus Torvalds</name>
<email>torvalds@linux-foundation.org</email>
</author>
<published>2021-02-22T17:52:55+00:00</published>
<link rel='alternate' type='text/html' href='http://mirrors.hust.edu.cn/git/lwn.git/commit/?id=36c1b20d15703662aa0f14a32a8bd19ab3a33076'/>
<id>urn:sha1:36c1b20d15703662aa0f14a32a8bd19ab3a33076</id>
<content type='text'>
Pull i3c update from Alexandre Belloni:
 "Subsystem:
   - Handle drivers without probe or remove callback
   - Remove callback now returns void
   - DT documentation is now in yaml

  New driver:
   - Silvaco I3C master"

* tag 'i3c/for-5.12' of git://git.kernel.org/pub/scm/linux/kernel/git/i3c/linux:
  i3c: master: dw: Drop redundant disec call
  MAINTAINERS: Add Silvaco I3C master
  i3c: master: svc: Add Silvaco I3C master driver
  dt-bindings: i3c: Describe Silvaco master binding
  dt-bindings: Add vendor prefix for Silvaco
  dt-bindings: i3c: mipi-hci: Include the bus binding
  dt-bindings: i3c: Convert the bus description to yaml
  i3c: Make remove callback return void
  i3c: Handle drivers without probe or remove callback
  i3c/master/mipi-i3c-hci: Specify HAS_IOMEM dependency
</content>
</entry>
<entry>
<title>i3c: master: dw: Drop redundant disec call</title>
<updated>2021-02-05T23:44:15+00:00</updated>
<author>
<name>Miquel Raynal</name>
<email>miquel.raynal@bootlin.com</email>
</author>
<published>2020-12-28T10:55:01+00:00</published>
<link rel='alternate' type='text/html' href='http://mirrors.hust.edu.cn/git/lwn.git/commit/?id=5c34b8e7e8bb605925b33e1aa7dc17966811219a'/>
<id>urn:sha1:5c34b8e7e8bb605925b33e1aa7dc17966811219a</id>
<content type='text'>
Disabling all event calls is already handled by the core right before
starting the DAA process. Do not do it again when the DAA process
completes, it is redundant.

Fixes: 1dd728f5d4d4 ("i3c: master: Add driver for Synopsys DesignWare IP")
Signed-off-by: Miquel Raynal &lt;miquel.raynal@bootlin.com&gt;
Signed-off-by: Alexandre Belloni &lt;alexandre.belloni@bootlin.com&gt;
Link: https://lore.kernel.org/r/20201228105501.6104-1-miquel.raynal@bootlin.com
</content>
</entry>
<entry>
<title>i3c: master: svc: Add Silvaco I3C master driver</title>
<updated>2021-02-05T23:43:29+00:00</updated>
<author>
<name>Miquel Raynal</name>
<email>miquel.raynal@bootlin.com</email>
</author>
<published>2021-01-21T10:18:07+00:00</published>
<link rel='alternate' type='text/html' href='http://mirrors.hust.edu.cn/git/lwn.git/commit/?id=dd3c52846d5954acd43f0e771689302f27dadc28'/>
<id>urn:sha1:dd3c52846d5954acd43f0e771689302f27dadc28</id>
<content type='text'>
Add support for Silvaco I3C dual-role IP. The master role is supported
in SDR mode only. I2C transfers have not been tested but are shared
because they are very close to the I3C transfers in terms of register
configuration.

The IBI processing follows this logic:
- When a slave advertizes an interrupt (SDA pulled low) an interrupt
  gets generated by the master. This time is unbounded and may be
  deferred.
- The IRQ handler itself does not process anything: it only queues a
  work that will be run in non-atomic context. This is needed because
  short wait periods must be experienced.
- The IBI job is divided in two parts: the first one is "critical" in
  the sense that it may not support getting interrupted. If this
  happens, after this first section the driver checks the master error
  register and depending on its content either flushes everything and
  errors out, or ends the processing (this second section may be
  interrupted).
- If the critical section got interrupted, the slave will
  automatically respin it's IBI request when it will be allowed to.

Signed-off-by: Miquel Raynal &lt;miquel.raynal@bootlin.com&gt;
Signed-off-by: Alexandre Belloni &lt;alexandre.belloni@bootlin.com&gt;
Link: https://lore.kernel.org/r/20210121101808.14654-6-miquel.raynal@bootlin.com
</content>
</entry>
<entry>
<title>i3c/master/mipi-i3c-hci: Specify HAS_IOMEM dependency</title>
<updated>2021-02-01T22:39:17+00:00</updated>
<author>
<name>David Gow</name>
<email>davidgow@google.com</email>
</author>
<published>2021-01-27T04:06:37+00:00</published>
<link rel='alternate' type='text/html' href='http://mirrors.hust.edu.cn/git/lwn.git/commit/?id=9d909f1b1e91b4aa7d016ed14b7b76dbf2675414'/>
<id>urn:sha1:9d909f1b1e91b4aa7d016ed14b7b76dbf2675414</id>
<content type='text'>
The MIPI i3c HCI driver makes use of IOMEM functions like
devm_platform_ioremap_resource(), which are only available if
CONFIG_HAS_IOMEM is defined.

This causes the driver to be enabled under make ARCH=um allyesconfig,
even though it won't build.

By adding a dependency on HAS_IOMEM, the driver will not be enabled on
architectures which don't support it.

Fixes: 9ad9a52cce28 ("i3c/master: introduce the mipi-i3c-hci driver")
Signed-off-by: David Gow &lt;davidgow@google.com&gt;
Acked-by: Nicolas Pitre &lt;npitre@baylibre.com&gt;
Signed-off-by: Alexandre Belloni &lt;alexandre.belloni@bootlin.com&gt;
Link: https://lore.kernel.org/r/20210127040636.1535722-1-davidgow@google.com
</content>
</entry>
<entry>
<title>i3c/master/mipi-i3c-hci: Fix position of __maybe_unused in i3c_hci_of_match</title>
<updated>2020-12-31T17:41:37+00:00</updated>
<author>
<name>Nathan Chancellor</name>
<email>natechancellor@gmail.com</email>
</author>
<published>2020-12-22T02:59:31+00:00</published>
<link rel='alternate' type='text/html' href='http://mirrors.hust.edu.cn/git/lwn.git/commit/?id=291b5c9870fc546376d69cf792b7885cd0c9c1b3'/>
<id>urn:sha1:291b5c9870fc546376d69cf792b7885cd0c9c1b3</id>
<content type='text'>
Clang warns:

 ../drivers/i3c/master/mipi-i3c-hci/core.c:780:21: warning: attribute
 declaration must precede definition [-Wignored-attributes]
 static const struct __maybe_unused of_device_id i3c_hci_of_match[] = {
                     ^
 ../include/linux/compiler_attributes.h:267:56: note: expanded from macro
 '__maybe_unused'
 #define __maybe_unused                  __attribute__((__unused__))
                                                        ^
 ../include/linux/mod_devicetable.h:262:8: note: previous definition is
 here
 struct of_device_id {
        ^
1 warning generated.

'struct of_device_id' should not be split, as it is a type. Move the
__maybe_unused attribute after the static and const qualifiers so that
there are no warnings about this variable, period.

Fixes: 95393f3e07ab ("i3c/master/mipi-i3c-hci: quiet maybe-unused variable warning")
Link: https://github.com/ClangBuiltLinux/linux/issues/1221
Signed-off-by: Nathan Chancellor &lt;natechancellor@gmail.com&gt;
Acked-by: Nicolas Pitre &lt;npitre@baylibre.com&gt;
Signed-off-by: Alexandre Belloni &lt;alexandre.belloni@bootlin.com&gt;
Link: https://lore.kernel.org/r/20201222025931.3043480-1-natechancellor@gmail.com
</content>
</entry>
</feed>
