| # SPDX-License-Identifier: GPL-2.0-or-later |
| fw_config |
| field AUDIO_CODEC_SOURCE 36 37 |
| option AUDIO_CODEC_ALC5682 0 |
| option AUDIO_CODEC_ALC5682I_VS 1 |
| end |
| end |
| |
| chip soc/amd/picasso |
| |
| # Start : OPN Performance Configuration |
| # See devhub #56670 Chapter 5 for documentation |
| # For the below fields, 0 indicates use SOC default |
| |
| # System config index |
| register "system_config" = "1" |
| |
| # Set STAPM confiuration. All of these fields must be set >0 to take affect |
| register "slow_ppt_limit_mW" = "6000" |
| register "fast_ppt_limit_mW" = "9000" |
| register "slow_ppt_time_constant_s" = "5" |
| register "stapm_time_constant_s" = "1400" |
| register "sustained_power_limit_mW" = "4800" |
| |
| register "telemetry_vddcr_vdd_slope_mA" = "41322" |
| register "telemetry_vddcr_vdd_offset" = "-25" |
| register "telemetry_vddcr_soc_slope_mA" = "43440" |
| register "telemetry_vddcr_soc_offset" = "115" |
| # End : OPN Performance Configuration |
| |
| # USB 2.0 strength - MB type-C C0 |
| register "usb_2_port_tune_params[0]" = "{ |
| .com_pds_tune = 0x07, |
| .sq_rx_tune = 0x3, |
| .tx_fsls_tune = 0x3, |
| .tx_pre_emp_amp_tune = 0x03, |
| .tx_pre_emp_pulse_tune = 0x0, |
| .tx_rise_tune = 0x1, |
| .tx_vref_tune = 0xe, |
| .tx_hsxv_tune = 0x3, |
| .tx_res_tune = 0x01, |
| }" |
| |
| # USB 2.0 strength - DB type-A |
| register "usb_2_port_tune_params[2]" = "{ |
| .com_pds_tune = 0x07, |
| .sq_rx_tune = 0x3, |
| .tx_fsls_tune = 0x3, |
| .tx_pre_emp_amp_tune = 0x03, |
| .tx_pre_emp_pulse_tune = 0x0, |
| .tx_rise_tune = 0x0, |
| .tx_vref_tune = 0xe, |
| .tx_hsxv_tune = 0x3, |
| .tx_res_tune = 0x01, |
| }" |
| |
| # USB 2.0 strength - DB type-C C1 |
| register "usb_2_port_tune_params[3]" = "{ |
| .com_pds_tune = 0x07, |
| .sq_rx_tune = 0x3, |
| .tx_fsls_tune = 0x3, |
| .tx_pre_emp_amp_tune = 0x03, |
| .tx_pre_emp_pulse_tune = 0x0, |
| .tx_rise_tune = 0x0, |
| .tx_vref_tune = 0xe, |
| .tx_hsxv_tune = 0x3, |
| .tx_res_tune = 0x01, |
| }" |
| |
| # USB3 phy parameter |
| register "usb3_phy_override" = "1" |
| |
| # USB3 Port0 Default |
| register "usb3_phy_tune_params[0]" = "{ |
| .rx_eq_delta_iq_ovrd_val = 0x8, |
| .rx_eq_delta_iq_ovrd_en = 0x1, |
| }" |
| |
| # SUP_DIG_LVL_OVRD_IN Default |
| register "usb3_rx_vref_ctrl" = "0x10" |
| register "usb3_rx_vref_ctrl_en" = "0x00" |
| register "usb_3_tx_vboost_lvl" = "0x07" |
| register "usb_3_tx_vboost_lvl_en" = "0x01" |
| |
| # SUPX_DIG_LVL_OVRD_IN Default |
| register "usb_3_rx_vref_ctrl_x" = "0x10" |
| register "usb_3_rx_vref_ctrl_en_x" = "0x00" |
| register "usb_3_tx_vboost_lvl_x" = "0x07" |
| register "usb_3_tx_vboost_lvl_en_x" = "0x01" |
| |
| # I2C2 for touchscreen and trackpad |
| register "i2c[2]" = "{ |
| .speed = I2C_SPEED_FAST, |
| .rise_time_ns = 18, /* 0 to 2.31 (3.3 * .7) */ |
| .fall_time_ns = 57, /* 2.31 to 0 */ |
| }" |
| |
| # I2C3 for H1 |
| register "i2c[3]" = "{ |
| .speed = I2C_SPEED_FAST, |
| .rise_time_ns = 98, /* 0 to 1.26v (1.8 * .7) */ |
| .fall_time_ns = 17, /* 1.26v to 0 */ |
| .early_init = true, |
| }" |
| |
| register "emmc_config" = "{ |
| .timing = SD_EMMC_EMMC_HS400, |
| .sdr104_hs400_driver_strength = SD_EMMC_DRIVE_STRENGTH_A, |
| .init_khz_preset = 400, |
| }" |
| |
| # See AMD 55570-B1 Table 13: PCI Device ID Assignments. |
| device domain 0 on |
| subsystemid 0x1022 0x1510 inherit |
| device pci 8.1 on |
| device pci 0.5 on |
| chip drivers/amd/i2s_machine_dev |
| register "hid" = ""AMDI5682"" |
| # DMIC select GPIO for ACP machine device |
| # This GPIO is used to select DMIC0 or DMIC1 by the |
| # kernel driver. It does not really have a polarity |
| # since low and high control the selection of DMIC and |
| # hence does not have an active polarity. |
| # Kernel driver does not use the polarity field and |
| # instead treats the GPIO selection as follows: |
| # Set low (0) = Select DMIC0 |
| # Set high (1) = Select DMIC1 |
| register "dmic_select_gpio" = "ACPI_GPIO_OUTPUT(GPIO_67)" |
| device generic 0.0 on |
| probe AUDIO_CODEC_SOURCE AUDIO_CODEC_ALC5682 |
| end |
| end |
| chip drivers/amd/i2s_machine_dev |
| register "hid" = ""10029835"" |
| # DMIC select GPIO for ACP machine device |
| # This GPIO is used to select DMIC0 or DMIC1 by the |
| # kernel driver. It does not really have a polarity |
| # since low and high control the selection of DMIC and |
| # hence does not have an active polarity. |
| # Kernel driver does not use the polarity field and |
| # instead treats the GPIO selection as follows: |
| # Set low (0) = Select DMIC0 |
| # Set high (1) = Select DMIC1 |
| register "dmic_select_gpio" = "ACPI_GPIO_OUTPUT(GPIO_67)" |
| device generic 1.0 on |
| probe AUDIO_CODEC_SOURCE AUDIO_CODEC_ALC5682I_VS |
| end |
| end |
| end # Audio |
| end |
| device pci 14.3 on |
| chip ec/google/chromeec |
| device pnp 0c09.0 on |
| chip ec/google/chromeec/i2c_tunnel |
| device generic 0.0 on |
| chip drivers/i2c/generic |
| register "hid" = ""10EC5682"" |
| register "name" = ""RT58"" |
| register "uid" = "1" |
| register "desc" = ""Realtek RT5682"" |
| register "irq_gpio" = "ACPI_GPIO_IRQ_EDGE_BOTH(GPIO_84)" |
| register "property_count" = "2" |
| register "property_list[0].type" = "ACPI_DP_TYPE_INTEGER" |
| register "property_list[0].name" = ""realtek,jd-src"" |
| register "property_list[0].integer" = "1" |
| register "property_list[1].type" = "ACPI_DP_TYPE_STRING" |
| register "property_list[1].name" = ""realtek,mclk-name"" |
| register "property_list[1].string" = ""oscout1"" |
| device i2c 1a on end |
| end |
| probe AUDIO_CODEC_SOURCE AUDIO_CODEC_ALC5682 |
| end |
| device generic 1.0 on |
| chip drivers/i2c/generic |
| register "hid" = ""RTL5682"" |
| register "name" = ""RT58"" |
| register "uid" = "1" |
| register "desc" = ""Realtek RT5682"" |
| register "irq_gpio" = "ACPI_GPIO_IRQ_EDGE_BOTH(GPIO_84)" |
| register "property_count" = "2" |
| register "property_list[0].type" = "ACPI_DP_TYPE_INTEGER" |
| register "property_list[0].name" = ""realtek,jd-src"" |
| register "property_list[0].integer" = "1" |
| register "property_list[1].type" = "ACPI_DP_TYPE_STRING" |
| register "property_list[1].name" = ""realtek,mclk-name"" |
| register "property_list[1].string" = ""oscout1"" |
| device i2c 1a on end |
| end |
| probe AUDIO_CODEC_SOURCE AUDIO_CODEC_ALC5682I_VS |
| end |
| end |
| end |
| end |
| end |
| end # domain |
| |
| device ref i2c_2 on |
| chip drivers/i2c/generic |
| register "hid" = ""ELAN0000"" |
| register "desc" = ""ELAN Touchpad"" |
| register "irq_gpio" = "ACPI_GPIO_IRQ_LEVEL_LOW(GPIO_9)" |
| register "wake" = "GEVENT_22" |
| register "detect" = "1" |
| device i2c 15 on end |
| end |
| chip drivers/i2c/generic |
| register "hid" = ""ELAN0001"" |
| register "desc" = ""ELAN Touchscreen"" |
| register "detect" = "1" |
| register "irq_gpio" = "ACPI_GPIO_IRQ_LEVEL_LOW(GPIO_12)" |
| register "enable_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPIO_32)" |
| register "enable_delay_ms" = "1" |
| register "reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPIO_140)" |
| register "reset_delay_ms" = "20" |
| register "stop_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPIO_144)" |
| register "stop_off_delay_ms" = "1" |
| register "has_power_resource" = "1" |
| device i2c 10 on end |
| end |
| chip drivers/i2c/hid |
| register "generic.hid" = ""GTCH7503"" |
| register "generic.desc" = ""G2TOUCH Touchscreen"" |
| register "generic.irq_gpio" = "ACPI_GPIO_IRQ_LEVEL_LOW(GPIO_12)" |
| register "generic.detect" = "1" |
| register "generic.enable_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPIO_32)" |
| register "generic.enable_delay_ms" = "1" |
| register "generic.reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPIO_140)" |
| register "generic.reset_delay_ms" = "50" |
| register "generic.has_power_resource" = "1" |
| register "hid_desc_reg_offset" = "0x01" |
| device i2c 40 on end |
| end |
| end |
| |
| chip drivers/generic/max98357a |
| register "hid" = ""MX98357A"" |
| register "sdmode_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPIO_91)" |
| register "sdmode_delay" = "5" |
| device generic 0.1 on end |
| end |
| end # chip soc/amd/picasso |