-
Notifications
You must be signed in to change notification settings - Fork 6.1k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
drivers: i3c: npcx: introduce I3C driver
This implements basic driver to utilize the I3C IP block on NPCX. 1. I3C mode: Main controller mode only. 2. Transfer: Support SDR only. 3. IBI: Support Hot-Join, IBI(MDB). Controller request is not supported. 4. Support 3 I3C modules: I3C1(3.3V), I3C2(1.8V, espi mode), (I3C3 1.8V or 3.3V) Signed-off-by: Alvis Sun <yfsun@nuvoton.com>
- Loading branch information
Showing
14 changed files
with
2,524 additions
and
6 deletions.
There are no files selected for viewing
This file contains 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
This file contains 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
This file contains 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
This file contains 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
This file contains 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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,33 @@ | ||
# NPCX I3C driver configuration options | ||
# SPDX-License-Identifier: Apache-2.0 | ||
|
||
DT_I3C_NPCX := $(dt_nodelabel_path,i3c0) | ||
|
||
config I3C_NPCX | ||
bool "Nuvoton NPCX embedded controller (EC) I3C driver" | ||
depends on DT_HAS_NUVOTON_NPCX_I3C_ENABLED | ||
select RESET | ||
select I3C_IBI_WORKQUEUE if I3C_USE_IBI | ||
default y | ||
help | ||
This option enables the I3C driver for NPCX family of | ||
processors. | ||
Say y if you wish to use I3C channels on NPCX MCU. | ||
|
||
# Expose this option when the 'reg' property includes the MDMA base address | ||
# as the second group in the phandle-array. | ||
# i.e. I3C node example in dtsi file. | ||
# i3c0: i3c@400f0000 { | ||
# .... | ||
# /* reg[0]: I3C_1 register, reg[1]: MDMA5 register */ | ||
# reg-names = "i3c1", "mdma5"; | ||
# reg = <0x400f0000 0x2000>, | ||
# <0x40011500 0x100>; | ||
# .... | ||
# } | ||
config I3C_NPCX_DMA | ||
bool "Nuvoton NPCX embedded controller (EC) serial driver DMA support" | ||
depends on I3C_NPCX && "$(dt_node_reg_addr_hex,$(DT_I3C_NPCX),1)" != 0 | ||
default y | ||
help | ||
Enable support for npcx I3C DMA mode. |
This file contains 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
Oops, something went wrong.