lib/espi_debug: Add espi_show_slave_peripheral_channel_configuration

Prints out the following:
eSPI Slave Peripheral configuration:
    Peripheral Channel Maximum Read Request Size: 64 bytes
    Peripheral Channel Maximum Payload Size Selected: 64 bytes
    Peripheral Channel Maximum Payload Size Supported: 64 bytes
    Bus master: disabled
    Peripheral Channel: ready
    Peripheral Channel: enabled

BUG=none
TEST=boot guybrush

Signed-off-by: Raul E Rangel <rrangel@chromium.org>
Change-Id: I7d598ee4f0f9d8ec0b37767e6a5a70288be2cb86
Reviewed-on: https://review.coreboot.org/c/coreboot/+/52225
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Marshall Dawson <marshalldawson3rd@gmail.com>
This commit is contained in:
Raul E Rangel 2021-04-09 14:03:37 -06:00 committed by Felix Held
parent 74d14b8ff7
commit 570c654db7
2 changed files with 89 additions and 1 deletions

View File

@ -230,8 +230,10 @@
#if CONFIG(ESPI_DEBUG)
void espi_show_slave_general_configuration(uint32_t config);
void espi_show_slave_peripheral_channel_configuration(uint32_t config);
#else
static void espi_show_slave_general_configuration(uint32_t config) {}
static inline void espi_show_slave_general_configuration(uint32_t config) {}
static inline void espi_show_slave_peripheral_channel_configuration(uint32_t config) {}
#endif
static inline bool espi_slave_supports_quad_io(uint32_t gen_caps)

View File

@ -115,3 +115,89 @@ void espi_show_slave_general_configuration(uint32_t config)
printk(BIOS_DEBUG, " Flash Access Channel supported\n");
printk(BIOS_DEBUG, "\n");
}
void espi_show_slave_peripheral_channel_configuration(uint32_t config)
{
uint32_t request_size;
uint32_t payload_size;
printk(BIOS_DEBUG, "eSPI Slave Peripheral configuration:\n");
printk(BIOS_DEBUG, " Peripheral Channel Maximum Read Request Size: ");
request_size = config & ESPI_SLAVE_PERIPH_MAX_READ_SIZE_MASK;
switch (request_size) {
case ESPI_SLAVE_PERIPH_MAX_READ_64B:
printk(BIOS_DEBUG, "64 bytes\n");
break;
case ESPI_SLAVE_PERIPH_MAX_READ_128B:
printk(BIOS_DEBUG, "128 bytes\n");
break;
case ESPI_SLAVE_PERIPH_MAX_READ_256B:
printk(BIOS_DEBUG, "256 bytes\n");
break;
case ESPI_SLAVE_PERIPH_MAX_READ_512B:
printk(BIOS_DEBUG, "512 bytes\n");
break;
case ESPI_SLAVE_PERIPH_MAX_READ_1024B:
printk(BIOS_DEBUG, "1024 bytes\n");
break;
case ESPI_SLAVE_PERIPH_MAX_READ_2048B:
printk(BIOS_DEBUG, "2048 bytes\n");
break;
case ESPI_SLAVE_PERIPH_MAX_READ_4096B:
printk(BIOS_DEBUG, "4096 bytes\n");
break;
default:
printk(BIOS_DEBUG, "Unknown\n");
}
printk(BIOS_DEBUG, " Peripheral Channel Maximum Payload Size Selected: ");
payload_size = config & ESPI_SLAVE_PERIPH_MAX_PAYLOAD_SIZE_SEL_MASK;
switch (payload_size) {
case ESPI_SLAVE_PERIPH_MAX_PAYLOAD_SIZE_SEL_64B:
printk(BIOS_DEBUG, "64 bytes\n");
break;
case ESPI_SLAVE_PERIPH_MAX_PAYLOAD_SIZE_SEL_128B:
printk(BIOS_DEBUG, "128 bytes\n");
break;
case ESPI_SLAVE_PERIPH_MAX_PAYLOAD_SIZE_SEL_256B:
printk(BIOS_DEBUG, "256 bytes\n");
break;
default:
printk(BIOS_DEBUG, "Unknown\n");
}
printk(BIOS_DEBUG, " Peripheral Channel Maximum Payload Size Supported: ");
payload_size = config & ESPI_SLAVE_PERIPH_MAX_PAYLOAD_SIZE_SUPP_MASK;
switch (payload_size) {
case ESPI_SLAVE_PERIPH_MAX_PAYLOAD_SIZE_SUPP_64B:
printk(BIOS_DEBUG, "64 bytes\n");
break;
case ESPI_SLAVE_PERIPH_MAX_PAYLOAD_SIZE_SUPP_128B:
printk(BIOS_DEBUG, "128 bytes\n");
break;
case ESPI_SLAVE_PERIPH_MAX_PAYLOAD_SIZE_SUPP_256B:
printk(BIOS_DEBUG, "256 bytes\n");
break;
default:
printk(BIOS_DEBUG, "Unknown\n");
}
printk(BIOS_DEBUG, " Bus master: ");
if (config & ESPI_SLAVE_PERIPH_BUS_MASTER_ENABLE)
printk(BIOS_DEBUG, "enabled\n");
else
printk(BIOS_DEBUG, "disabled\n");
printk(BIOS_DEBUG, " Peripheral Channel: ");
if (config & ESPI_SLAVE_CHANNEL_READY)
printk(BIOS_DEBUG, "ready\n");
else
printk(BIOS_DEBUG, "not ready\n");
printk(BIOS_DEBUG, " Peripheral Channel: ");
if (config & ESPI_SLAVE_CHANNEL_ENABLE)
printk(BIOS_DEBUG, "enabled\n");
else
printk(BIOS_DEBUG, "disabled\n");
}