blob: 1a147bef65785736a22ec4d4079108cf46e1b76d [file] [log] [blame]
Felix Held3f3eca92020-01-23 17:12:32 +01001/* SPDX-License-Identifier: GPL-2.0-or-later */
Edward O'Callaghanf2920022014-04-27 00:41:50 +10002
Arthur Heymans085a2262019-01-04 16:11:50 +01003#ifndef SUPERIO_ITE_COMMON_PRE_RAM_H
4#define SUPERIO_ITE_COMMON_PRE_RAM_H
Edward O'Callaghanf2920022014-04-27 00:41:50 +10005
Kyösti Mälkki3855c012019-03-03 08:45:19 +02006#include <device/pnp_type.h>
Joel Linna7c96152024-03-26 18:35:15 +01007#include <stdbool.h>
Edward O'Callaghanf2920022014-04-27 00:41:50 +10008#include <stdint.h>
9
10#define ITE_UART_CLK_PREDIVIDE_48 0x00 /* default */
11#define ITE_UART_CLK_PREDIVIDE_24 0x01
12
Edward O'Callaghan85836c22014-07-09 20:26:25 +100013void ite_conf_clkin(pnp_devfn_t dev, u8 predivide);
14void ite_enable_serial(pnp_devfn_t dev, u16 iobase);
Edward O'Callaghanf2920022014-04-27 00:41:50 +100015
16/* Some boards need to init wdt+gpio's very early */
Edward O'Callaghan85836c22014-07-09 20:26:25 +100017void ite_reg_write(pnp_devfn_t dev, u8 reg, u8 value);
Joel Linna7c96152024-03-26 18:35:15 +010018void ite_set_3vsbsw(pnp_devfn_t dev, bool enable);
Michael Büchler6c5f47b2020-08-20 16:06:26 +020019void ite_delay_pwrgd3(pnp_devfn_t dev);
Edward O'Callaghan85836c22014-07-09 20:26:25 +100020void ite_kill_watchdog(pnp_devfn_t dev);
Joel Linnfb516612024-03-29 14:08:35 +010021void ite_ac_resume_southbridge(pnp_devfn_t dev);
Edward O'Callaghanf2920022014-04-27 00:41:50 +100022
Joel Linna7c96152024-03-26 18:35:15 +010023/* Alias for backwards compatibility */
24static inline void ite_enable_3vsbsw(pnp_devfn_t dev) { ite_set_3vsbsw(dev, true); }
25static inline void ite_disable_3vsbsw(pnp_devfn_t dev) { ite_set_3vsbsw(dev, false); }
26
Nico Huber61673652016-10-11 11:56:32 +020027void pnp_enter_conf_state(pnp_devfn_t dev);
28void pnp_exit_conf_state(pnp_devfn_t dev);
29
Arthur Heymans085a2262019-01-04 16:11:50 +010030#endif /* SUPERIO_ITE_COMMON_PRE_RAM_H */