blob: 85ce4e6795011c212b221281dca3c139b7cf2436 [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
166 end
167 end
168 end
169 device pci 18.0 on end # Data fabric [0-7]
170 device pci 18.1 on end
171 device pci 18.2 on end
172 device pci 18.3 on end
173 device pci 18.4 on end
174 device pci 18.5 on end
175 device pci 18.6 on end
176 end # domain
177
178 chip drivers/generic/max98357a
Raul E Rangel19704cd2020-06-02 10:43:20 -0600179 register "hid" = ""MX98357A""
Raul E Rangelb3c41322020-05-20 14:07:41 -0600180 register "sdmode_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPIO_91)"
181 register "sdmode_delay" = "5"
182 device generic 0.1 on end
183 end
184
185 device mmio 0xfedc5000 on
186 chip drivers/i2c/tpm
187 register "hid" = ""GOOG0005""
188 register "desc" = ""Cr50 TPM""
189 register "irq_gpio" = "ACPI_GPIO_IRQ_EDGE_LOW(GPIO_3)"
190 device i2c 50 on end
191 end
192 end
193
Raul E Rangel5e29c0e2020-06-12 11:41:16 -0600194 device mmio 0xfedca000 off end # UART1
195 device mmio 0xfedce000 off end # UART2
196 device mmio 0xfedcf000 off end # UART3
197
Raul E Rangelb3c41322020-05-20 14:07:41 -0600198end # chip soc/amd/picasso