Skip to content

Commit 4099bc2

Browse files
finikorgnashif
authored andcommitted
drivers: smbus: Add Intel ICH / PCH SMbus driver
Add driver supporting Intel I/O Controller Hub (ICH), later renamed to Intel Platform Controller Hub (PCH). Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com>
1 parent af984aa commit 4099bc2

File tree

3 files changed

+848
-0
lines changed

3 files changed

+848
-0
lines changed

drivers/smbus/CMakeLists.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,5 +3,6 @@
33
zephyr_library()
44

55
zephyr_library_sources_ifdef(CONFIG_SMBUS_SHELL smbus_shell.c)
6+
zephyr_library_sources_ifdef(CONFIG_SMBUS_INTEL_PCH intel_pch_smbus.c)
67

78
zephyr_library_sources_ifdef(CONFIG_USERSPACE smbus_handlers.c)

drivers/smbus/Kconfig

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,4 +34,34 @@ module = SMBUS
3434
module-str = smbus
3535
source "subsys/logging/Kconfig.template.log_config"
3636

37+
config SMBUS_INTEL_PCH
38+
bool "SMBus Intel PCH driver"
39+
default y
40+
depends on DT_HAS_INTEL_PCH_SMBUS_ENABLED
41+
help
42+
Enable Intel Platform Controller Hub (PCH) SMBus driver.
43+
44+
if SMBUS_INTEL_PCH
45+
46+
choice SMBUS_INTEL_PCH_ACCESS
47+
bool "SMBus register access mode"
48+
default SMBUS_INTEL_PCH_ACCESS_IO
49+
help
50+
Default PCH register access mode. Set default access IO so
51+
that both Qemu Q35 and Intel hardware are supported.
52+
53+
config SMBUS_INTEL_PCH_ACCESS_IO
54+
bool "I/O PCH SMBus Register Access Mode"
55+
help
56+
Access PCH SMBus registers through I/O space.
57+
58+
config SMBUS_INTEL_PCH_ACCESS_MMIO
59+
bool "MMIO PCH SMBus Register Access Mode"
60+
help
61+
Access PCH SMBus registers though MMIO space.
62+
63+
endchoice
64+
65+
endif # SMBUS_INTEL_PCH
66+
3767
endif # SMBUS

0 commit comments

Comments
 (0)