Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

ASoC: Intel: add support for new devices

Merge series from Bard Liao <yung-chuan.liao@linux.intel.com>:

Add support for new devices on Intel platforms.

+94
+10
sound/soc/intel/boards/sof_es8336.c
··· 826 826 SOF_ES8336_SPEAKERS_EN_GPIO1_QUIRK | 827 827 SOF_ES8336_JD_INVERTED), 828 828 }, 829 + { 830 + .name = "ptl_es83x6_c1_h02", 831 + .driver_data = (kernel_ulong_t)(SOF_ES8336_SSP_CODEC(1) | 832 + SOF_NO_OF_HDMI_CAPTURE_SSP(2) | 833 + SOF_HDMI_CAPTURE_1_SSP(0) | 834 + SOF_HDMI_CAPTURE_2_SSP(2) | 835 + SOF_SSP_HDMI_CAPTURE_PRESENT | 836 + SOF_ES8336_SPEAKERS_EN_GPIO1_QUIRK | 837 + SOF_ES8336_JD_INVERTED), 838 + }, 829 839 { } 830 840 }; 831 841 MODULE_DEVICE_TABLE(platform, board_ids);
+34
sound/soc/intel/common/soc-acpi-intel-lnl-match.c
··· 419 419 } 420 420 }; 421 421 422 + static const struct snd_soc_acpi_adr_device rt1320_2_group2_adr[] = { 423 + { 424 + .adr = 0x000231025D132001ull, 425 + .num_endpoints = 1, 426 + .endpoints = &spk_r_endpoint, 427 + .name_prefix = "rt1320-2" 428 + } 429 + }; 430 + 422 431 static const struct snd_soc_acpi_adr_device rt1320_1_group2_adr[] = { 423 432 { 424 433 .adr = 0x000130025D132001ull, ··· 618 609 {} 619 610 }; 620 611 612 + static const struct snd_soc_acpi_link_adr lnl_sdw_rt1320_l12_rt714_l0[] = { 613 + { 614 + .mask = BIT(1), 615 + .num_adr = ARRAY_SIZE(rt1320_1_group2_adr), 616 + .adr_d = rt1320_1_group2_adr, 617 + }, 618 + { 619 + .mask = BIT(2), 620 + .num_adr = ARRAY_SIZE(rt1320_2_group2_adr), 621 + .adr_d = rt1320_2_group2_adr, 622 + }, 623 + { 624 + .mask = BIT(0), 625 + .num_adr = ARRAY_SIZE(rt714_0_adr), 626 + .adr_d = rt714_0_adr, 627 + }, 628 + {} 629 + }; 630 + 621 631 static const struct snd_soc_acpi_link_adr lnl_sdw_rt713_l0_rt1318_l1[] = { 622 632 { 623 633 .mask = BIT(0), ··· 767 739 .links = lnl_sdw_rt1318_l12_rt714_l0, 768 740 .drv_name = "sof_sdw", 769 741 .sof_tplg_filename = "sof-lnl-rt1318-l12-rt714-l0.tplg" 742 + }, 743 + { 744 + .link_mask = GENMASK(2, 0), 745 + .links = lnl_sdw_rt1320_l12_rt714_l0, 746 + .drv_name = "sof_sdw", 747 + .sof_tplg_filename = "sof-lnl-rt1320-l12-rt714-l0.tplg" 770 748 }, 771 749 { 772 750 .link_mask = BIT(0) | BIT(1),
+50
sound/soc/intel/common/soc-acpi-intel-ptl-match.c
··· 21 21 .codecs = {RT5682_ACPI_HID, RT5682S_ACPI_HID}, 22 22 }; 23 23 24 + static const struct snd_soc_acpi_codecs ptl_essx_83x6 = { 25 + .num_codecs = 3, 26 + .codecs = { "ESSX8316", "ESSX8326", "ESSX8336"}, 27 + }; 28 + 29 + static const struct snd_soc_acpi_codecs ptl_lt6911_hdmi = { 30 + .num_codecs = 1, 31 + .codecs = {"INTC10B0"} 32 + }; 33 + 24 34 struct snd_soc_acpi_mach snd_soc_acpi_intel_ptl_machines[] = { 25 35 { 26 36 .comp_ids = &ptl_rt5682_rt5682s_hp, ··· 38 28 .sof_tplg_filename = "sof-ptl", /* the tplg suffix is added at run time */ 39 29 .tplg_quirk_mask = SND_SOC_ACPI_TPLG_INTEL_AMP_NAME | 40 30 SND_SOC_ACPI_TPLG_INTEL_CODEC_NAME, 31 + }, 32 + { 33 + .comp_ids = &ptl_essx_83x6, 34 + .drv_name = "ptl_es83x6_c1_h02", 35 + .machine_quirk = snd_soc_acpi_codec_list, 36 + .quirk_data = &ptl_lt6911_hdmi, 37 + .sof_tplg_filename = "sof-ptl-es83x6-ssp1-hdmi-ssp02.tplg", 38 + }, 39 + { 40 + .comp_ids = &ptl_essx_83x6, 41 + .drv_name = "sof-essx8336", 42 + .sof_tplg_filename = "sof-ptl-es8336", /* the tplg suffix is added at run time */ 43 + .tplg_quirk_mask = SND_SOC_ACPI_TPLG_INTEL_SSP_NUMBER | 44 + SND_SOC_ACPI_TPLG_INTEL_SSP_MSB | 45 + SND_SOC_ACPI_TPLG_INTEL_DMIC_NUMBER, 41 46 }, 42 47 {}, 43 48 }; ··· 355 330 } 356 331 }; 357 332 333 + static const struct snd_soc_acpi_adr_device rt721_0_single_adr[] = { 334 + { 335 + .adr = 0x000030025d072101ull, 336 + .num_endpoints = ARRAY_SIZE(rt_mf_endpoints), 337 + .endpoints = rt_mf_endpoints, 338 + .name_prefix = "rt721" 339 + } 340 + }; 341 + 358 342 static const struct snd_soc_acpi_adr_device rt721_3_single_adr[] = { 359 343 { 360 344 .adr = 0x000330025d072101ull, ··· 478 444 .mask = BIT(3), 479 445 .num_adr = ARRAY_SIZE(cs42l43_3_adr), 480 446 .adr_d = cs42l43_3_adr, 447 + }, 448 + {} 449 + }; 450 + 451 + static const struct snd_soc_acpi_link_adr ptl_rt721_l0[] = { 452 + { 453 + .mask = BIT(0), 454 + .num_adr = ARRAY_SIZE(rt721_0_single_adr), 455 + .adr_d = rt721_0_single_adr, 481 456 }, 482 457 {} 483 458 }; ··· 677 634 .links = ptl_rvp, 678 635 .drv_name = "sof_sdw", 679 636 .sof_tplg_filename = "sof-ptl-rt711.tplg", 637 + }, 638 + { 639 + .link_mask = BIT(0), 640 + .links = ptl_rt721_l0, 641 + .drv_name = "sof_sdw", 642 + .sof_tplg_filename = "sof-ptl-rt721.tplg", 643 + .get_function_tplg_files = sof_sdw_get_tplg_files, 680 644 }, 681 645 { 682 646 .link_mask = BIT(0),