Software i2c addr aliasing - #327
Merged
Merged
Conversation
Collaborator
|
need to check why it's not passing CI |
ejgoldik
force-pushed
the
D4xx_SW_i2c_addr_aliasing
branch
from
February 1, 2026 06:41
f447fbe to
4b4e0e3
Compare
There was a problem hiding this comment.
Pull request overview
This PR implements software-based I2C address aliasing to support deserializer boards without hardware I2C multiplexers. Instead of requiring separate I2C buses (0x30-0x37) for each sensor, all four D4xx sensors (Depth, RGB, IR, IMU) are now defined on a single I2C bus using virtual addresses (0x1b-0x1d) that the driver overrides to the physical address (0x1a).
Changes:
- Removed Intel IPU6-specific code and preprocessor directives throughout the driver
- Implemented
override_regdevice tree property to alias virtual I2C addresses to physical address 0x1a - Consolidated multiple I2C bus definitions into a single bus with address aliasing in device tree files
Reviewed changes
Copilot reviewed 5 out of 5 changed files in this pull request and generated 4 comments.
Show a summary per file
| File | Description |
|---|---|
| probe_flow_sequence_diagram_single_bus.md | New documentation describing single-bus architecture with I2C address aliasing |
| probe_flow_sequence_diagram.md | New documentation describing original multi-bus architecture |
| kernel/realsense/d4xx.c | Driver implementation of address override mechanism and removal of IPU6-specific code |
| hardware/realsense/tegra234-camera-d4xx-overlay.dts | Device tree changes consolidating sensors to single bus with virtual addresses |
| hardware/realsense/tegra194-camera-d4xx-single.dtsi | Device tree changes consolidating sensors to single bus with virtual addresses |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
ejgoldik
force-pushed
the
D4xx_SW_i2c_addr_aliasing
branch
from
February 1, 2026 13:45
4b4e0e3 to
23544ba
Compare
ejgoldik
force-pushed
the
D4xx_SW_i2c_addr_aliasing
branch
2 times, most recently
from
February 11, 2026 12:44
0c2dd09 to
a4f7be8
Compare
ejgoldik
force-pushed
the
D4xx_SW_i2c_addr_aliasing
branch
2 times, most recently
from
February 18, 2026 12:42
345b9b4 to
bacafdc
Compare
To allow for deserializer boards which do not have the I2C mux that aliases 8 i2c addr (30 - 37) to i2c 0, we define all devices under i2c@0 with virtual addr 0x1b-0x1d, and in the driver override them with 0x1a Signed-off-by: ejgoldik <ehud.joseph.goldik@intel.com>
Signed-off-by: ejgoldik <ehud.joseph.goldik@intel.com>
Signed-off-by: ejgoldik <ehud.joseph.goldik@intel.com>
Signed-off-by: ejgoldik <ehud.joseph.goldik@intel.com>
Signed-off-by: ejgoldik <ehud.joseph.goldik@realsenseai.com>
Signed-off-by: ejgoldik <ehud.joseph.goldik@realsenseai.com>
Signed-off-by: ejgoldik <ehud.joseph.goldik@realsenseai.com>
Signed-off-by: ejgoldik <ehud.joseph.goldik@realsenseai.com>
ejgoldik
force-pushed
the
D4xx_SW_i2c_addr_aliasing
branch
from
February 19, 2026 06:41
bacafdc to
27130dd
Compare
ymodlin
self-requested a review
February 19, 2026 06:44
ymodlin
approved these changes
Feb 19, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
To allow for deserializer boards which do not have the I2C mux that aliases 8 i2c addr (30 - 37) to i2c 0, we define all devices under i2c@0 with virtual addr 0x1b-0x1d, and in the driver override them with 0x1a