tree: git://people.freedesktop.org/~agd5f/linux.git amd-staging-drm-next head: d19e8ade9c3b04edf71a7ec439ba53ea2b8c76a3 commit: 2a6630b1095609b26a205b7c537594f3cde99c0a [114/432] ASoC: AMD: enable ACP3x drivers build config: sh-allyesconfig (attached as .config) compiler: sh4-linux-gnu-gcc (Debian 7.2.0-11) 7.2.0 reproduce: wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross chmod +x ~/bin/make.cross git checkout 2a6630b1095609b26a205b7c537594f3cde99c0a # save the attached .config to linux build tree make.cross ARCH=sh All error/warnings (new ones prefixed by >>): sound/soc//amd/raven/pci-acp3x.c: In function 'snd_acp3x_probe': >> sound/soc//amd/raven/pci-acp3x.c:58:8: error: implicit declaration of function 'pci_enable_msi'; did you mean 'pci_enable_sriov'? [-Werror=implicit-function-declaration] ret = pci_enable_msi(pci); ^~~~~~~~~~~~~~ pci_enable_sriov >> sound/soc//amd/raven/pci-acp3x.c:122:2: error: implicit declaration of function 'pci_disable_msi'; did you mean 'pci_disable_sriov'? [-Werror=implicit-function-declaration] pci_disable_msi(pci); ^~~~~~~~~~~~~~~ pci_disable_sriov sound/soc//amd/raven/pci-acp3x.c: At top level: >> sound/soc//amd/raven/pci-acp3x.c:159:1: warning: data definition has no type or storage class module_pci_driver(acp3x_driver); ^~~~~~~~~~~~~~~~~ >> sound/soc//amd/raven/pci-acp3x.c:159:1: error: type defaults to 'int' in declaration of 'module_pci_driver' [-Werror=implicit-int] >> sound/soc//amd/raven/pci-acp3x.c:159:1: warning: parameter names (without types) in function declaration sound/soc//amd/raven/pci-acp3x.c:152:26: warning: 'acp3x_driver' defined but not used [-Wunused-variable] static struct pci_driver acp3x_driver = { ^~~~~~~~~~~~ cc1: some warnings being treated as errors vim +58 sound/soc//amd/raven/pci-acp3x.c 1e29b934 Maruthi Srinivas Bayyavarapu 2017-03-27 29 1e29b934 Maruthi Srinivas Bayyavarapu 2017-03-27 30 static int snd_acp3x_probe(struct pci_dev *pci, 1e29b934 Maruthi Srinivas Bayyavarapu 2017-03-27 31 const struct pci_device_id *pci_id) 1e29b934 Maruthi Srinivas Bayyavarapu 2017-03-27 32 { 1e29b934 Maruthi Srinivas Bayyavarapu 2017-03-27 33 int ret; 5fa60ff2 Maruthi Srinivas Bayyavarapu 2017-03-29 34 u32 addr, val; 1e29b934 Maruthi Srinivas Bayyavarapu 2017-03-27 35 struct acp3x_dev_data *adata; 5fa60ff2 Maruthi Srinivas Bayyavarapu 2017-03-29 36 struct platform_device_info pdevinfo; 5fa60ff2 Maruthi Srinivas Bayyavarapu 2017-03-29 37 unsigned int irqflags; 1e29b934 Maruthi Srinivas Bayyavarapu 2017-03-27 38 1e29b934 Maruthi Srinivas Bayyavarapu 2017-03-27 39 if (pci_enable_device(pci)) { 1e29b934 Maruthi Srinivas Bayyavarapu 2017-03-27 40 dev_err(&pci->dev, "pci_enable_device failed\n"); 1e29b934 Maruthi Srinivas Bayyavarapu 2017-03-27 41 return -ENODEV; 1e29b934 Maruthi Srinivas Bayyavarapu 2017-03-27 42 } 1e29b934 Maruthi Srinivas Bayyavarapu 2017-03-27 43 1e29b934 Maruthi Srinivas Bayyavarapu 2017-03-27 44 ret = pci_request_regions(pci, "AMD ACP3x audio"); 1e29b934 Maruthi Srinivas Bayyavarapu 2017-03-27 45 if (ret < 0) { 1e29b934 Maruthi Srinivas Bayyavarapu 2017-03-27 46 dev_err(&pci->dev, "pci_request_regions failed\n"); 1e29b934 Maruthi Srinivas Bayyavarapu 2017-03-27 47 goto disable_pci; 1e29b934 Maruthi Srinivas Bayyavarapu 2017-03-27 48 } 1e29b934 Maruthi Srinivas Bayyavarapu 2017-03-27 49 1e29b934 Maruthi Srinivas Bayyavarapu 2017-03-27 50 adata = devm_kzalloc(&pci->dev, sizeof(struct acp3x_dev_data), 1e29b934 Maruthi Srinivas Bayyavarapu 2017-03-27 51 GFP_KERNEL); 1e29b934 Maruthi Srinivas Bayyavarapu 2017-03-27 52 if (adata == NULL) { 1e29b934 Maruthi Srinivas Bayyavarapu 2017-03-27 53 ret = -ENOMEM; 1e29b934 Maruthi Srinivas Bayyavarapu 2017-03-27 54 goto release_regions; 1e29b934 Maruthi Srinivas Bayyavarapu 2017-03-27 55 } 1e29b934 Maruthi Srinivas Bayyavarapu 2017-03-27 56 5fa60ff2 Maruthi Srinivas Bayyavarapu 2017-03-29 57 /* check for msi interrupt support */ 5fa60ff2 Maruthi Srinivas Bayyavarapu 2017-03-29 @58 ret = pci_enable_msi(pci); 5fa60ff2 Maruthi Srinivas Bayyavarapu 2017-03-29 59 if (ret) 5fa60ff2 Maruthi Srinivas Bayyavarapu 2017-03-29 60 /* msi is not enabled */ 5fa60ff2 Maruthi Srinivas Bayyavarapu 2017-03-29 61 irqflags = IRQF_SHARED; 5fa60ff2 Maruthi Srinivas Bayyavarapu 2017-03-29 62 else 5fa60ff2 Maruthi Srinivas Bayyavarapu 2017-03-29 63 /* msi is enabled */ 5fa60ff2 Maruthi Srinivas Bayyavarapu 2017-03-29 64 irqflags = 0; 5fa60ff2 Maruthi Srinivas Bayyavarapu 2017-03-29 65 1e29b934 Maruthi Srinivas Bayyavarapu 2017-03-27 66 addr = pci_resource_start(pci, 0); 1e29b934 Maruthi Srinivas Bayyavarapu 2017-03-27 67 adata->acp3x_base = ioremap(addr, pci_resource_len(pci, 0)); 1e29b934 Maruthi Srinivas Bayyavarapu 2017-03-27 68 if (adata->acp3x_base == NULL) { 1e29b934 Maruthi Srinivas Bayyavarapu 2017-03-27 69 ret = -ENOMEM; 1e29b934 Maruthi Srinivas Bayyavarapu 2017-03-27 70 goto release_regions; 1e29b934 Maruthi Srinivas Bayyavarapu 2017-03-27 71 } 1e29b934 Maruthi Srinivas Bayyavarapu 2017-03-27 72 1e29b934 Maruthi Srinivas Bayyavarapu 2017-03-27 73 pci_set_drvdata(pci, adata); 1e29b934 Maruthi Srinivas Bayyavarapu 2017-03-27 74 5fa60ff2 Maruthi Srinivas Bayyavarapu 2017-03-29 75 val = rv_readl(adata->acp3x_base + mmACP_I2S_PIN_CONFIG); 5fa60ff2 Maruthi Srinivas Bayyavarapu 2017-03-29 76 if (val == 0x4) { 5fa60ff2 Maruthi Srinivas Bayyavarapu 2017-03-29 77 adata->res = devm_kzalloc(&pci->dev, 5fa60ff2 Maruthi Srinivas Bayyavarapu 2017-03-29 78 sizeof(struct resource) * 2, 5fa60ff2 Maruthi Srinivas Bayyavarapu 2017-03-29 79 GFP_KERNEL); 5fa60ff2 Maruthi Srinivas Bayyavarapu 2017-03-29 80 if (adata->res == NULL) { 5fa60ff2 Maruthi Srinivas Bayyavarapu 2017-03-29 81 ret = -ENOMEM; 5fa60ff2 Maruthi Srinivas Bayyavarapu 2017-03-29 82 goto unmap_mmio; 5fa60ff2 Maruthi Srinivas Bayyavarapu 2017-03-29 83 } 5fa60ff2 Maruthi Srinivas Bayyavarapu 2017-03-29 84 5fa60ff2 Maruthi Srinivas Bayyavarapu 2017-03-29 85 adata->res[0].name = "acp3x_i2s_iomem"; 5fa60ff2 Maruthi Srinivas Bayyavarapu 2017-03-29 86 adata->res[0].flags = IORESOURCE_MEM; 5fa60ff2 Maruthi Srinivas Bayyavarapu 2017-03-29 87 adata->res[0].start = addr; 5fa60ff2 Maruthi Srinivas Bayyavarapu 2017-03-29 88 adata->res[0].end = addr + (ACP3x_REG_END - ACP3x_REG_START); 5fa60ff2 Maruthi Srinivas Bayyavarapu 2017-03-29 89 5fa60ff2 Maruthi Srinivas Bayyavarapu 2017-03-29 90 adata->res[1].name = "acp3x_i2s_irq"; 5fa60ff2 Maruthi Srinivas Bayyavarapu 2017-03-29 91 adata->res[1].flags = IORESOURCE_IRQ; 5fa60ff2 Maruthi Srinivas Bayyavarapu 2017-03-29 92 adata->res[1].start = pci->irq; 5fa60ff2 Maruthi Srinivas Bayyavarapu 2017-03-29 93 adata->res[1].end = pci->irq; 5fa60ff2 Maruthi Srinivas Bayyavarapu 2017-03-29 94 5fa60ff2 Maruthi Srinivas Bayyavarapu 2017-03-29 95 adata->acp3x_audio_mode = ACP3x_I2S_MODE; 5fa60ff2 Maruthi Srinivas Bayyavarapu 2017-03-29 96 5fa60ff2 Maruthi Srinivas Bayyavarapu 2017-03-29 97 memset(&pdevinfo, 0, sizeof(pdevinfo)); 5fa60ff2 Maruthi Srinivas Bayyavarapu 2017-03-29 98 pdevinfo.name = "acp3x_rv_i2s"; 5fa60ff2 Maruthi Srinivas Bayyavarapu 2017-03-29 99 pdevinfo.id = 0; 5fa60ff2 Maruthi Srinivas Bayyavarapu 2017-03-29 100 pdevinfo.parent = &pci->dev; 5fa60ff2 Maruthi Srinivas Bayyavarapu 2017-03-29 101 pdevinfo.num_res = 2; 5fa60ff2 Maruthi Srinivas Bayyavarapu 2017-03-29 102 pdevinfo.res = adata->res; 5fa60ff2 Maruthi Srinivas Bayyavarapu 2017-03-29 103 pdevinfo.data = &irqflags; 5fa60ff2 Maruthi Srinivas Bayyavarapu 2017-03-29 104 pdevinfo.size_data = sizeof(irqflags); 5fa60ff2 Maruthi Srinivas Bayyavarapu 2017-03-29 105 5fa60ff2 Maruthi Srinivas Bayyavarapu 2017-03-29 106 adata->pdev = platform_device_register_full(&pdevinfo); 5fa60ff2 Maruthi Srinivas Bayyavarapu 2017-03-29 107 if (adata->pdev == NULL) { 5fa60ff2 Maruthi Srinivas Bayyavarapu 2017-03-29 108 dev_err(&pci->dev, "cannot register %s device\n", 5fa60ff2 Maruthi Srinivas Bayyavarapu 2017-03-29 109 pdevinfo.name); 5fa60ff2 Maruthi Srinivas Bayyavarapu 2017-03-29 110 ret = -ENODEV; 5fa60ff2 Maruthi Srinivas Bayyavarapu 2017-03-29 111 goto unmap_mmio; 5fa60ff2 Maruthi Srinivas Bayyavarapu 2017-03-29 112 } 5fa60ff2 Maruthi Srinivas Bayyavarapu 2017-03-29 113 } else { 5fa60ff2 Maruthi Srinivas Bayyavarapu 2017-03-29 114 dev_err(&pci->dev, "Inavlid ACP audio mode : %d\n", val); 5fa60ff2 Maruthi Srinivas Bayyavarapu 2017-03-29 115 ret = -ENODEV; 5fa60ff2 Maruthi Srinivas Bayyavarapu 2017-03-29 116 goto unmap_mmio; 5fa60ff2 Maruthi Srinivas Bayyavarapu 2017-03-29 117 } 5fa60ff2 Maruthi Srinivas Bayyavarapu 2017-03-29 118 1e29b934 Maruthi Srinivas Bayyavarapu 2017-03-27 119 return 0; 1e29b934 Maruthi Srinivas Bayyavarapu 2017-03-27 120 5fa60ff2 Maruthi Srinivas Bayyavarapu 2017-03-29 121 unmap_mmio: 5fa60ff2 Maruthi Srinivas Bayyavarapu 2017-03-29 @122 pci_disable_msi(pci); 5fa60ff2 Maruthi Srinivas Bayyavarapu 2017-03-29 123 iounmap(adata->acp3x_base); 1e29b934 Maruthi Srinivas Bayyavarapu 2017-03-27 124 release_regions: 1e29b934 Maruthi Srinivas Bayyavarapu 2017-03-27 125 pci_release_regions(pci); 1e29b934 Maruthi Srinivas Bayyavarapu 2017-03-27 126 disable_pci: 1e29b934 Maruthi Srinivas Bayyavarapu 2017-03-27 127 pci_disable_device(pci); 1e29b934 Maruthi Srinivas Bayyavarapu 2017-03-27 128 1e29b934 Maruthi Srinivas Bayyavarapu 2017-03-27 129 return ret; 1e29b934 Maruthi Srinivas Bayyavarapu 2017-03-27 130 } 1e29b934 Maruthi Srinivas Bayyavarapu 2017-03-27 131 1e29b934 Maruthi Srinivas Bayyavarapu 2017-03-27 132 static void snd_acp3x_remove(struct pci_dev *pci) 1e29b934 Maruthi Srinivas Bayyavarapu 2017-03-27 133 { 1e29b934 Maruthi Srinivas Bayyavarapu 2017-03-27 134 struct acp3x_dev_data *adata = pci_get_drvdata(pci); 1e29b934 Maruthi Srinivas Bayyavarapu 2017-03-27 135 5fa60ff2 Maruthi Srinivas Bayyavarapu 2017-03-29 136 platform_device_unregister(adata->pdev); 1e29b934 Maruthi Srinivas Bayyavarapu 2017-03-27 137 iounmap(adata->acp3x_base); 5fa60ff2 Maruthi Srinivas Bayyavarapu 2017-03-29 138 5fa60ff2 Maruthi Srinivas Bayyavarapu 2017-03-29 139 pci_disable_msi(pci); 1e29b934 Maruthi Srinivas Bayyavarapu 2017-03-27 140 pci_release_regions(pci); 1e29b934 Maruthi Srinivas Bayyavarapu 2017-03-27 141 pci_disable_device(pci); 1e29b934 Maruthi Srinivas Bayyavarapu 2017-03-27 142 } 1e29b934 Maruthi Srinivas Bayyavarapu 2017-03-27 143 1e29b934 Maruthi Srinivas Bayyavarapu 2017-03-27 144 static const struct pci_device_id snd_acp3x_ids[] = { 1e29b934 Maruthi Srinivas Bayyavarapu 2017-03-27 145 { PCI_DEVICE(PCI_VENDOR_ID_AMD, 0x15e2), 1e29b934 Maruthi Srinivas Bayyavarapu 2017-03-27 146 .class = PCI_CLASS_MULTIMEDIA_OTHER << 8, 1e29b934 Maruthi Srinivas Bayyavarapu 2017-03-27 147 .class_mask = 0xffffff }, 1e29b934 Maruthi Srinivas Bayyavarapu 2017-03-27 148 { 0, }, 1e29b934 Maruthi Srinivas Bayyavarapu 2017-03-27 149 }; 1e29b934 Maruthi Srinivas Bayyavarapu 2017-03-27 150 MODULE_DEVICE_TABLE(pci, snd_acp3x_ids); 1e29b934 Maruthi Srinivas Bayyavarapu 2017-03-27 151 1e29b934 Maruthi Srinivas Bayyavarapu 2017-03-27 152 static struct pci_driver acp3x_driver = { 1e29b934 Maruthi Srinivas Bayyavarapu 2017-03-27 153 .name = KBUILD_MODNAME, 1e29b934 Maruthi Srinivas Bayyavarapu 2017-03-27 154 .id_table = snd_acp3x_ids, 1e29b934 Maruthi Srinivas Bayyavarapu 2017-03-27 155 .probe = snd_acp3x_probe, 1e29b934 Maruthi Srinivas Bayyavarapu 2017-03-27 156 .remove = snd_acp3x_remove, 1e29b934 Maruthi Srinivas Bayyavarapu 2017-03-27 157 }; 1e29b934 Maruthi Srinivas Bayyavarapu 2017-03-27 158 1e29b934 Maruthi Srinivas Bayyavarapu 2017-03-27 @159 module_pci_driver(acp3x_driver); 1e29b934 Maruthi Srinivas Bayyavarapu 2017-03-27 160 :::::: The code at line 58 was first introduced by commit :::::: 5fa60ff2250dd9f27b508e60e764c17fe684c9dc ASoC: AMD: create ACP3x PCM platform device :::::: TO: Maruthi Srinivas Bayyavarapu <Maruthi.Bayyavarapu@xxxxxxx> :::::: CC: Alex Deucher <alexander.deucher@xxxxxxx> --- 0-DAY kernel test infrastructure Open Source Technology Center https://lists.01.org/pipermail/kbuild-all Intel Corporation
Attachment:
.config.gz
Description: application/gzip
_______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/dri-devel