<feed xmlns='http://www.w3.org/2005/Atom'>
<title>rt-thread.git/components/drivers/i2c, branch revert-11186-master</title>
<subtitle>Unnamed repository; edit this file 'description' to name the repository.</subtitle>
<id>http://cgit.235523.xyz/rt-thread.git/atom/components/drivers/i2c?h=revert-11186-master</id>
<link rel='self' href='http://cgit.235523.xyz/rt-thread.git/atom/components/drivers/i2c?h=revert-11186-master'/>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/rt-thread.git/'/>
<updated>2026-02-04T01:47:00Z</updated>
<entry>
<title>rename i2c mutex</title>
<updated>2026-02-04T01:47:00Z</updated>
<author>
<name>copilot-swe-agent[bot]</name>
<email>198982749+Copilot@users.noreply.github.com</email>
</author>
<published>2026-02-02T09:45:19Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/rt-thread.git/commit/?id=5e04105723f6de5ffcd5e6b843b489f52cdc679b'/>
<id>urn:sha1:5e04105723f6de5ffcd5e6b843b489f52cdc679b</id>
<content type='text'>
Co-authored-by: BernardXiong &lt;1241087+BernardXiong@users.noreply.github.com&gt;
</content>
</entry>
<entry>
<title>[drivers] Fix OFW bus conflict and prevent duplicate device creation</title>
<updated>2026-01-20T14:05:28Z</updated>
<author>
<name>lhxj</name>
<email>2743257167@qq.com</email>
</author>
<published>2025-12-25T09:56:52Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/rt-thread.git/commit/?id=7641ef68855601bc73252546bf41a96d6078444e'/>
<id>urn:sha1:7641ef68855601bc73252546bf41a96d6078444e</id>
<content type='text'>
Problem:
When enumerating device tree nodes, platform bus and native buses (I2C/SPI)
may create duplicate devices for the same OFW node, causing cross-bus conflicts.
This triggers assertion failure '(dev-&gt;bus != new_bus)' in
rt_bus_reload_driver_device() during boot on minimal DM-enabled systems.

Root Cause:
1. Platform bus tries to reload devices that already belong to other buses
   by calling rt_bus_reload_driver_device(dev-&gt;bus, dev), which violates
   the API contract (requires dev-&gt;bus != new_bus).
2. Native buses (I2C/SPI) do not mark OFW nodes as occupied, so platform
   bus creates duplicate platform devices for I2C/SPI client nodes.

Solution:
1. components/drivers/core/platform_ofw.c: Return RT_EOK when np-&gt;dev exists,
   letting the native bus handle device lifecycle instead of cross-bus reload.
2. components/drivers/i2c/dev_i2c_bus.c: Mark i2c_client_np-&gt;dev during scan
   to prevent platform bus from duplicating I2C client devices.
3. components/drivers/spi/dev_spi_bus.c: Mark spi_dev_np-&gt;dev during scan
   to prevent platform bus from duplicating SPI devices.

Tested on Spacemit K1 RISC-V platform with minimal DM configuration.

Signed-off-by: lhxj &lt;2743257167@qq.com&gt;
</content>
</entry>
<entry>
<title>[DM/I2C] Update I2C for DM</title>
<updated>2025-12-04T08:00:13Z</updated>
<author>
<name>GuEe-GUI</name>
<email>2991707448@qq.com</email>
</author>
<published>2025-12-01T08:46:17Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/rt-thread.git/commit/?id=798c84647c7a8959fb0d50a97f63e7e74c0e7119'/>
<id>urn:sha1:798c84647c7a8959fb0d50a97f63e7e74c0e7119</id>
<content type='text'>
1. Add get id match data API.
2. Set I2C device name default before adding to bus.
3. Add Kconfig import for DM.

Signed-off-by: GuEe-GUI &lt;2991707448@qq.com&gt;
</content>
</entry>
<entry>
<title>[drivers] merge the software i2c driver</title>
<updated>2025-01-09T03:07:03Z</updated>
<author>
<name>kurisaw</name>
<email>2053731441@qq.com</email>
</author>
<published>2025-01-09T02:05:52Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/rt-thread.git/commit/?id=1b76eccb37de8e01cf50a7c507de423c07f309ad'/>
<id>urn:sha1:1b76eccb37de8e01cf50a7c507de423c07f309ad</id>
<content type='text'>
</content>
</entry>
<entry>
<title>[components][i2c] 修改为debug等级打印</title>
<updated>2024-10-04T22:02:36Z</updated>
<author>
<name>wdfk-prog</name>
<email>1425075683@qq.com</email>
</author>
<published>2024-10-04T08:57:45Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/rt-thread.git/commit/?id=f28b84aa1fbe683cf52caaffbe7de76a8565bfb3'/>
<id>urn:sha1:f28b84aa1fbe683cf52caaffbe7de76a8565bfb3</id>
<content type='text'>
</content>
</entry>
<entry>
<title>[device] add dev_ prefix for file names</title>
<updated>2024-08-23T22:15:09Z</updated>
<author>
<name>CXSforHPU</name>
<email>156403074+CXSforHPU@users.noreply.github.com</email>
</author>
<published>2024-08-23T22:15:09Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/rt-thread.git/commit/?id=416ec66380d89e2d3ff8ea37fd748ccc77130ab2'/>
<id>urn:sha1:416ec66380d89e2d3ff8ea37fd748ccc77130ab2</id>
<content type='text'>
</content>
</entry>
<entry>
<title>[components] [drivers ] [Kconfig] 整理 components/drivers 的 Kconfig (#9054)</title>
<updated>2024-06-16T07:43:27Z</updated>
<author>
<name>sp-cai</name>
<email>70000077+sp-cai@users.noreply.github.com</email>
</author>
<published>2024-06-16T07:43:27Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/rt-thread.git/commit/?id=f1832fea24958649c8c113de5b71581874771548'/>
<id>urn:sha1:f1832fea24958649c8c113de5b71581874771548</id>
<content type='text'>
整理 components/drivers 的 Kconfig</content>
</entry>
<entry>
<title>[i2c] adjust the timing for I2C initialization</title>
<updated>2024-04-30T00:46:12Z</updated>
<author>
<name>LZerro</name>
<email>144687571+LZerro@users.noreply.github.com</email>
</author>
<published>2024-04-30T00:46:12Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/rt-thread.git/commit/?id=f190cba0ab75a18a96002ded96054c435c21be47'/>
<id>urn:sha1:f190cba0ab75a18a96002ded96054c435c21be47</id>
<content type='text'>
</content>
</entry>
<entry>
<title>[components][drivers]add ofw support i2c</title>
<updated>2024-04-07T13:57:38Z</updated>
<author>
<name>zms123456</name>
<email>85141075+zmshahaha@users.noreply.github.com</email>
</author>
<published>2024-04-07T13:57:38Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/rt-thread.git/commit/?id=4ffcbfef2a05ac7f7962f8a7d718ea4c2a9b2a99'/>
<id>urn:sha1:4ffcbfef2a05ac7f7962f8a7d718ea4c2a9b2a99</id>
<content type='text'>
</content>
</entry>
<entry>
<title>soft_i2c: Loop iteration variable: Conform to C89</title>
<updated>2023-11-26T10:40:02Z</updated>
<author>
<name>Raman Gopalan</name>
<email>ramangopalan@gmail.com</email>
</author>
<published>2023-11-26T10:17:06Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/rt-thread.git/commit/?id=4e656078b6e5282370b294355da43a988c2a8dfc'/>
<id>urn:sha1:4e656078b6e5282370b294355da43a988c2a8dfc</id>
<content type='text'>
</content>
</entry>
</feed>
