diff options
author | David E. Box <david.e.box@linux.intel.com> | 2013-12-19 10:37:22 -0800 |
---|---|---|
committer | Matthew Garrett <matthew.garrett@nebula.com> | 2014-01-21 08:44:17 -0500 |
commit | 997ab407d2b4e7d7ce2788d2de68435eb94fcfec (patch) | |
tree | 52defddea0b41a79b9dd3ad75cb07227d75959ce /drivers/platform/x86/Kconfig | |
parent | 475879d65123eaf0b1490d603c4a4f5faac4179d (diff) | |
download | op-kernel-dev-997ab407d2b4e7d7ce2788d2de68435eb94fcfec.zip op-kernel-dev-997ab407d2b4e7d7ce2788d2de68435eb94fcfec.tar.gz |
X86 platform: New BayTrail IOSF-SB MBI driver
Current Intel SOC cores use a MailBox Interface (MBI) to provide access to unit
devices connected to the system fabric. This driver implements access to this
interface on BayTrail platforms. This is a requirement for drivers that need
access to unit registers on the platform (e.g. accessing the PUNIT for power
management features such as RAPL). Serialized access is handled by all exported
routines with spinlocks.
The API includes 3 functions for access to unit registers:
int bt_mbi_read(u8 port, u8 opcode, u32 offset, u32 *mdr)
int bt_mbi_write(u8 port, u8 opcode, u32 offset, u32 mdr)
int bt_mbi_modify(u8 port, u8 opcode, u32 offset, u32 mdr, u32 mask)
port: indicating the unit being accessed
opcode: the read or write port specific opcode
offset: the register offset within the port
mdr: the register data to be read, written, or modified
mask: bit locations in mdr to change
Returns nonzero on error
Note: GPU code handles access to the GFX unit. Therefore access to that unit
with this driver is disallowed to avoid conflicts.
Signed-off-by: David E. Box <david.e.box@linux.intel.com>
Signed-off-by: Matthew Garrett <matthew.garrett@nebula.com>
Diffstat (limited to 'drivers/platform/x86/Kconfig')
-rw-r--r-- | drivers/platform/x86/Kconfig | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/drivers/platform/x86/Kconfig b/drivers/platform/x86/Kconfig index d9dcd37..a698b92 100644 --- a/drivers/platform/x86/Kconfig +++ b/drivers/platform/x86/Kconfig @@ -808,4 +808,12 @@ config PVPANIC a paravirtualized device provided by QEMU; it lets a virtual machine (guest) communicate panic events to the host. +config INTEL_BAYTRAIL_MBI + tristate + depends on PCI + ---help--- + Needed on Baytrail platforms for access to the IOSF Sideband Mailbox + Interface. This is a requirement for systems that need to configure + the PUNIT for power management features such as RAPL. + endif # X86_PLATFORM_DEVICES |