Skip to content

Commit

Permalink
i3c: imx3112: Add driver for Renesas IMX3112 mux
Browse files Browse the repository at this point in the history
This change adds the driver for the Renesas IMX3112
2:1 bus multiplexer. It also adds dt-bindings for generic
i3c-muxes, and Kconfig priorities to make sure the init order is:
1. bus controller
2. mux
3. channel

Signed-off-by: Ramiro de Rojas Perez <[email protected]>
  • Loading branch information
ramiroderojas committed Jun 20, 2023
1 parent e1efafa commit 98b7035
Show file tree
Hide file tree
Showing 7 changed files with 674 additions and 0 deletions.
5 changes: 5 additions & 0 deletions drivers/i3c/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -28,3 +28,8 @@ zephyr_library_sources_ifdef(
CONFIG_I3C_CADENCE
i3c_cdns.c
)

zephyr_library_sources_ifdef(
CONFIG_I3C_RENESAS_IMX3112
i3c_renesas_imx3112.c
)
1 change: 1 addition & 0 deletions drivers/i3c/Kconfig
Original file line number Diff line number Diff line change
Expand Up @@ -100,5 +100,6 @@ comment "Device Drivers"

rsource "Kconfig.nxp"
rsource "Kconfig.cdns"
rsource "Kconfig.renesas"

endif # I3C
28 changes: 28 additions & 0 deletions drivers/i3c/Kconfig.renesas
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
# Copyright (c) 2022 Google LLC
# SPDX-License-Identifier: Apache-2.0

config I3C_RENESAS_MUX_PRIORITY
int "I3C Renesas Mux Init Priority"
# Default is just after I3C_CONTROLLER_INIT_PRIORITY
default 51
help
This is used for setting up an I3C renesas mux, by configuring
the electrical parameters and doing device discovery.

Note that this needs to be done before the device driver
instances of the connected I3C devices start
initializing those devices, but after the bus controller finishes
initialization

config I3C_RENESAS_CHANNEL_PRIORITY
int "I3C Renesas Mux Init Priority"
# Default is just after I3C_RENESAS_MUX_PRIORITY
default 52
help
This is used for setting up an I3C renesas mux channels by
doing device discovery in each channel

config I3C_RENESAS_IMX3112
bool "Renesas I3C 2:1 bus multiplexer imx3112"
help
Enable the renesas imx3112 mux
Loading

0 comments on commit 98b7035

Please sign in to comment.