| .. | .. |
|---|
| 13 | 13 | #include <sound/soc.h> |
|---|
| 14 | 14 | #include <sound/soc-acpi.h> |
|---|
| 15 | 15 | #include "sof_sdw_common.h" |
|---|
| 16 | +#include "../../codecs/rt711.h" |
|---|
| 16 | 17 | |
|---|
| 17 | | -unsigned long sof_sdw_quirk = SOF_RT711_JD_SRC_JD1; |
|---|
| 18 | +unsigned long sof_sdw_quirk = RT711_JD1; |
|---|
| 18 | 19 | static int quirk_override = -1; |
|---|
| 19 | 20 | module_param_named(quirk, quirk_override, int, 0444); |
|---|
| 20 | 21 | MODULE_PARM_DESC(quirk, "Board-specific quirk override"); |
|---|
| .. | .. |
|---|
| 63 | 64 | DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc"), |
|---|
| 64 | 65 | DMI_EXACT_MATCH(DMI_PRODUCT_SKU, "09C6") |
|---|
| 65 | 66 | }, |
|---|
| 66 | | - .driver_data = (void *)(SOF_RT711_JD_SRC_JD2 | |
|---|
| 67 | + .driver_data = (void *)(RT711_JD2 | |
|---|
| 67 | 68 | SOF_RT715_DAI_ID_FIX), |
|---|
| 68 | 69 | }, |
|---|
| 69 | 70 | { |
|---|
| .. | .. |
|---|
| 73 | 74 | DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc"), |
|---|
| 74 | 75 | DMI_EXACT_MATCH(DMI_PRODUCT_SKU, "0983") |
|---|
| 75 | 76 | }, |
|---|
| 76 | | - .driver_data = (void *)(SOF_RT711_JD_SRC_JD2 | |
|---|
| 77 | + .driver_data = (void *)(RT711_JD2 | |
|---|
| 77 | 78 | SOF_RT715_DAI_ID_FIX), |
|---|
| 78 | 79 | }, |
|---|
| 79 | 80 | { |
|---|
| .. | .. |
|---|
| 82 | 83 | DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc"), |
|---|
| 83 | 84 | DMI_EXACT_MATCH(DMI_PRODUCT_SKU, "098F"), |
|---|
| 84 | 85 | }, |
|---|
| 85 | | - .driver_data = (void *)(SOF_RT711_JD_SRC_JD2 | |
|---|
| 86 | + .driver_data = (void *)(RT711_JD2 | |
|---|
| 86 | 87 | SOF_RT715_DAI_ID_FIX | |
|---|
| 87 | 88 | SOF_SDW_FOUR_SPK), |
|---|
| 88 | 89 | }, |
|---|
| .. | .. |
|---|
| 92 | 93 | DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc"), |
|---|
| 93 | 94 | DMI_EXACT_MATCH(DMI_PRODUCT_SKU, "0990"), |
|---|
| 94 | 95 | }, |
|---|
| 95 | | - .driver_data = (void *)(SOF_RT711_JD_SRC_JD2 | |
|---|
| 96 | + .driver_data = (void *)(RT711_JD2 | |
|---|
| 96 | 97 | SOF_RT715_DAI_ID_FIX | |
|---|
| 97 | 98 | SOF_SDW_FOUR_SPK), |
|---|
| 98 | 99 | }, |
|---|
| .. | .. |
|---|
| 114 | 115 | "Tiger Lake Client Platform"), |
|---|
| 115 | 116 | }, |
|---|
| 116 | 117 | .driver_data = (void *)(SOF_SDW_TGL_HDMI | |
|---|
| 117 | | - SOF_RT711_JD_SRC_JD1 | |
|---|
| 118 | + RT711_JD1 | |
|---|
| 118 | 119 | SOF_SDW_PCH_DMIC | |
|---|
| 119 | 120 | SOF_SSP_PORT(SOF_I2S_SSP2)), |
|---|
| 120 | 121 | }, |
|---|
| .. | .. |
|---|
| 125 | 126 | DMI_EXACT_MATCH(DMI_PRODUCT_SKU, "0A3E") |
|---|
| 126 | 127 | }, |
|---|
| 127 | 128 | .driver_data = (void *)(SOF_SDW_TGL_HDMI | |
|---|
| 128 | | - SOF_RT711_JD_SRC_JD2 | |
|---|
| 129 | + RT711_JD2 | |
|---|
| 129 | 130 | SOF_RT715_DAI_ID_FIX), |
|---|
| 130 | 131 | }, |
|---|
| 131 | 132 | { |
|---|
| .. | .. |
|---|
| 135 | 136 | DMI_EXACT_MATCH(DMI_PRODUCT_SKU, "0A5E") |
|---|
| 136 | 137 | }, |
|---|
| 137 | 138 | .driver_data = (void *)(SOF_SDW_TGL_HDMI | |
|---|
| 138 | | - SOF_RT711_JD_SRC_JD2 | |
|---|
| 139 | + RT711_JD2 | |
|---|
| 139 | 140 | SOF_RT715_DAI_ID_FIX | |
|---|
| 140 | 141 | SOF_SDW_FOUR_SPK), |
|---|
| 141 | 142 | }, |
|---|
| .. | .. |
|---|
| 173 | 174 | }, |
|---|
| 174 | 175 | .driver_data = (void *)(SOF_SDW_TGL_HDMI | |
|---|
| 175 | 176 | SOF_SDW_PCH_DMIC | |
|---|
| 176 | | - SOF_RT711_JD_SRC_JD2), |
|---|
| 177 | + RT711_JD2), |
|---|
| 177 | 178 | }, |
|---|
| 178 | 179 | /* TigerLake-SDCA devices */ |
|---|
| 179 | 180 | { |
|---|
| .. | .. |
|---|
| 183 | 184 | DMI_EXACT_MATCH(DMI_PRODUCT_SKU, "0A32") |
|---|
| 184 | 185 | }, |
|---|
| 185 | 186 | .driver_data = (void *)(SOF_SDW_TGL_HDMI | |
|---|
| 186 | | - SOF_RT711_JD_SRC_JD2 | |
|---|
| 187 | + RT711_JD2 | |
|---|
| 187 | 188 | SOF_RT715_DAI_ID_FIX | |
|---|
| 188 | 189 | SOF_SDW_FOUR_SPK), |
|---|
| 189 | 190 | }, |
|---|
| .. | .. |
|---|
| 194 | 195 | DMI_MATCH(DMI_SYS_VENDOR, "Intel Corporation"), |
|---|
| 195 | 196 | DMI_MATCH(DMI_PRODUCT_NAME, "Alder Lake Client Platform"), |
|---|
| 196 | 197 | }, |
|---|
| 197 | | - .driver_data = (void *)(SOF_RT711_JD_SRC_JD1 | |
|---|
| 198 | + .driver_data = (void *)(RT711_JD1 | |
|---|
| 198 | 199 | SOF_SDW_TGL_HDMI | |
|---|
| 199 | 200 | SOF_RT715_DAI_ID_FIX | |
|---|
| 200 | 201 | SOF_SDW_PCH_DMIC), |
|---|
| 201 | 202 | }, |
|---|
| 203 | + { |
|---|
| 204 | + .callback = sof_sdw_quirk_cb, |
|---|
| 205 | + .matches = { |
|---|
| 206 | + DMI_MATCH(DMI_SYS_VENDOR, "Intel Corporation"), |
|---|
| 207 | + DMI_MATCH(DMI_PRODUCT_NAME, "Meteor Lake Client Platform"), |
|---|
| 208 | + }, |
|---|
| 209 | + .driver_data = (void *)(RT711_JD2_100K), |
|---|
| 210 | + }, |
|---|
| 211 | + { |
|---|
| 212 | + .callback = sof_sdw_quirk_cb, |
|---|
| 213 | + .matches = { |
|---|
| 214 | + DMI_MATCH(DMI_SYS_VENDOR, "Google"), |
|---|
| 215 | + DMI_MATCH(DMI_PRODUCT_NAME, "Rex"), |
|---|
| 216 | + }, |
|---|
| 217 | + .driver_data = (void *)(SOF_SDW_PCH_DMIC), |
|---|
| 218 | + }, |
|---|
| 219 | + /* LunarLake devices */ |
|---|
| 220 | + { |
|---|
| 221 | + .callback = sof_sdw_quirk_cb, |
|---|
| 222 | + .matches = { |
|---|
| 223 | + DMI_MATCH(DMI_SYS_VENDOR, "Intel Corporation"), |
|---|
| 224 | + DMI_MATCH(DMI_PRODUCT_NAME, "Lunar Lake Client Platform"), |
|---|
| 225 | + }, |
|---|
| 226 | + .driver_data = (void *)(RT711_JD2_100K), |
|---|
| 227 | + }, |
|---|
| 202 | 228 | {} |
|---|
| 203 | 229 | }; |
|---|
| 204 | 230 | |
|---|