blob: 159665f8b73fd0ca68a1cd62ee0d957d549c9ac8 [file] [log] [blame]
Raul E Rangelb3c41322020-05-20 14:07:41 -06001# SPDX-License-Identifier: GPL-2.0-or-later
2chip soc/amd/picasso
3
4 # Set FADT Configuration
5 register "fadt_pm_profile" = "PM_MOBILE"
6 register "fadt_boot_arch" = "ACPI_FADT_LEGACY_DEVICES | ACPI_FADT_8042"
7 register "fadt_flags" = "ACPI_FADT_WBINVD | /* See table 5-34 ACPI 6.3 spec */
8 ACPI_FADT_C1_SUPPORTED |
9 ACPI_FADT_SLEEP_BUTTON |
10 ACPI_FADT_S4_RTC_WAKE |
11 ACPI_FADT_32BIT_TIMER |
12 ACPI_FADT_RESET_REGISTER |
13 ACPI_FADT_SEALED_CASE |
14 ACPI_FADT_PCI_EXPRESS_WAKE |
15 ACPI_FADT_REMOTE_POWER_ON"
16
17 register "acp_pin_cfg" = "I2S_PINS_I2S_TDM"
18
Furquan Shaikhaee3b148b2020-06-18 22:25:12 -070019 # DMIC select GPIO for ACP machine device
20 # This GPIO is used to select DMIC0 or DMIC1 by the kernel driver. It does not
21 # really have a polarity since low and high control the selection of DMIC and
22 # hence does not have an active polarity.
23 # Kernel driver does not use the polarity field and instead treats the GPIO
24 # selection as follows:
25 # Set low (0) = Select DMIC0
26 # Set high (1) = Select DMIC1
27 register "dmic_select_gpio" = "ACPI_GPIO_OUTPUT(GPIO_67)"
28
Raul E Rangelb3c41322020-05-20 14:07:41 -060029 # Start : OPN Performance Configuration
30 # (Configuratin that is common for all variants)
31 # For the below fields, 0 indicates use SOC default
32
33 # PROCHOT_L de-assertion Ramp Time
34 register "prochot_l_deassertion_ramp_time" = "20" #mS
35
36 # Lower die temperature limit
37 register "thermctl_limit" = "100" #degrees C
38
39 # FP5 Processor Voltage Supply PSI Currents
40 register "psi0_current_limit" = "18000" #mA
41 register "psi0_soc_current_limit" = "12000" #mA
42 register "vddcr_soc_voltage_margin" = "0" #mV
43 register "vddcr_vdd_voltage_margin" = "0" #mV
44
45 # VRM Limits
46 register "vrm_maximum_current_limit" = "0" #mA
47 register "vrm_soc_maximum_current_limit" = "0" #mA
48 register "vrm_current_limit" = "0" #mA
49 register "vrm_soc_current_limit" = "0" #mA
50
51 # Misc SMU settings
52 register "sb_tsi_alert_comparator_mode_en" = "0"
53 register "core_dldo_bypass" = "1"
54 register "min_soc_vid_offset" = "0"
55 register "aclk_dpm0_freq_400MHz" = "0"
56
57 # End : OPN Performance Configuration
58
59 register "sd_emmc_config" = "SD_EMMC_EMMC_HS400"
60
Lucas Chenc1bb32f2020-05-26 19:31:48 +080061 register "xhci0_force_gen1" = "0"
62
Raul E Rangelb3c41322020-05-20 14:07:41 -060063 # SPI Configuration
64 register "common_config.spi_config" = "{
65 .normal_speed = SPI_SPEED_66M, /* MHz */
66 .fast_speed = SPI_SPEED_66M, /* MHz */
67 .altio_speed = SPI_SPEED_66M, /* MHz */
68 .tpm_speed = SPI_SPEED_66M, /* MHz */
69 .read_mode = SPI_READ_MODE_DUAL112,
70 }"
71
72 # eSPI Configuration
73 register "common_config.espi_config" = "{
74 .std_io_decode_bitmap = ESPI_DECODE_IO_0x80_EN | ESPI_DECODE_IO_0X60_0X64_EN,
75 .generic_io_range[0] = {
76 .base = 0x62,
77 /*
78 * Only 0x62 and 0x66 are required. But, this is not supported by
79 * standard IO decodes and there are only 4 generic I/O windows
80 * available. Hence, open a window from 0x62-0x67.
81 */
82 .size = 5,
83 },
84 .generic_io_range[1] = {
85 .base = 0x800, /* EC_HOST_CMD_REGION0 */
86 .size = 256, /* EC_HOST_CMD_REGION_SIZE * 2 */
87 },
88 .generic_io_range[2] = {
89 .base = 0x900, /* EC_LPC_ADDR_MEMMAP */
90 .size = 255, /* EC_MEMMAP_SIZE */
91 },
92 .generic_io_range[3] = {
93 .base = 0x200, /* EC_LPC_ADDR_HOST_DATA */
94 .size = 8, /* 0x200 - 0x207 */
95 },
96
97 .io_mode = ESPI_IO_MODE_QUAD,
98 .op_freq_mhz = ESPI_OP_FREQ_33_MHZ,
99 .crc_check_enable = 1,
100 .dedicated_alert_pin = 1,
101 .periph_ch_en = 1,
102 .vw_ch_en = 1,
103 .oob_ch_en = 0,
104 .flash_ch_en = 0,
105
Aaron Durbin76fcf8292020-07-02 11:08:21 -0600106 .vw_irq_polarity = ESPI_VW_IRQ_LEVEL_HIGH(1) | ESPI_VW_IRQ_LEVEL_HIGH(12),
Raul E Rangelb3c41322020-05-20 14:07:41 -0600107 }"
108
109 register "i2c_scl_reset" = "GPIO_I2C2_SCL | GPIO_I2C3_SCL"
110
Raul E Rangelb3c41322020-05-20 14:07:41 -0600111 device cpu_cluster 0 on
112 device lapic 0 on end
113 end
114
115 # See AMD 55570-B1 Table 13: PCI Device ID Assignments.
116 device domain 0 on
117 subsystemid 0x1022 0x1510 inherit
118 device pci 0.0 on end # Root Complex
119 device pci 0.2 on end # IOMMU
120 device pci 1.0 on end # Dummy Host Bridge, must be enabled
121 device pci 1.1 off end # GPP Bridge 0
122 device pci 1.2 on end # GPP Bridge 1 - Wifi
123 device pci 1.3 on end # GPP Bridge 2 - SD
124 device pci 1.4 off end # GPP Bridge 3
125 device pci 1.5 off end # GPP Bridge 4
126 device pci 8.0 on end # Dummy Host Bridge, must be enabled
127 device pci 8.1 on # Internal GPP Bridge 0 to Bus A
128 device pci 0.0 on end # Internal GPU
129 device pci 0.1 on end # Display HDA
130 device pci 0.2 on end # Crypto Coprocesor
131 device pci 0.5 on end # Audio
132 device pci 0.6 on end # HDA
133 device pci 0.7 on end # non-Sensor Fusion Hub device
134 end
135 device pci 8.2 on # Internal GPP Bridge 0 to Bus B
136 device pci 0.0 on end # AHCI
137 end
138 device pci 14.0 on end # SM
139 device pci 14.3 on # - D14F3 bridge
140 chip ec/google/chromeec
141 device pnp 0c09.0 on
142 chip ec/google/chromeec/i2c_tunnel
143 register "uid" = "1"
144 register "remote_bus" = "8"
145 device generic 0.0 on
146 chip drivers/i2c/generic
147 register "hid" = ""10EC5682""
148 register "name" = ""RT58""
149 register "uid" = "1"
150 register "desc" = ""Realtek RT5682""
151 register "irq_gpio" = "ACPI_GPIO_IRQ_EDGE_BOTH(62)"
152 register "property_count" = "1"
153 register "property_list[0].type" = "ACPI_DP_TYPE_INTEGER"
154 register "property_list[0].name" = ""realtek,jd-src""
155 register "property_list[0].integer" = "1"
156 device i2c 1a on end
157 end
158 end
159 end
160 chip ec/google/chromeec/i2c_tunnel
161 register "name" = ""MSTH""
162 register "uid" = "1"
163 register "remote_bus" = "9"
164 device generic 1.0 on end
165 end
Furquan Shaikhe284bff2020-07-02 16:03:06 -0700166 chip ec/google/chromeec/audio_codec
167 register "uid" = "1"
168 device generic 0 on end
169 end
Raul E Rangelb3c41322020-05-20 14:07:41 -0600170 end
171 end
172 end
173 device pci 18.0 on end # Data fabric [0-7]
174 device pci 18.1 on end
175 device pci 18.2 on end
176 device pci 18.3 on end
177 device pci 18.4 on end
178 device pci 18.5 on end
179 device pci 18.6 on end
180 end # domain
181
182 chip drivers/generic/max98357a
Raul E Rangel19704cd2020-06-02 10:43:20 -0600183 register "hid" = ""MX98357A""
Raul E Rangelb3c41322020-05-20 14:07:41 -0600184 register "sdmode_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPIO_91)"
185 register "sdmode_delay" = "5"
186 device generic 0.1 on end
187 end
188
189 device mmio 0xfedc5000 on
190 chip drivers/i2c/tpm
191 register "hid" = ""GOOG0005""
192 register "desc" = ""Cr50 TPM""
193 register "irq_gpio" = "ACPI_GPIO_IRQ_EDGE_LOW(GPIO_3)"
194 device i2c 50 on end
195 end
196 end
197
Raul E Rangel5e29c0e2020-06-12 11:41:16 -0600198 device mmio 0xfedca000 off end # UART1
199 device mmio 0xfedce000 off end # UART2
200 device mmio 0xfedcf000 off end # UART3
201
Raul E Rangelb3c41322020-05-20 14:07:41 -0600202end # chip soc/amd/picasso