superio/nuvoton/nct6687d: Add early support for NCT6687D

Based on the public datasheet of NCT6686 which should be similar to
NCT6687D.

TEST=Enable serial for debugging on MSI PRO Z690-A WIFI DDR4 and see
coreboot console on the debug port

Signed-off-by: Michał Żygowski <michal.zygowski@3mdeb.com>
Change-Id: I0e8744b5958af196de3de63de31852029d81436e
Reviewed-on: https://review.coreboot.org/c/coreboot/+/63462
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Arthur Heymans <arthur@aheymans.xyz>
This commit is contained in:
Michał Żygowski 2022-04-07 15:12:26 +02:00 committed by Felix Held
parent d107e810c9
commit 7e3159c3d2
3 changed files with 30 additions and 0 deletions

View File

@ -8,6 +8,7 @@ subdirs-$(CONFIG_SUPERIO_NUVOTON_WPCM450) += wpcm450
subdirs-$(CONFIG_SUPERIO_NUVOTON_NCT5104D) += nct5104d subdirs-$(CONFIG_SUPERIO_NUVOTON_NCT5104D) += nct5104d
subdirs-$(CONFIG_SUPERIO_NUVOTON_NCT5539D) += nct5539d subdirs-$(CONFIG_SUPERIO_NUVOTON_NCT5539D) += nct5539d
subdirs-$(CONFIG_SUPERIO_NUVOTON_NCT5572D) += nct5572d subdirs-$(CONFIG_SUPERIO_NUVOTON_NCT5572D) += nct5572d
subdirs-$(CONFIG_SUPERIO_NUVOTON_NCT6687D) += nct6687d
subdirs-$(CONFIG_SUPERIO_NUVOTON_NCT6776) += nct6776 subdirs-$(CONFIG_SUPERIO_NUVOTON_NCT6776) += nct6776
subdirs-$(CONFIG_SUPERIO_NUVOTON_NCT6779D) += nct6779d subdirs-$(CONFIG_SUPERIO_NUVOTON_NCT6779D) += nct6779d
subdirs-$(CONFIG_SUPERIO_NUVOTON_NCT6791D) += nct6791d subdirs-$(CONFIG_SUPERIO_NUVOTON_NCT6791D) += nct6791d

View File

@ -0,0 +1,5 @@
# SPDX-License-Identifier: GPL-2.0-only
config SUPERIO_NUVOTON_NCT6687D
bool
select SUPERIO_NUVOTON_COMMON_PRE_RAM

View File

@ -0,0 +1,24 @@
/* SPDX-License-Identifier: GPL-2.0-or-later */
/* Both NCT6687DD and NCT6687DF package variants are supported. */
#ifndef SUPERIO_NUVOTON_NCT6687D_H
#define SUPERIO_NUVOTON_NCT6687D_H
/* Logical Device Numbers (LDN). */
#define NCT6687D_PP 0x01 /* Parallel port */
#define NCT6687D_SP1 0x02 /* Com1 */
#define NCT6687D_SP2 0x03 /* Com2 & IR */
#define NCT6687D_KBC 0x05 /* PS/2 keyboard and mouse */
#define NCT6687D_CIR 0x06
#define NCT6687D_GPIO_0_7 0x07 /* GPIO0 - GPIO7 */
#define NCT6687D_P80_UART 0x08 /* Port 0x 80 UART*/
#define NCT6687D_GPIO_8_9_AF 0x09 /* GPIO8 - GPIO9, GPIO1 - GPIO8 Alternate Function */
#define NCT6687D_ACPI 0x0A
#define NCT6687D_EC 0x0B /* EC space*/
#define NCT6687D_RTC 0x0C
#define NCT6687D_SLEEP_PWR 0x0D /* Deep Sleep, Power Fault */
#define NCT6687D_TACH_PWM 0x0E /* TACHIN/PWMOUT Assignment */
#define NCT6687D_FREG 0x0F /* Function Register */
#endif /* SUPERIO_NUVOTON_NCT6687D_H */