| /* SPDX-License-Identifier: GPL-2.0-only */ |
| |
| #include <bootblock_common.h> |
| #include <soc/gpio.h> |
| #include "gpio.h" |
| |
| #include <superio/nuvoton/common/nuvoton.h> |
| #include <superio/nuvoton/nct6776/nct6776.h> |
| |
| #define SERIAL_DEV PNP_DEV(0x2e, NCT6776_SP1) |
| |
| static void early_config_gpio(void) |
| { |
| /* This is a hack for FSP because it does things in MemoryInit() |
| * which it shouldn't do. We have to prepare certain gpios here |
| * because of the brokenness in FSP. */ |
| gpio_configure_pads(early_gpio_table, ARRAY_SIZE(early_gpio_table)); |
| } |
| |
| void bootblock_mainboard_init(void) |
| { |
| early_config_gpio(); |
| } |
| |
| void bootblock_mainboard_early_init(void) |
| { |
| nuvoton_enable_serial(SERIAL_DEV, CONFIG_TTYS0_BASE); |
| } |