5 #include <baseboard/variants.h>
21 #include <soc/pci_devs.h>
23 #include <variant/ec.h>
24 #include <variant/gpio.h>
39 if (reg == 0xffffffff)
47 static const struct pad_config wifi_wake_gpio[] = {
63 NONE, DEEP, EDGE_BOTH, INVERT, HIZCRx1, DISPUPD);
66 if (table ==
NULL || num == 0)
81 *table = rt5682_gpio_137;
83 "Configure GPIO 137 based on SSFC.\n");
96 size_t base_num, override_num;
107 override_pads, override_num);
122 start_addr = current;
133 if (end_addr != start_addr)
181 struct bus *audio_i2c_bus =
207 cfg->
hid =
"RTL5682";
struct chip_operations mainboard_ops
void acpi_add_table(acpi_rsdp_t *rsdp, void *table)
Add an ACPI table to the RSDT (and XSDT) structure, recalculate length and checksum.
enum ssfc_audio_codec ssfc_get_audio_codec(void)
@ SSFC_AUDIO_CODEC_RT5682_VS
@ SSFC_AUDIO_CODEC_CS42L42
@ SSFC_AUDIO_CODEC_DA7219
@ SSFC_AUDIO_CODEC_RT5682
#define printk(level,...)
BOOT_STATE_INIT_ENTRY(BS_POST_DEVICE, BS_ON_EXIT, sch5545_ec_hwm_init, NULL)
DEVTREE_CONST struct device * pcidev_path_on_root(pci_devfn_t devfn)
DEVTREE_CONST struct device * dev_bus_each_child(const struct bus *parent, DEVTREE_CONST struct device *prev_child)
Given a device and previous match iterate through all the children.
void mainboard_ec_init(void)
uint32_t board_id(void)
board_id() - Get the board version
void variant_nhlt_init(struct nhlt *nhlt)
struct chip_operations drivers_i2c_da7219_ops
struct chip_operations drivers_i2c_generic_ops
static unsigned long mainboard_write_acpi_tables(const struct device *device, unsigned long current, acpi_rsdp_t *rsdp)
static bool is_cnvi_held_in_reset(void)
static void gpio_modification_by_ssfc(struct pad_config *table, size_t num)
static void mainboard_init(void *chip_info)
struct chip_operations drivers_i2c_cs42l42_ops
static void disable_unused_devices(void *unused)
bool __weak variant_ext_usb_status(unsigned int port_type, unsigned int port_id)
variant_ext_usb_status() - Get status of externally visible USB ports @port_type: Type of USB port i....
static void audio_codec_device_update(void)
void __weak variant_update_devtree(struct device *dev)
static void mainboard_enable(struct device *dev)
static void disable_wifi_wake(void)
static void wifi_device_update(void)
void mainboard_devtree_update(struct device *dev)
__weak const struct soc_amd_gpio * variant_override_gpio_table(size_t *size)
static __always_inline u32 pci_read_config32(const struct device *dev, u16 reg)
uintptr_t nhlt_soc_serialize(struct nhlt *nhlt, uintptr_t acpi_addr)
struct nhlt * nhlt_init(void)
#define BIOS_INFO
BIOS_INFO - Expected events.
const struct pad_config *__weak variant_base_gpio_table(size_t *num)
const struct smm_save_state_ops *legacy_ops __weak
void gpio_configure_pads(const struct soc_amd_gpio *gpio_list_ptr, size_t size)
program a particular set of GPIO
void gpio_configure_pads_with_override(const struct soc_amd_gpio *base_cfg, size_t base_num_pads, const struct soc_amd_gpio *override_cfg, size_t override_num_pads)
#define PAD_CFG_GPI_APIC_IOS(pad, pull, rst, trig, inv, iosstate, iosterm)
void usb_xhci_disable_unused(bool(*ext_usb_xhci_en_cb)(unsigned int port_type, unsigned int port_id))
int strcmp(const char *s1, const char *s2)
void(* init)(void *chip_info)
struct chip_operations * chip_ops
struct device_operations * ops
DEVTREE_CONST struct bus * link_list
DEVTREE_CONST void * chip_info