Skip to content

Commit 09c9253

Browse files
leoliu-ocopsiff
authored andcommitted
ALSA: HDA: Roll back the old version for consistency with the mainline
zhaoxin inclusion category: feature -------------------- The official version has already been merged into the mainline. Therefore, in order to ensure the consistency of the HDAC code with the mainline, it is necessary to roll back the current version so as to merge the mainline version subsequently. Signed-off-by: leoliu-oc <[email protected]>
1 parent 75c8905 commit 09c9253

File tree

4 files changed

+3
-118
lines changed

4 files changed

+3
-118
lines changed

sound/pci/hda/hda_controller.c

Lines changed: 1 addition & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1172,16 +1172,6 @@ static void stream_update(struct hdac_bus *bus, struct hdac_stream *s)
11721172
}
11731173
}
11741174

1175-
static void azx_rirb_zxdelay(struct azx *chip, int enable)
1176-
{
1177-
if (chip->remap_diu_addr) {
1178-
if (!enable)
1179-
writel(0x0, (char *)chip->remap_diu_addr + 0x490a8);
1180-
else
1181-
writel(0x1000000, (char *)chip->remap_diu_addr + 0x490a8);
1182-
}
1183-
}
1184-
11851175
irqreturn_t azx_interrupt(int irq, void *dev_id)
11861176
{
11871177
struct azx *chip = dev_id;
@@ -1224,14 +1214,9 @@ irqreturn_t azx_interrupt(int irq, void *dev_id)
12241214
azx_writeb(chip, RIRBSTS, RIRB_INT_MASK);
12251215
active = true;
12261216
if (status & RIRB_INT_RESPONSE) {
1227-
if ((chip->driver_caps & AZX_DCAPS_CTX_WORKAROUND) ||
1228-
(chip->driver_caps & AZX_DCAPS_RIRB_PRE_DELAY)) {
1229-
azx_rirb_zxdelay(chip, 1);
1217+
if (chip->driver_caps & AZX_DCAPS_CTX_WORKAROUND)
12301218
udelay(80);
1231-
}
12321219
snd_hdac_bus_update_rirb(bus);
1233-
if (chip->driver_caps & AZX_DCAPS_RIRB_PRE_DELAY)
1234-
azx_rirb_zxdelay(chip, 0);
12351220
}
12361221
}
12371222
} while (active && ++repeat < 10);

sound/pci/hda/hda_controller.h

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,6 @@
4848
#define AZX_DCAPS_CORBRP_SELF_CLEAR (1 << 28) /* CORBRP clears itself after reset */
4949
#define AZX_DCAPS_NO_MSI64 (1 << 29) /* Stick to 32-bit MSIs */
5050
#define AZX_DCAPS_SEPARATE_STREAM_TAG (1 << 30) /* capture and playback use separate stream tag */
51-
#define AZX_DCAPS_RIRB_PRE_DELAY (1 << 31) /* Put a delay before read */
5251

5352
enum {
5453
AZX_SNOOP_TYPE_NONE,
@@ -147,8 +146,6 @@ struct azx {
147146
unsigned int disabled:1; /* disabled by vga_switcheroo */
148147
unsigned int pm_prepared:1;
149148

150-
void __iomem *remap_diu_addr;
151-
152149
/* GTS present */
153150
unsigned int gts_present:1;
154151

sound/pci/hda/hda_intel.c

Lines changed: 2 additions & 67 deletions
Original file line numberDiff line numberDiff line change
@@ -238,7 +238,6 @@ enum {
238238
AZX_DRIVER_CTHDA,
239239
AZX_DRIVER_CMEDIA,
240240
AZX_DRIVER_ZHAOXIN,
241-
AZX_DRIVER_ZXHDMI,
242241
AZX_DRIVER_LOONGSON,
243242
AZX_DRIVER_HYGON,
244243
AZX_DRIVER_GENERIC,
@@ -352,7 +351,6 @@ static const char * const driver_short_names[] = {
352351
[AZX_DRIVER_CTHDA] = "HDA Creative",
353352
[AZX_DRIVER_CMEDIA] = "HDA C-Media",
354353
[AZX_DRIVER_ZHAOXIN] = "HDA Zhaoxin",
355-
[AZX_DRIVER_ZXHDMI] = "HDA Zhaoxin HDMI",
356354
[AZX_DRIVER_LOONGSON] = "HDA Loongson",
357355
[AZX_DRIVER_HYGON] = "HDA Hygon",
358356
[AZX_DRIVER_GENERIC] = "HD-Audio Generic",
@@ -376,31 +374,6 @@ static void update_pci_byte(struct pci_dev *pci, unsigned int reg,
376374
pci_write_config_byte(pci, reg, data);
377375
}
378376

379-
static int azx_init_pci_zx(struct azx *chip)
380-
{
381-
struct snd_card *card = chip->card;
382-
unsigned int diu_reg;
383-
struct pci_dev *diu_pci = NULL;
384-
385-
azx_bus(chip)->polling_mode = 1;
386-
diu_pci = pci_get_device(0x1d17, 0x3a03, NULL);
387-
if (!diu_pci) {
388-
dev_info(card->dev, "zx_hda no KX-5000 device.\n");
389-
return -ENXIO;
390-
}
391-
pci_read_config_dword(diu_pci, PCI_BASE_ADDRESS_0, &diu_reg);
392-
chip->remap_diu_addr = ioremap(diu_reg, 0x50000);
393-
dev_info(card->dev, "zx_hda %x %p\n", diu_reg, chip->remap_diu_addr);
394-
pci_dev_put(diu_pci);
395-
return 0;
396-
}
397-
398-
static void azx_free_pci_zx(struct azx *chip)
399-
{
400-
if (chip->remap_diu_addr)
401-
iounmap(chip->remap_diu_addr);
402-
}
403-
404377
static int gf_init_pci(struct azx *chip)
405378
{
406379
struct pci_dev *diu_pci = NULL;
@@ -1467,9 +1440,6 @@ static void azx_free(struct azx *chip)
14671440
hda->init_failed = 1; /* to be sure */
14681441
complete_all(&hda->probe_wait);
14691442

1470-
if (chip->driver_type == AZX_DRIVER_ZXHDMI)
1471-
azx_free_pci_zx(chip);
1472-
14731443
if (use_vga_switcheroo(hda)) {
14741444
if (chip->disabled && hda->probe_continued)
14751445
snd_hda_unlock_devices(&chip->bus);
@@ -1674,8 +1644,7 @@ static int check_position_fix(struct azx *chip, int fix)
16741644
}
16751645

16761646
/* Check VIA/ATI HD Audio Controller exist */
1677-
if (chip->driver_type == AZX_DRIVER_VIA ||
1678-
chip->driver_type == AZX_DRIVER_ZHAOXIN) {
1647+
if (chip->driver_type == AZX_DRIVER_VIA) {
16791648
dev_dbg(chip->card->dev, "Using VIACOMBO position fix\n");
16801649
return POS_FIX_VIACOMBO;
16811650
}
@@ -1829,7 +1798,7 @@ static void azx_check_snoop_available(struct azx *chip)
18291798

18301799
snoop = true;
18311800
if (azx_get_snoop_type(chip) == AZX_SNOOP_TYPE_NONE &&
1832-
(chip->driver_type == AZX_DRIVER_VIA || chip->driver_type == AZX_DRIVER_ZHAOXIN)) {
1801+
chip->driver_type == AZX_DRIVER_VIA) {
18331802
/* force to non-snoop mode for a new VIA controller
18341803
* when BIOS is set
18351804
*/
@@ -1881,8 +1850,6 @@ static int default_bdl_pos_adj(struct azx *chip)
18811850
case AZX_DRIVER_ICH:
18821851
case AZX_DRIVER_PCH:
18831852
return 1;
1884-
case AZX_DRIVER_ZXHDMI:
1885-
return 128;
18861853
default:
18871854
return 32;
18881855
}
@@ -2019,11 +1986,6 @@ static int azx_first_init(struct azx *chip)
20191986
chip->pci->device == PCI_DEVICE_ID_HYGON_18H_M05H_HDA)
20201987
bus->hygon_dword_access = 1;
20211988

2022-
chip->remap_diu_addr = NULL;
2023-
2024-
if (chip->driver_type == AZX_DRIVER_ZXHDMI)
2025-
azx_init_pci_zx(chip);
2026-
20271989
err = pcim_iomap_regions(pci, 1 << 0, "ICH HD audio");
20281990
if (err < 0)
20291991
return err;
@@ -2125,7 +2087,6 @@ static int azx_first_init(struct azx *chip)
21252087
chip->capture_streams = ATIHDMI_NUM_CAPTURE;
21262088
break;
21272089
case AZX_DRIVER_GFHDMI:
2128-
case AZX_DRIVER_ZXHDMI:
21292090
case AZX_DRIVER_GENERIC:
21302091
default:
21312092
chip->playback_streams = ICH6_NUM_PLAYBACK;
@@ -2875,19 +2836,6 @@ static const struct pci_device_id azx_ids[] = {
28752836
{ PCI_VDEVICE(VIA, 0x9170), .driver_data = AZX_DRIVER_GENERIC },
28762837
/* VIA GFX VT6122/VX11 */
28772838
{ PCI_VDEVICE(VIA, 0x9140), .driver_data = AZX_DRIVER_GENERIC },
2878-
{ PCI_VDEVICE(VIA, 0x9141), .driver_data = AZX_DRIVER_GENERIC },
2879-
{ PCI_VDEVICE(VIA, 0x9142),
2880-
.driver_data = AZX_DRIVER_ZXHDMI | AZX_DCAPS_POSFIX_LPIB | AZX_DCAPS_NO_MSI |
2881-
AZX_DCAPS_RIRB_PRE_DELAY | AZX_DCAPS_NO_64BIT },
2882-
{ PCI_VDEVICE(VIA, 0x9144),
2883-
.driver_data = AZX_DRIVER_ZXHDMI | AZX_DCAPS_POSFIX_LPIB | AZX_DCAPS_NO_MSI |
2884-
AZX_DCAPS_RIRB_PRE_DELAY | AZX_DCAPS_NO_64BIT },
2885-
{ PCI_VDEVICE(VIA, 0x9145),
2886-
.driver_data = AZX_DRIVER_ZXHDMI | AZX_DCAPS_POSFIX_LPIB | AZX_DCAPS_NO_MSI |
2887-
AZX_DCAPS_RIRB_PRE_DELAY | AZX_DCAPS_NO_64BIT },
2888-
{ PCI_VDEVICE(VIA, 0x9146),
2889-
.driver_data = AZX_DRIVER_ZXHDMI | AZX_DCAPS_POSFIX_LPIB | AZX_DCAPS_NO_MSI |
2890-
AZX_DCAPS_RIRB_PRE_DELAY | AZX_DCAPS_NO_64BIT },
28912839
/* SIS966 */
28922840
{ PCI_VDEVICE(SI, 0x7502), .driver_data = AZX_DRIVER_SIS },
28932841
/* ULI M5461 */
@@ -2943,19 +2891,6 @@ static const struct pci_device_id azx_ids[] = {
29432891
.driver_data = AZX_DRIVER_GENERIC | AZX_DCAPS_PRESET_ATI_HDMI },
29442892
/* Zhaoxin */
29452893
{ PCI_VDEVICE(ZHAOXIN, 0x3288), .driver_data = AZX_DRIVER_ZHAOXIN },
2946-
{ PCI_VDEVICE(ZHAOXIN, 0x9141), .driver_data = AZX_DRIVER_GENERIC },
2947-
{ PCI_VDEVICE(ZHAOXIN, 0x9142),
2948-
.driver_data = AZX_DRIVER_ZXHDMI | AZX_DCAPS_POSFIX_LPIB | AZX_DCAPS_NO_MSI |
2949-
AZX_DCAPS_RIRB_PRE_DELAY | AZX_DCAPS_NO_64BIT },
2950-
{ PCI_VDEVICE(ZHAOXIN, 0x9144),
2951-
.driver_data = AZX_DRIVER_ZXHDMI | AZX_DCAPS_POSFIX_LPIB | AZX_DCAPS_NO_MSI |
2952-
AZX_DCAPS_RIRB_PRE_DELAY | AZX_DCAPS_NO_64BIT },
2953-
{ PCI_VDEVICE(ZHAOXIN, 0x9145),
2954-
.driver_data = AZX_DRIVER_ZXHDMI | AZX_DCAPS_POSFIX_LPIB | AZX_DCAPS_NO_MSI |
2955-
AZX_DCAPS_RIRB_PRE_DELAY | AZX_DCAPS_NO_64BIT },
2956-
{ PCI_VDEVICE(ZHAOXIN, 0x9146),
2957-
.driver_data = AZX_DRIVER_ZXHDMI | AZX_DCAPS_POSFIX_LPIB | AZX_DCAPS_NO_MSI |
2958-
AZX_DCAPS_RIRB_PRE_DELAY | AZX_DCAPS_NO_64BIT },
29592894
/* Loongson HDAudio*/
29602895
{ PCI_VDEVICE(LOONGSON, PCI_DEVICE_ID_LOONGSON_HDA),
29612896
.driver_data = AZX_DRIVER_LOONGSON | AZX_DCAPS_NO_TCSEL },

sound/pci/hda/patch_hdmi.c

Lines changed: 0 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -4497,20 +4497,6 @@ static int patch_via_hdmi(struct hda_codec *codec)
44974497
return patch_simple_hdmi(codec, VIAHDMI_CVT_NID, VIAHDMI_PIN_NID);
44984498
}
44994499

4500-
/* Zhaoxin HDMI Implementation */
4501-
static int patch_zhaoxin_hdmi(struct hda_codec *codec)
4502-
{
4503-
int err;
4504-
4505-
err = patch_generic_hdmi(codec);
4506-
codec->no_sticky_stream = 1;
4507-
4508-
if (err)
4509-
return err;
4510-
4511-
return 0;
4512-
}
4513-
45144500
static int patch_gf_hdmi(struct hda_codec *codec)
45154501
{
45164502
int err;
@@ -4655,15 +4641,6 @@ HDA_CODEC_ENTRY(0x11069f80, "VX900 HDMI/DP", patch_via_hdmi),
46554641
HDA_CODEC_ENTRY(0x11069f81, "VX900 HDMI/DP", patch_via_hdmi),
46564642
HDA_CODEC_ENTRY(0x11069f84, "VX11 HDMI/DP", patch_generic_hdmi),
46574643
HDA_CODEC_ENTRY(0x11069f85, "VX11 HDMI/DP", patch_generic_hdmi),
4658-
HDA_CODEC_ENTRY(0x11069f88, "KX-5000 HDMI/DP", patch_zhaoxin_hdmi),
4659-
HDA_CODEC_ENTRY(0x11069f89, "KX-5000 HDMI/DP", patch_zhaoxin_hdmi),
4660-
HDA_CODEC_ENTRY(0x11069f8a, "KX-6000 HDMI/DP", patch_zhaoxin_hdmi),
4661-
HDA_CODEC_ENTRY(0x11069f8b, "KX-6000 HDMI/DP", patch_zhaoxin_hdmi),
4662-
HDA_CODEC_ENTRY(0x11069f8c, "KX-6000G HDMI/DP", patch_zhaoxin_hdmi),
4663-
HDA_CODEC_ENTRY(0x11069f8d, "KX-6000G HDMI/DP", patch_zhaoxin_hdmi),
4664-
HDA_CODEC_ENTRY(0x11069f8e, "KX-7000 HDMI/DP", patch_zhaoxin_hdmi),
4665-
HDA_CODEC_ENTRY(0x11069f8f, "KX-7000 HDMI/DP", patch_zhaoxin_hdmi),
4666-
HDA_CODEC_ENTRY(0x11069f90, "KX-7000 HDMI/DP", patch_zhaoxin_hdmi),
46674644
HDA_CODEC_ENTRY(0x80860054, "IbexPeak HDMI", patch_i915_cpt_hdmi),
46684645
HDA_CODEC_ENTRY(0x80862800, "Geminilake HDMI", patch_i915_glk_hdmi),
46694646
HDA_CODEC_ENTRY(0x80862801, "Bearlake HDMI", patch_generic_hdmi),
@@ -4697,15 +4674,6 @@ HDA_CODEC_ENTRY(0x80862880, "CedarTrail HDMI", patch_generic_hdmi),
46974674
HDA_CODEC_ENTRY(0x80862882, "Valleyview2 HDMI", patch_i915_byt_hdmi),
46984675
HDA_CODEC_ENTRY(0x80862883, "Braswell HDMI", patch_i915_byt_hdmi),
46994676
HDA_CODEC_ENTRY(0x808629fb, "Crestline HDMI", patch_generic_hdmi),
4700-
HDA_CODEC_ENTRY(0x1d179f88, "KX-5000 HDMI/DP", patch_zhaoxin_hdmi),
4701-
HDA_CODEC_ENTRY(0x1d179f89, "KX-5000 HDMI/DP", patch_zhaoxin_hdmi),
4702-
HDA_CODEC_ENTRY(0x1d179f8a, "KX-6000 HDMI/DP", patch_zhaoxin_hdmi),
4703-
HDA_CODEC_ENTRY(0x1d179f8b, "KX-6000 HDMI/DP", patch_zhaoxin_hdmi),
4704-
HDA_CODEC_ENTRY(0x1d179f8c, "KX-6000G HDMI/DP", patch_zhaoxin_hdmi),
4705-
HDA_CODEC_ENTRY(0x1d179f8d, "KX-6000G HDMI/DP", patch_zhaoxin_hdmi),
4706-
HDA_CODEC_ENTRY(0x1d179f8e, "KX-7000 HDMI/DP", patch_zhaoxin_hdmi),
4707-
HDA_CODEC_ENTRY(0x1d179f8f, "KX-7000 HDMI/DP", patch_zhaoxin_hdmi),
4708-
HDA_CODEC_ENTRY(0x1d179f90, "KX-7000 HDMI/DP", patch_zhaoxin_hdmi),
47094677
/* special ID for generic HDMI */
47104678
HDA_CODEC_ENTRY(HDA_CODEC_ID_GENERIC_HDMI, "Generic HDMI", patch_generic_hdmi),
47114679
{} /* terminator */

0 commit comments

Comments
 (0)