soc/amd/stoneyridge: Finish read/write misc registers
Add 16 and 32-bit versions of read / write_misc functions. Find one access of the MISC block still using read8() and write8(), and convert it. Change-Id: I296c521ea7f43210db406013bbe79362545ce6f3 Signed-off-by: Marshall Dawson <marshalldawson3rd@gmail.com> Reviewed-on: https://review.coreboot.org/c/coreboot/+/32646 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Martin Roth <martinroth@google.com>
This commit is contained in:
parent
b435d4405d
commit
b4b9efcfdd
|
@ -503,7 +503,11 @@ u32 acpi_read32(u8 reg);
|
||||||
void acpi_write8(u8 reg, u8 value);
|
void acpi_write8(u8 reg, u8 value);
|
||||||
void acpi_write16(u8 reg, u16 value);
|
void acpi_write16(u8 reg, u16 value);
|
||||||
void acpi_write32(u8 reg, u32 value);
|
void acpi_write32(u8 reg, u32 value);
|
||||||
|
u8 misc_read8(u8 reg);
|
||||||
|
u16 misc_read16(u8 reg);
|
||||||
u32 misc_read32(u8 reg);
|
u32 misc_read32(u8 reg);
|
||||||
|
void misc_write8(u8 reg, u8 value);
|
||||||
|
void misc_write16(u8 reg, u16 value);
|
||||||
void misc_write32(u8 reg, u32 value);
|
void misc_write32(u8 reg, u32 value);
|
||||||
uint8_t smi_read8(uint8_t offset);
|
uint8_t smi_read8(uint8_t offset);
|
||||||
uint16_t smi_read16(uint8_t offset);
|
uint16_t smi_read16(uint8_t offset);
|
||||||
|
|
|
@ -219,11 +219,31 @@ void smbus_write16(u8 reg, u16 value)
|
||||||
|
|
||||||
/* misc read/write - access registers at 0xfed80e00 */
|
/* misc read/write - access registers at 0xfed80e00 */
|
||||||
|
|
||||||
|
u8 misc_read8(u8 reg)
|
||||||
|
{
|
||||||
|
return read8((void *)(ACPIMMIO_MISC_BASE + reg));
|
||||||
|
}
|
||||||
|
|
||||||
|
u16 misc_read16(u8 reg)
|
||||||
|
{
|
||||||
|
return read16((void *)(ACPIMMIO_MISC_BASE + reg));
|
||||||
|
}
|
||||||
|
|
||||||
u32 misc_read32(u8 reg)
|
u32 misc_read32(u8 reg)
|
||||||
{
|
{
|
||||||
return read32((void *)(ACPIMMIO_MISC_BASE + reg));
|
return read32((void *)(ACPIMMIO_MISC_BASE + reg));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void misc_write8(u8 reg, u8 value)
|
||||||
|
{
|
||||||
|
write8((void *)(ACPIMMIO_MISC_BASE + reg), value);
|
||||||
|
}
|
||||||
|
|
||||||
|
void misc_write16(u8 reg, u16 value)
|
||||||
|
{
|
||||||
|
write16((void *)(ACPIMMIO_MISC_BASE + reg), value);
|
||||||
|
}
|
||||||
|
|
||||||
void misc_write32(u8 reg, u32 value)
|
void misc_write32(u8 reg, u32 value)
|
||||||
{
|
{
|
||||||
write32((void *)(ACPIMMIO_MISC_BASE + reg), value);
|
write32((void *)(ACPIMMIO_MISC_BASE + reg), value);
|
||||||
|
|
|
@ -391,14 +391,12 @@ static void sb_enable_legacy_io(void)
|
||||||
void sb_clk_output_48Mhz(u32 osc)
|
void sb_clk_output_48Mhz(u32 osc)
|
||||||
{
|
{
|
||||||
u32 ctrl;
|
u32 ctrl;
|
||||||
u32 *misc_clk_cntl_1_ptr = (u32 *)(uintptr_t)(ACPIMMIO_MISC_BASE
|
|
||||||
+ MISC_CLK_CNTL1);
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Clear the disable for OSCOUT1 (signal typically named XnnM_25M_48M)
|
* Clear the disable for OSCOUT1 (signal typically named XnnM_25M_48M)
|
||||||
* or OSCOUT2 (USBCLK/25M_48M_OSC). The frequency defaults to 48MHz.
|
* or OSCOUT2 (USBCLK/25M_48M_OSC). The frequency defaults to 48MHz.
|
||||||
*/
|
*/
|
||||||
ctrl = read32(misc_clk_cntl_1_ptr);
|
ctrl = misc_read32(MISC_CLK_CNTL1);
|
||||||
|
|
||||||
switch (osc) {
|
switch (osc) {
|
||||||
case 1:
|
case 1:
|
||||||
|
@ -410,7 +408,7 @@ void sb_clk_output_48Mhz(u32 osc)
|
||||||
default:
|
default:
|
||||||
return; /* do nothing if invalid */
|
return; /* do nothing if invalid */
|
||||||
}
|
}
|
||||||
write32(misc_clk_cntl_1_ptr, ctrl);
|
misc_write32(MISC_CLK_CNTL1, ctrl);
|
||||||
}
|
}
|
||||||
|
|
||||||
static uintptr_t sb_spibase(void)
|
static uintptr_t sb_spibase(void)
|
||||||
|
|
Loading…
Reference in New Issue