![]() |
coreboot
coreboot is an Open Source project aimed at replacing the proprietary BIOS found in most computers.
|
#include <acpi/acpi_device.h>
#include <acpi/acpigen.h>
#include <acpi/acpigen_pci.h>
#include <console/console.h>
#include <device/pci_ids.h>
#include <sar.h>
#include <stdlib.h>
#include <wrdd.h>
#include "chip.h"
#include "wifi.h"
#include "wifi_private.h"
Go to the source code of this file.
Macros | |
#define | DOMAIN_TYPE_WIFI 0x7 |
#define | MAX_DSM_FUNCS 2 |
#define | WIFI_ACPI_NAME_MAX_LEN 5 |
#define | ACPI_DSM_OEM_WIFI_UUID "F21202BF-8F78-4DC6-A5B3-1F738E285ADE" |
#define | ACPI_DSD_DMA_PROPERTY_UUID "70D24161-6DD5-4C9E-8070-705531292865" |
#define | ACPI_DSM_RFIM_WIFI_UUID "7266172C-220B-4B29-814F-75E4DD26B5FD" |
Variables | |
static void(* | wifi_dsm_callbacks [])(void *) |
static void(* | wifi_dsm2_callbacks [])(void *) |
#define ACPI_DSD_DMA_PROPERTY_UUID "70D24161-6DD5-4C9E-8070-705531292865" |
#define ACPI_DSM_OEM_WIFI_UUID "F21202BF-8F78-4DC6-A5B3-1F738E285ADE" |
#define ACPI_DSM_RFIM_WIFI_UUID "7266172C-220B-4B29-814F-75E4DD26B5FD" |
|
static |
Definition at line 489 of file acpi.c.
References BIOS_ERR, DEVICE_PATH_PCI, wifi_sar_limits::dsm, free(), get_wifi_sar_limits(), memcpy(), NULL, device::path, PCI_VID_INTEL, wifi_sar_limits::ppag, printk, wifi_sar_limits::sar, sar_emit_ewrd(), sar_emit_ppag(), sar_emit_wgds(), sar_emit_wrds(), sar_emit_wtas(), device_path::type, device::vendor, wifi_sar_limits::wgds, and wifi_sar_limits::wtas.
Referenced by wifi_ssdt_write_properties().
__weak int get_wifi_sar_limits | ( | union wifi_sar_limits * | sar_limits | ) |
Definition at line 39 of file acpi.c.
Referenced by emit_sar_acpi_structures().
|
static |
Definition at line 212 of file acpi.c.
References gain_profile::bands_count, and gain_profile::ppag_table.
Referenced by sar_emit_ppag().
|
static |
Definition at line 262 of file acpi.c.
References acpigen_write_byte(), acpigen_write_dword(), acpigen_write_name(), acpigen_write_package(), acpigen_write_package_end(), BIOS_ERR, BIOS_WARNING, sar_profile::chains_count, DOMAIN_TYPE_WIFI, sar_profile::dsar_set_count, MAX_DSAR_SET_COUNT, MAX_SAR_REVISION, NULL, printk, sar_profile::revision, sar_fetch_set(), and sar_profile::subbands_count.
Referenced by emit_sar_acpi_structures().
|
static |
Definition at line 393 of file acpi.c.
References acpigen_write_byte(), acpigen_write_dword(), acpigen_write_name(), acpigen_write_package(), acpigen_write_package_end(), gain_profile::bands_count, BIOS_ERR, gain_profile::chains_count, DOMAIN_TYPE_WIFI, MAX_ANT_GAINS_REVISION, gain_profile::mode, NULL, ppag_fetch_set(), printk, and gain_profile::revision.
Referenced by emit_sar_acpi_structures().
|
static |
Definition at line 323 of file acpi.c.
References acpigen_write_byte(), acpigen_write_dword(), acpigen_write_name(), acpigen_write_package(), acpigen_write_package_end(), geo_profile::bands_count, BIOS_ERR, geo_profile::chains_count, DOMAIN_TYPE_WIFI, MAX_GEO_OFFSET_REVISION, NULL, printk, geo_profile::revision, and wgds_fetch_set().
Referenced by emit_sar_acpi_structures().
|
static |
Definition at line 219 of file acpi.c.
References acpigen_write_byte(), acpigen_write_dword(), acpigen_write_name(), acpigen_write_package(), acpigen_write_package_end(), BIOS_ERR, sar_profile::chains_count, DOMAIN_TYPE_WIFI, MAX_SAR_REVISION, NULL, printk, sar_profile::revision, sar_fetch_set(), and sar_profile::subbands_count.
Referenced by emit_sar_acpi_structures().
|
static |
Definition at line 437 of file acpi.c.
References acpigen_write_byte(), acpigen_write_dword(), acpigen_write_name(), acpigen_write_package(), acpigen_write_package_end(), acpigen_write_word(), avg_profile::deny_list_entry, DOMAIN_TYPE_WIFI, MAX_DENYLIST_ENTRY, NULL, avg_profile::revision, avg_profile::tas_list_size, and avg_profile::tas_selection.
Referenced by emit_sar_acpi_structures().
|
static |
Definition at line 198 of file acpi.c.
References sar_profile::chains_count, sar_profile::sar_table, and sar_profile::subbands_count.
Referenced by sar_emit_ewrd(), and sar_emit_wrds().
|
static |
Definition at line 205 of file acpi.c.
References geo_profile::bands_count, and geo_profile::wgds_table.
Referenced by sar_emit_wgds().
Definition at line 644 of file acpi.c.
References acpi_device_path(), device::bus, bus::dev, device::path, and wifi_ssdt_write_properties().
Definition at line 155 of file acpi.c.
References acpigen_write_return_integer().
Definition at line 72 of file acpi.c.
References acpigen_write_return_integer(), args, and dsm_profile::support_indonesia_5g_band.
Definition at line 99 of file acpi.c.
References acpigen_write_return_integer(), args, and dsm_profile::regulatory_configurations.
Definition at line 59 of file acpi.c.
References acpigen_write_return_integer(), args, and dsm_profile::disable_active_sdr_channels.
Definition at line 89 of file acpi.c.
References acpigen_write_return_integer(), args, and dsm_profile::support_ultra_high_band.
Definition at line 109 of file acpi.c.
References acpigen_write_return_integer(), args, and dsm_profile::uart_configurations.
Definition at line 138 of file acpi.c.
References acpigen_write_return_integer(), args, and dsm_profile::enablement_11ax.
Definition at line 148 of file acpi.c.
References acpigen_write_return_integer(), args, and dsm_profile::unii_4.
void wifi_emit_dsm | ( | struct dsm_profile * | dsm | ) |
Definition at line 183 of file acpi.c.
References ACPI_DSM_OEM_WIFI_UUID, acpigen_write_dsm(), ARRAY_SIZE, count, NULL, dsm_profile::supported_functions, and wifi_dsm_callbacks.
const char* wifi_pcie_acpi_name | ( | const struct device * | dev | ) |
Definition at line 634 of file acpi.c.
References dev_path_encode(), snprintf(), and WIFI_ACPI_NAME_MAX_LEN.
Definition at line 620 of file acpi.c.
References acpi_device_path(), bus::children, DEVICE_PATH_GENERIC, device::link_list, device::path, device_path::type, wifi_ssdt_write_device(), and wifi_ssdt_write_properties().
Definition at line 519 of file acpi.c.
References acpi_device_write_uid(), acpigen_pop_len(), acpigen_write_ADR_pci_device(), acpigen_write_device(), acpigen_write_name_string(), device::chip_ops, and chip_operations::name.
Referenced by wifi_pcie_fill_ssdt().
Definition at line 534 of file acpi.c.
References acpi_dp_add_integer(), acpi_dp_add_package(), acpi_dp_new_table(), acpi_dp_write(), ACPI_DSD_DMA_PROPERTY_UUID, ACPI_DSM_OEM_WIFI_UUID, ACPI_DSM_RFIM_WIFI_UUID, ACPI_S3, acpigen_pop_len(), acpigen_write_dsm_uuid_arr(), acpigen_write_dword(), acpigen_write_integer(), acpigen_write_name(), acpigen_write_package(), acpigen_write_PRW(), acpigen_write_scope(), dsm_uuid::arg, ARRAY_SIZE, BIOS_INFO, dsm_uuid::callbacks, device::chip_info, device::chip_ops, config, CONFIG, dsm_uuid::count, dev_path(), DEVICE_PATH_GENERIC, DOMAIN_TYPE_WIFI, emit_sar_acpi_structures(), MAX_DSM_FUNCS, chip_operations::name, NULL, device::path, printk, dsm_profile::supported_functions, device_path::type, dsm_uuid::uuid, wifi_dsm2_callbacks, wifi_dsm_callbacks, wifi_regulatory_domain(), and WRDD_REVISION.
Referenced by wifi_cnvi_fill_ssdt(), and wifi_pcie_fill_ssdt().
Definition at line 161 of file acpi.c.
Referenced by wifi_emit_dsm(), and wifi_ssdt_write_properties().