Hi Chenyang,

Thank you for the patch! Perhaps something to improve:

[auto build test WARNING on drm/drm-next]
[also build test WARNING on v5.18-rc3 next-20220422]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch]

url:    
https://github.com/intel-lab-lkp/linux/commits/Chenyang-Li/drm-loongson-Add-DRM-Driver-for-Loongson-7A1000-bridge-chip/20220422-161914
base:   git://anongit.freedesktop.org/drm/drm drm-next
config: arm-randconfig-s031-20220422 
(https://download.01.org/0day-ci/archive/20220423/202204230030.kzgmtgoq-...@intel.com/config)
compiler: arm-linux-gnueabi-gcc (GCC) 11.2.0
reproduce:
        wget 
https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O 
~/bin/make.cross
        chmod +x ~/bin/make.cross
        # apt-get install sparse
        # sparse version: v0.6.4-dirty
        # 
https://github.com/intel-lab-lkp/linux/commit/e9a9964d58e6cc797a113fa47f54583c10908d63
        git remote add linux-review https://github.com/intel-lab-lkp/linux
        git fetch --no-tags linux-review 
Chenyang-Li/drm-loongson-Add-DRM-Driver-for-Loongson-7A1000-bridge-chip/20220422-161914
        git checkout e9a9964d58e6cc797a113fa47f54583c10908d63
        # save the config file
        mkdir build_dir && cp config build_dir/.config
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-11.2.0 make.cross C=1 
CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' O=build_dir ARCH=arm 
SHELL=/bin/bash drivers/gpu/drm/loongson/

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <l...@intel.com>


sparse warnings: (new ones prefixed by >>)
>> drivers/gpu/drm/loongson/loongson_drv.c:91:9: sparse: sparse: cast removes 
>> address space '__iomem' of expression
   drivers/gpu/drm/loongson/loongson_drv.c:99:5: sparse: sparse: symbol 
'loongson_modeset_init' was not declared. Should it be static?

vim +/__iomem +91 drivers/gpu/drm/loongson/loongson_drv.c

    36  
    37  static int loongson_device_init(struct drm_device *dev)
    38  {
    39          struct loongson_device *ldev = to_loongson_device(dev);
    40          struct pci_dev *pdev = to_pci_dev(dev->dev);
    41          struct pci_dev *gpu_pdev;
    42          resource_size_t aper_base;
    43          resource_size_t aper_size;
    44          resource_size_t mmio_base;
    45          resource_size_t mmio_size;
    46          int ret;
    47  
    48          /* GPU MEM */
    49          /* We need get 7A-gpu pci device information for ldev->gpu_pdev 
*/
    50          /* dev->pdev save 7A-dc pci device information */
    51          gpu_pdev = pci_get_device(PCI_VENDOR_ID_LOONGSON,
    52                                    PCI_DEVICE_ID_LOONGSON_GPU, NULL);
    53          ret = pci_enable_device(gpu_pdev);
    54          if (ret)
    55                  return ret;
    56          pci_set_drvdata(gpu_pdev, dev);
    57  
    58          aper_base = pci_resource_start(gpu_pdev, 2);
    59          aper_size = pci_resource_len(gpu_pdev, 2);
    60          ldev->vram_start = aper_base;
    61          ldev->vram_size = aper_size;
    62  
    63          if (!devm_request_mem_region(dev->dev, ldev->vram_start,
    64                                       ldev->vram_size, "loongson_vram")) 
{
    65                  drm_err(dev, "Can't reserve VRAM\n");
    66                  return -ENXIO;
    67          }
    68  
    69          /* DC MEM */
    70          mmio_base = pci_resource_start(pdev, 0);
    71          mmio_size = pci_resource_len(pdev, 0);
    72          ldev->mmio = devm_ioremap(dev->dev, mmio_base, mmio_size);
    73          if (!ldev->mmio) {
    74                  drm_err(dev, "Cannot map mmio region\n");
    75                  return -ENOMEM;
    76          }
    77  
    78          if (!devm_request_mem_region(dev->dev, mmio_base,
    79                                       mmio_size, "loongson_mmio")) {
    80                  drm_err(dev, "Can't reserve mmio registers\n");
    81                  return -ENOMEM;
    82          }
    83  
    84          /* DC IO */
    85          ldev->io = devm_ioremap(dev->dev, LS7A_CHIPCFG_REG_BASE, 0xf);
    86          if (!ldev->io)
    87                  return -ENOMEM;
    88  
    89          ldev->num_crtc = 2;
    90  
  > 91          drm_info(dev, "DC mmio base 0x%llx size 0x%llx io 0x%llx\n",
    92                   mmio_base, mmio_size, *(u64 *)ldev->io);
    93          drm_info(dev, "GPU vram start = 0x%x size = 0x%x\n",
    94                   ldev->vram_start, ldev->vram_size);
    95  
    96          return 0;
    97  }
    98  

-- 
0-DAY CI Kernel Test Service
https://01.org/lkp
_______________________________________________
devel mailing list
de...@linuxdriverproject.org
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel

Reply via email to