oxygen.c (e9f66d9b9ce03f74a52894cebedf12b67f65dd24) | oxygen.c (76bc7a0d0a2a833d09fbf9d4e19a7985ef6e276b) |
---|---|
1/* 2 * C-Media CMI8788 driver for C-Media's reference design and similar models 3 * 4 * Copyright (c) Clemens Ladisch <clemens@ladisch.de> 5 * 6 * 7 * This driver is free software; you can redistribute it and/or modify 8 * it under the terms of the GNU General Public License, version 2. --- 80 unchanged lines hidden (view full) --- 89 MODEL_MERIDIAN_2G, 90 MODEL_CLARO, 91 MODEL_CLARO_HALO, 92 MODEL_FANTASIA, 93 MODEL_SERENADE, 94 MODEL_2CH_OUTPUT, 95 MODEL_HG2PCI, 96 MODEL_XONAR_DG, | 1/* 2 * C-Media CMI8788 driver for C-Media's reference design and similar models 3 * 4 * Copyright (c) Clemens Ladisch <clemens@ladisch.de> 5 * 6 * 7 * This driver is free software; you can redistribute it and/or modify 8 * it under the terms of the GNU General Public License, version 2. --- 80 unchanged lines hidden (view full) --- 89 MODEL_MERIDIAN_2G, 90 MODEL_CLARO, 91 MODEL_CLARO_HALO, 92 MODEL_FANTASIA, 93 MODEL_SERENADE, 94 MODEL_2CH_OUTPUT, 95 MODEL_HG2PCI, 96 MODEL_XONAR_DG, |
97 MODEL_XONAR_DGX, |
|
97}; 98 99static DEFINE_PCI_DEVICE_TABLE(oxygen_ids) = { 100 /* C-Media's reference design */ 101 { OXYGEN_PCI_SUBID(0x10b0, 0x0216), .driver_data = MODEL_CMEDIA_REF }, 102 { OXYGEN_PCI_SUBID(0x10b0, 0x0217), .driver_data = MODEL_CMEDIA_REF }, 103 { OXYGEN_PCI_SUBID(0x10b0, 0x0218), .driver_data = MODEL_CMEDIA_REF }, 104 { OXYGEN_PCI_SUBID(0x10b0, 0x0219), .driver_data = MODEL_CMEDIA_REF }, 105 { OXYGEN_PCI_SUBID(0x13f6, 0x0001), .driver_data = MODEL_CMEDIA_REF }, 106 { OXYGEN_PCI_SUBID(0x13f6, 0x0010), .driver_data = MODEL_CMEDIA_REF }, 107 { OXYGEN_PCI_SUBID(0x13f6, 0x8788), .driver_data = MODEL_CMEDIA_REF }, 108 { OXYGEN_PCI_SUBID(0x147a, 0xa017), .driver_data = MODEL_CMEDIA_REF }, 109 { OXYGEN_PCI_SUBID(0x1a58, 0x0910), .driver_data = MODEL_CMEDIA_REF }, 110 /* Asus Xonar DG */ 111 { OXYGEN_PCI_SUBID(0x1043, 0x8467), .driver_data = MODEL_XONAR_DG }, | 98}; 99 100static DEFINE_PCI_DEVICE_TABLE(oxygen_ids) = { 101 /* C-Media's reference design */ 102 { OXYGEN_PCI_SUBID(0x10b0, 0x0216), .driver_data = MODEL_CMEDIA_REF }, 103 { OXYGEN_PCI_SUBID(0x10b0, 0x0217), .driver_data = MODEL_CMEDIA_REF }, 104 { OXYGEN_PCI_SUBID(0x10b0, 0x0218), .driver_data = MODEL_CMEDIA_REF }, 105 { OXYGEN_PCI_SUBID(0x10b0, 0x0219), .driver_data = MODEL_CMEDIA_REF }, 106 { OXYGEN_PCI_SUBID(0x13f6, 0x0001), .driver_data = MODEL_CMEDIA_REF }, 107 { OXYGEN_PCI_SUBID(0x13f6, 0x0010), .driver_data = MODEL_CMEDIA_REF }, 108 { OXYGEN_PCI_SUBID(0x13f6, 0x8788), .driver_data = MODEL_CMEDIA_REF }, 109 { OXYGEN_PCI_SUBID(0x147a, 0xa017), .driver_data = MODEL_CMEDIA_REF }, 110 { OXYGEN_PCI_SUBID(0x1a58, 0x0910), .driver_data = MODEL_CMEDIA_REF }, 111 /* Asus Xonar DG */ 112 { OXYGEN_PCI_SUBID(0x1043, 0x8467), .driver_data = MODEL_XONAR_DG }, |
113 /* Asus Xonar DGX */ 114 { OXYGEN_PCI_SUBID(0x1043, 0x8521), .driver_data = MODEL_XONAR_DGX }, |
|
112 /* PCI 2.0 HD Audio */ 113 { OXYGEN_PCI_SUBID(0x13f6, 0x8782), .driver_data = MODEL_2CH_OUTPUT }, 114 /* Kuroutoshikou CMI8787-HG2PCI */ 115 { OXYGEN_PCI_SUBID(0x13f6, 0xffff), .driver_data = MODEL_HG2PCI }, 116 /* TempoTec HiFier Fantasia */ 117 { OXYGEN_PCI_SUBID(0x14c3, 0x1710), .driver_data = MODEL_FANTASIA }, 118 /* TempoTec HiFier Serenade */ 119 { OXYGEN_PCI_SUBID(0x14c3, 0x1711), .driver_data = MODEL_SERENADE }, --- 702 unchanged lines hidden (view full) --- 822 chip->model.device_config |= CAPTURE_0_FROM_I2S_1; 823 chip->model.adc_mclks = OXYGEN_MCLKS(256, 128, 128); 824 } 825 chip->model.dac_channels_pcm = 2; 826 chip->model.dac_channels_mixer = 2; 827 break; 828 case MODEL_XONAR_DG: 829 chip->model = model_xonar_dg; | 115 /* PCI 2.0 HD Audio */ 116 { OXYGEN_PCI_SUBID(0x13f6, 0x8782), .driver_data = MODEL_2CH_OUTPUT }, 117 /* Kuroutoshikou CMI8787-HG2PCI */ 118 { OXYGEN_PCI_SUBID(0x13f6, 0xffff), .driver_data = MODEL_HG2PCI }, 119 /* TempoTec HiFier Fantasia */ 120 { OXYGEN_PCI_SUBID(0x14c3, 0x1710), .driver_data = MODEL_FANTASIA }, 121 /* TempoTec HiFier Serenade */ 122 { OXYGEN_PCI_SUBID(0x14c3, 0x1711), .driver_data = MODEL_SERENADE }, --- 702 unchanged lines hidden (view full) --- 825 chip->model.device_config |= CAPTURE_0_FROM_I2S_1; 826 chip->model.adc_mclks = OXYGEN_MCLKS(256, 128, 128); 827 } 828 chip->model.dac_channels_pcm = 2; 829 chip->model.dac_channels_mixer = 2; 830 break; 831 case MODEL_XONAR_DG: 832 chip->model = model_xonar_dg; |
833 chip->model.shortname = "Xonar DG"; |
|
830 break; | 834 break; |
835 case MODEL_XONAR_DGX: 836 chip->model = model_xonar_dg; 837 chip->model.shortname = "Xonar DGX"; 838 break; |
|
831 } 832 if (id->driver_data == MODEL_MERIDIAN || 833 id->driver_data == MODEL_MERIDIAN_2G || 834 id->driver_data == MODEL_CLARO_HALO) { 835 chip->model.misc_flags = OXYGEN_MISC_MIDI; 836 chip->model.device_config |= MIDI_OUTPUT | MIDI_INPUT; 837 } 838 if (id->driver_data < ARRAY_SIZE(names) && names[id->driver_data]) --- 35 unchanged lines hidden --- | 839 } 840 if (id->driver_data == MODEL_MERIDIAN || 841 id->driver_data == MODEL_MERIDIAN_2G || 842 id->driver_data == MODEL_CLARO_HALO) { 843 chip->model.misc_flags = OXYGEN_MISC_MIDI; 844 chip->model.device_config |= MIDI_OUTPUT | MIDI_INPUT; 845 } 846 if (id->driver_data < ARRAY_SIZE(names) && names[id->driver_data]) --- 35 unchanged lines hidden --- |