lkml.org 
[lkml]   [2023]   [Jul]   [23]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH AUTOSEL 6.1 20/41] ALSA: hda: Add Loongson LS7A HD-Audio support
    Date
    From: Yanteng Si <siyanteng@loongson.cn>

    [ Upstream commit 28bd137a3c8e105587ba8c55b68ef43b519b270f ]

    Add the new PCI ID 0x0014 0x7a07 and the new PCI ID 0x0014 0x7a37
    Loongson HDA controller.

    Signed-off-by: Yanteng Si <siyanteng@loongson.cn>
    Acked-by: Huacai Chen <chenhuacai@loongson.cn>
    Link: https://lore.kernel.org/r/993587483b9509796b29a416f257fcfb4b15c6ea.1686128807.git.siyanteng@loongson.cn
    Signed-off-by: Takashi Iwai <tiwai@suse.de>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    ---
    include/linux/pci_ids.h | 3 +++
    sound/hda/hdac_device.c | 1 +
    sound/pci/hda/hda_intel.c | 7 +++++++
    sound/pci/hda/patch_hdmi.c | 1 +
    4 files changed, 12 insertions(+)

    diff --git a/include/linux/pci_ids.h b/include/linux/pci_ids.h
    index 95f33dadb2be2..c0c4ca8e28510 100644
    --- a/include/linux/pci_ids.h
    +++ b/include/linux/pci_ids.h
    @@ -158,6 +158,9 @@

    #define PCI_VENDOR_ID_LOONGSON 0x0014

    +#define PCI_DEVICE_ID_LOONGSON_HDA 0x7a07
    +#define PCI_DEVICE_ID_LOONGSON_HDMI 0x7a37
    +
    #define PCI_VENDOR_ID_TTTECH 0x0357
    #define PCI_DEVICE_ID_TTTECH_MC322 0x000a

    diff --git a/sound/hda/hdac_device.c b/sound/hda/hdac_device.c
    index bfd8585776767..5315a3eb114ee 100644
    --- a/sound/hda/hdac_device.c
    +++ b/sound/hda/hdac_device.c
    @@ -645,6 +645,7 @@ struct hda_vendor_id {
    };

    static const struct hda_vendor_id hda_vendor_ids[] = {
    + { 0x0014, "Loongson" },
    { 0x1002, "ATI" },
    { 0x1013, "Cirrus Logic" },
    { 0x1057, "Motorola" },
    diff --git a/sound/pci/hda/hda_intel.c b/sound/pci/hda/hda_intel.c
    index 3226691ac923c..9c353dc7740c4 100644
    --- a/sound/pci/hda/hda_intel.c
    +++ b/sound/pci/hda/hda_intel.c
    @@ -237,6 +237,7 @@ enum {
    AZX_DRIVER_CTHDA,
    AZX_DRIVER_CMEDIA,
    AZX_DRIVER_ZHAOXIN,
    + AZX_DRIVER_LOONGSON,
    AZX_DRIVER_GENERIC,
    AZX_NUM_DRIVERS, /* keep this as last entry */
    };
    @@ -360,6 +361,7 @@ static const char * const driver_short_names[] = {
    [AZX_DRIVER_CTHDA] = "HDA Creative",
    [AZX_DRIVER_CMEDIA] = "HDA C-Media",
    [AZX_DRIVER_ZHAOXIN] = "HDA Zhaoxin",
    + [AZX_DRIVER_LOONGSON] = "HDA Loongson",
    [AZX_DRIVER_GENERIC] = "HD-Audio Generic",
    };

    @@ -2809,6 +2811,11 @@ static const struct pci_device_id azx_ids[] = {
    .driver_data = AZX_DRIVER_GENERIC | AZX_DCAPS_PRESET_ATI_HDMI },
    /* Zhaoxin */
    { PCI_DEVICE(0x1d17, 0x3288), .driver_data = AZX_DRIVER_ZHAOXIN },
    + /* Loongson HDAudio*/
    + {PCI_DEVICE(PCI_VENDOR_ID_LOONGSON, PCI_DEVICE_ID_LOONGSON_HDA),
    + .driver_data = AZX_DRIVER_LOONGSON },
    + {PCI_DEVICE(PCI_VENDOR_ID_LOONGSON, PCI_DEVICE_ID_LOONGSON_HDMI),
    + .driver_data = AZX_DRIVER_LOONGSON },
    { 0, }
    };
    MODULE_DEVICE_TABLE(pci, azx_ids);
    diff --git a/sound/pci/hda/patch_hdmi.c b/sound/pci/hda/patch_hdmi.c
    index 7b5e09070ab9b..b9b138de57951 100644
    --- a/sound/pci/hda/patch_hdmi.c
    +++ b/sound/pci/hda/patch_hdmi.c
    @@ -4509,6 +4509,7 @@ static int patch_gf_hdmi(struct hda_codec *codec)
    * patch entries
    */
    static const struct hda_device_id snd_hda_id_hdmi[] = {
    +HDA_CODEC_ENTRY(0x00147a47, "Loongson HDMI", patch_generic_hdmi),
    HDA_CODEC_ENTRY(0x1002793c, "RS600 HDMI", patch_atihdmi),
    HDA_CODEC_ENTRY(0x10027919, "RS600 HDMI", patch_atihdmi),
    HDA_CODEC_ENTRY(0x1002791a, "RS690/780 HDMI", patch_atihdmi),
    --
    2.39.2
    \
     
     \ /
      Last update: 2023-07-24 03:24    [W:6.025 / U:0.180 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site