* [android-goldfish:android-goldfish-4.14-dev 14/17] drivers/misc/goldfish_address_space.c:792:8: error: implicit declaration of function 'pci_request_region'; did you mean 'pci_request_regions'?
@ 2020-04-09 4:40 kbuild test robot
0 siblings, 0 replies; only message in thread
From: kbuild test robot @ 2020-04-09 4:40 UTC (permalink / raw)
To: kbuild-all
[-- Attachment #1: Type: text/plain, Size: 7097 bytes --]
tree: https://android.googlesource.com/kernel/goldfish android-goldfish-4.14-dev
head: 6f3fc9538452ba8c921ae52bb858c116bdedf43a
commit: e72b1d8f87f12eaf34b01050e86583c6e22ea473 [14/17] goldfish_address_space: add a driver
config: mips-allyesconfig (attached as .config)
compiler: mips-linux-gcc (GCC) 7.5.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 e72b1d8f87f12eaf34b01050e86583c6e22ea473
# save the attached .config to linux build tree
GCC_VERSION=7.5.0 make.cross ARCH=mips
If you fix the issue, kindly add following tag as appropriate
Reported-by: kbuild test robot <lkp@intel.com>
All error/warnings (new ones prefixed by >>):
drivers/misc/goldfish_address_space.c: In function 'create_as_device':
>> drivers/misc/goldfish_address_space.c:792:8: error: implicit declaration of function 'pci_request_region'; did you mean 'pci_request_regions'? [-Werror=implicit-function-declaration]
res = pci_request_region(dev,
^~~~~~~~~~~~~~~~~~
pci_request_regions
>> drivers/misc/goldfish_address_space.c:858:2: error: implicit declaration of function 'pci_release_region'; did you mean 'pci_release_regions'? [-Werror=implicit-function-declaration]
pci_release_region(dev, AS_PCI_AREA_BAR_ID);
^~~~~~~~~~~~~~~~~~
pci_release_regions
drivers/misc/goldfish_address_space.c: At top level:
>> drivers/misc/goldfish_address_space.c:930:1: warning: data definition has no type or storage class
module_pci_driver(goldfish_address_space_driver);
^~~~~~~~~~~~~~~~~
>> drivers/misc/goldfish_address_space.c:930:1: error: type defaults to 'int' in declaration of 'module_pci_driver' [-Werror=implicit-int]
>> drivers/misc/goldfish_address_space.c:930:1: warning: parameter names (without types) in function declaration
drivers/misc/goldfish_address_space.c:923:26: warning: 'goldfish_address_space_driver' defined but not used [-Wunused-variable]
static struct pci_driver goldfish_address_space_driver = {
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
cc1: some warnings being treated as errors
vim +792 drivers/misc/goldfish_address_space.c
781
782 static int __must_check
783 create_as_device(struct pci_dev *dev, const struct pci_device_id *id)
784 {
785 int res;
786 struct as_device_state *state;
787
788 state = kzalloc(sizeof(*state), GFP_KERNEL);
789 if (!state)
790 return -ENOMEM;
791
> 792 res = pci_request_region(dev,
793 AS_PCI_CONTROL_BAR_ID,
794 "Address space control");
795 if (res) {
796 pr_err("(bn 0x%X, sn 0x%X) failed to allocate PCI resource for BAR%d",
797 dev->bus->number,
798 dev->devfn,
799 AS_PCI_CONTROL_BAR_ID);
800 goto out_free_device_state;
801 }
802
803 res = pci_request_region(dev,
804 AS_PCI_AREA_BAR_ID,
805 "Address space area");
806 if (res) {
807 pr_err("(bn 0x%X, sn 0x%X) failed to allocate PCI resource for BAR%d",
808 dev->bus->number,
809 dev->devfn,
810 AS_PCI_AREA_BAR_ID);
811 goto out_release_control_bar;
812 }
813
814 fill_miscdevice(&state->miscdevice);
815 res = misc_register(&state->miscdevice);
816 if (res)
817 goto out_release_area_bar;
818
819 state->io_registers = ioremap_pci_bar(dev,
820 AS_PCI_CONTROL_BAR_ID);
821 if (IS_ERR(state->io_registers)) {
822 res = PTR_ERR(state->io_registers);
823 goto out_misc_deregister;
824 }
825
826 state->address_area = memremap_pci_bar(dev,
827 AS_PCI_AREA_BAR_ID,
828 MEMREMAP_WB);
829 if (IS_ERR(state->address_area)) {
830 res = PTR_ERR(state->address_area);
831 goto out_iounmap;
832 }
833
834 state->address_area_phys_address =
835 pci_resource_start(dev, AS_PCI_AREA_BAR_ID);
836
837 as_write_register(state->io_registers,
838 AS_REGISTER_GUEST_PAGE_SIZE,
839 PAGE_SIZE);
840 as_write_register(state->io_registers,
841 AS_REGISTER_PHYS_START_LOW,
842 lower_32_bits(state->address_area_phys_address));
843 as_write_register(state->io_registers,
844 AS_REGISTER_PHYS_START_HIGH,
845 upper_32_bits(state->address_area_phys_address));
846
847 state->dev = dev;
848 mutex_init(&state->registers_lock);
849
850 pci_set_drvdata(dev, state);
851 return 0;
852
853 out_iounmap:
854 iounmap(state->io_registers);
855 out_misc_deregister:
856 misc_deregister(&state->miscdevice);
857 out_release_area_bar:
> 858 pci_release_region(dev, AS_PCI_AREA_BAR_ID);
859 out_release_control_bar:
860 pci_release_region(dev, AS_PCI_CONTROL_BAR_ID);
861 out_free_device_state:
862 kzfree(state);
863
864 return res;
865 }
866
867 static void as_pci_destroy_device(struct as_device_state *state)
868 {
869 memunmap(state->address_area);
870 iounmap(state->io_registers);
871 misc_deregister(&state->miscdevice);
872 pci_release_region(state->dev, AS_PCI_AREA_BAR_ID);
873 pci_release_region(state->dev, AS_PCI_CONTROL_BAR_ID);
874 kfree(state);
875 }
876
877 static int __must_check
878 as_pci_probe(struct pci_dev *dev, const struct pci_device_id *id)
879 {
880 int res;
881 u8 hardware_revision;
882
883 res = pci_enable_device(dev);
884 if (res)
885 return res;
886
887 res = pci_read_config_byte(dev, PCI_REVISION_ID, &hardware_revision);
888 if (res)
889 goto out_disable_pci;
890
891 switch (hardware_revision) {
892 case 1:
893 res = create_as_device(dev, id);
894 break;
895
896 default:
897 res = -ENODEV;
898 goto out_disable_pci;
899 }
900
901 return 0;
902
903 out_disable_pci:
904 pci_disable_device(dev);
905
906 return res;
907 }
908
909 static void as_pci_remove(struct pci_dev *dev)
910 {
911 struct as_device_state *state = pci_get_drvdata(dev);
912
913 as_pci_destroy_device(state);
914 pci_disable_device(dev);
915 }
916
917 static const struct pci_device_id as_pci_tbl[] = {
918 { PCI_DEVICE(AS_PCI_VENDOR_ID, AS_PCI_DEVICE_ID), },
919 { }
920 };
921 MODULE_DEVICE_TABLE(pci, as_pci_tbl);
922
923 static struct pci_driver goldfish_address_space_driver = {
924 .name = GOLDFISH_ADDRESS_SPACE_DEVICE_NAME,
925 .id_table = as_pci_tbl,
926 .probe = as_pci_probe,
927 .remove = as_pci_remove,
928 };
929
> 930 module_pci_driver(goldfish_address_space_driver);
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org
[-- Attachment #2: config.gz --]
[-- Type: application/gzip, Size: 47784 bytes --]
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2020-04-09 4:40 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2020-04-09 4:40 [android-goldfish:android-goldfish-4.14-dev 14/17] drivers/misc/goldfish_address_space.c:792:8: error: implicit declaration of function 'pci_request_region'; did you mean 'pci_request_regions'? kbuild test robot
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.