<p>Richard Spiegel has uploaded this change for <strong>review</strong>.</p><p><a href="https://review.coreboot.org/29350">View Change</a></p><pre style="font-family: monospace,monospace; white-space: pre-wrap;">soc/amd/stoneyridge: Create MMIO ACPI access functions<br><br>Now that the relationship between IO access and MMIO access has been<br>established, create read/write functions to access ACPI standard registers<br>through MMIO.<br><br>BUG=b:118049037<br>TEST=Build grunt<br><br>Change-Id: I8dab279019fe9ca55522ab3e65f51b9f459529ee<br>Signed-off-by: Richard Spiegel <richard.spiegel@silverbackltd.com><br>---<br>M src/soc/amd/stoneyridge/include/soc/southbridge.h<br>M src/soc/amd/stoneyridge/sb_util.c<br>2 files changed, 36 insertions(+), 0 deletions(-)<br><br></pre><pre style="font-family: monospace,monospace; white-space: pre-wrap;">git pull ssh://review.coreboot.org:29418/coreboot refs/changes/50/29350/1</pre><pre style="font-family: monospace,monospace; white-space: pre-wrap;"><span>diff --git a/src/soc/amd/stoneyridge/include/soc/southbridge.h b/src/soc/amd/stoneyridge/include/soc/southbridge.h</span><br><span>index 681f149..6b96c81 100644</span><br><span>--- a/src/soc/amd/stoneyridge/include/soc/southbridge.h</span><br><span>+++ b/src/soc/amd/stoneyridge/include/soc/southbridge.h</span><br><span>@@ -444,6 +444,12 @@</span><br><span> void pm_write8(u8 reg, u8 value);</span><br><span> void pm_write16(u8 reg, u16 value);</span><br><span> void pm_write32(u8 reg, u32 value);</span><br><span style="color: hsl(120, 100%, 40%);">+u8 acpi_mmio_read8(u8 reg);</span><br><span style="color: hsl(120, 100%, 40%);">+u16 acpi_mmio_read16(u8 reg);</span><br><span style="color: hsl(120, 100%, 40%);">+u32 acpi_mmio_read32(u8 reg);</span><br><span style="color: hsl(120, 100%, 40%);">+void acpi_mmio_write8(u8 reg, u8 value);</span><br><span style="color: hsl(120, 100%, 40%);">+void acpi_mmio_write16(u8 reg, u16 value);</span><br><span style="color: hsl(120, 100%, 40%);">+void acpi_mmio_write32(u8 reg, u32 value);</span><br><span> u32 misc_read32(u8 reg);</span><br><span> void misc_write32(u8 reg, u32 value);</span><br><span> uint8_t smi_read8(uint8_t offset);</span><br><span>diff --git a/src/soc/amd/stoneyridge/sb_util.c b/src/soc/amd/stoneyridge/sb_util.c</span><br><span>index 9daf0bb..f6bfcc9 100644</span><br><span>--- a/src/soc/amd/stoneyridge/sb_util.c</span><br><span>+++ b/src/soc/amd/stoneyridge/sb_util.c</span><br><span>@@ -56,6 +56,36 @@</span><br><span>  return read32((void *)(PM_MMIO_BASE + reg));</span><br><span> }</span><br><span> </span><br><span style="color: hsl(120, 100%, 40%);">+u8 acpi_mmio_read8(u8 reg)</span><br><span style="color: hsl(120, 100%, 40%);">+{</span><br><span style="color: hsl(120, 100%, 40%);">+  return read8((u8 *)(ACPI_REG_MMIO_BASE + reg));</span><br><span style="color: hsl(120, 100%, 40%);">+}</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+u16 acpi_mmio_read16(u8 reg)</span><br><span style="color: hsl(120, 100%, 40%);">+{</span><br><span style="color: hsl(120, 100%, 40%);">+ return read16((u16 *)(ACPI_REG_MMIO_BASE + reg));</span><br><span style="color: hsl(120, 100%, 40%);">+}</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+u32 acpi_mmio_read32(u8 reg)</span><br><span style="color: hsl(120, 100%, 40%);">+{</span><br><span style="color: hsl(120, 100%, 40%);">+       return read32((u32 *)(ACPI_REG_MMIO_BASE + reg));</span><br><span style="color: hsl(120, 100%, 40%);">+}</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+void acpi_mmio_write8(u8 reg, u8 value)</span><br><span style="color: hsl(120, 100%, 40%);">+{</span><br><span style="color: hsl(120, 100%, 40%);">+    write8((u8 *)(ACPI_REG_MMIO_BASE + reg), value);</span><br><span style="color: hsl(120, 100%, 40%);">+}</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+void acpi_mmio_write16(u8 reg, u16 value)</span><br><span style="color: hsl(120, 100%, 40%);">+{</span><br><span style="color: hsl(120, 100%, 40%);">+   write16((u16 *)(ACPI_REG_MMIO_BASE + reg), value);</span><br><span style="color: hsl(120, 100%, 40%);">+}</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+void acpi_mmio_write32(u8 reg, u32 value)</span><br><span style="color: hsl(120, 100%, 40%);">+{</span><br><span style="color: hsl(120, 100%, 40%);">+ write32((u32 *)(ACPI_REG_MMIO_BASE + reg), value);</span><br><span style="color: hsl(120, 100%, 40%);">+}</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span> void smi_write32(uint8_t offset, uint32_t value)</span><br><span> {</span><br><span>     write32((void *)(APU_SMI_BASE + offset), value);</span><br><span></span><br></pre><p>To view, visit <a href="https://review.coreboot.org/29350">change 29350</a>. To unsubscribe, or for help writing mail filters, visit <a href="https://review.coreboot.org/settings">settings</a>.</p><div itemscope itemtype="http://schema.org/EmailMessage"><div itemscope itemprop="action" itemtype="http://schema.org/ViewAction"><link itemprop="url" href="https://review.coreboot.org/29350"/><meta itemprop="name" content="View Change"/></div></div>

<div style="display:none"> Gerrit-Project: coreboot </div>
<div style="display:none"> Gerrit-Branch: master </div>
<div style="display:none"> Gerrit-MessageType: newchange </div>
<div style="display:none"> Gerrit-Change-Id: I8dab279019fe9ca55522ab3e65f51b9f459529ee </div>
<div style="display:none"> Gerrit-Change-Number: 29350 </div>
<div style="display:none"> Gerrit-PatchSet: 1 </div>
<div style="display:none"> Gerrit-Owner: Richard Spiegel <richard.spiegel@silverbackltd.com> </div>