tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master head: bcf876870b95592b52519ed4aafcf9d95999bc9c commit: 670d0a4b10704667765f7d18f7592993d02783aa sparse: use identifiers to define address spaces date: 7 weeks ago config: sparc-randconfig-s032-20200803 (attached as .config) compiler: sparc64-linux-gcc (GCC) 9.3.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.2-117-g8c7aee71-dirty git checkout 670d0a4b10704667765f7d18f7592993d02783aa # save the attached .config to linux build tree COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' ARCH=sparc If you fix the issue, kindly add following tag as appropriate Reported-by: kernel test robot sparse warnings: (new ones prefixed by >>) drivers/block/floppy.c: note: in included file (through arch/sparc/include/asm/floppy.h): arch/sparc/include/asm/floppy_64.h:46:15: sparse: sparse: symbol 'fdc_status' was not declared. Should it be static? >> arch/sparc/include/asm/floppy_64.h:109:36: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got unsigned char volatile * @@ >> arch/sparc/include/asm/floppy_64.h:109:36: sparse: expected void const volatile [noderef] __iomem *addr arch/sparc/include/asm/floppy_64.h:109:36: sparse: got unsigned char volatile * arch/sparc/include/asm/floppy_64.h:111:36: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got unsigned char volatile * @@ arch/sparc/include/asm/floppy_64.h:111:36: sparse: expected void const volatile [noderef] __iomem *addr arch/sparc/include/asm/floppy_64.h:111:36: sparse: got unsigned char volatile * arch/sparc/include/asm/floppy_64.h:114:36: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got unsigned char volatile * @@ arch/sparc/include/asm/floppy_64.h:114:36: sparse: expected void const volatile [noderef] __iomem *addr arch/sparc/include/asm/floppy_64.h:114:36: sparse: got unsigned char volatile * >> arch/sparc/include/asm/floppy_64.h:129:37: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got unsigned char volatile * @@ >> arch/sparc/include/asm/floppy_64.h:129:37: sparse: expected void volatile [noderef] __iomem *addr arch/sparc/include/asm/floppy_64.h:129:37: sparse: got unsigned char volatile * arch/sparc/include/asm/floppy_64.h:132:37: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got unsigned char volatile * @@ arch/sparc/include/asm/floppy_64.h:132:37: sparse: expected void volatile [noderef] __iomem *addr arch/sparc/include/asm/floppy_64.h:132:37: sparse: got unsigned char volatile * arch/sparc/include/asm/floppy_64.h:135:37: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got unsigned char volatile * @@ arch/sparc/include/asm/floppy_64.h:135:37: sparse: expected void volatile [noderef] __iomem *addr arch/sparc/include/asm/floppy_64.h:135:37: sparse: got unsigned char volatile * arch/sparc/include/asm/floppy_64.h:138:37: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got unsigned char volatile * @@ arch/sparc/include/asm/floppy_64.h:138:37: sparse: expected void volatile [noderef] __iomem *addr arch/sparc/include/asm/floppy_64.h:138:37: sparse: got unsigned char volatile * arch/sparc/include/asm/floppy_64.h:154:15: sparse: sparse: symbol 'pdma_vaddr' was not declared. Should it be static? arch/sparc/include/asm/floppy_64.h:155:15: sparse: sparse: symbol 'pdma_size' was not declared. Should it be static? arch/sparc/include/asm/floppy_64.h:156:14: sparse: sparse: symbol 'doing_pdma' was not declared. Should it be static? arch/sparc/include/asm/floppy_64.h:159:6: sparse: sparse: symbol 'pdma_base' was not declared. Should it be static? arch/sparc/include/asm/floppy_64.h:160:15: sparse: sparse: symbol 'pdma_areasize' was not declared. Should it be static? arch/sparc/include/asm/floppy_64.h:200:13: sparse: sparse: symbol 'sparc_floppy_irq' was not declared. Should it be static? arch/sparc/include/asm/floppy_64.h:437:6: sparse: sparse: symbol 'sun_pci_fd_dma_callback' was not declared. Should it be static? arch/sparc/include/asm/floppy_64.h:735:25: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got unsigned char volatile * @@ arch/sparc/include/asm/floppy_64.h:735:25: sparse: expected void const volatile [noderef] __iomem *addr arch/sparc/include/asm/floppy_64.h:735:25: sparse: got unsigned char volatile * vim +109 arch/sparc/include/asm/floppy_64.h f5e706ad886b6a include/asm-sparc/floppy_64.h Sam Ravnborg 2008-07-17 43 f5e706ad886b6a include/asm-sparc/floppy_64.h Sam Ravnborg 2008-07-17 44 /* You'll only ever find one controller on an Ultra anyways. */ f5e706ad886b6a include/asm-sparc/floppy_64.h Sam Ravnborg 2008-07-17 45 static struct sun_flpy_controller *sun_fdc = (struct sun_flpy_controller *)-1; f5e706ad886b6a include/asm-sparc/floppy_64.h Sam Ravnborg 2008-07-17 @46 unsigned long fdc_status; 94a0cb1fc61ab7 arch/sparc/include/asm/floppy_64.h Grant Likely 2010-07-22 47 static struct platform_device *floppy_op = NULL; f5e706ad886b6a include/asm-sparc/floppy_64.h Sam Ravnborg 2008-07-17 48 f5e706ad886b6a include/asm-sparc/floppy_64.h Sam Ravnborg 2008-07-17 49 struct sun_floppy_ops { 6cb7e69671843c arch/sparc/include/asm/floppy_64.h Willy Tarreau 2020-03-31 50 unsigned char (*fd_inb) (unsigned long port, unsigned int reg); 6cb7e69671843c arch/sparc/include/asm/floppy_64.h Willy Tarreau 2020-03-31 51 void (*fd_outb) (unsigned char value, unsigned long base, 6cb7e69671843c arch/sparc/include/asm/floppy_64.h Willy Tarreau 2020-03-31 52 unsigned int reg); f5e706ad886b6a include/asm-sparc/floppy_64.h Sam Ravnborg 2008-07-17 53 void (*fd_enable_dma) (void); f5e706ad886b6a include/asm-sparc/floppy_64.h Sam Ravnborg 2008-07-17 54 void (*fd_disable_dma) (void); f5e706ad886b6a include/asm-sparc/floppy_64.h Sam Ravnborg 2008-07-17 55 void (*fd_set_dma_mode) (int); f5e706ad886b6a include/asm-sparc/floppy_64.h Sam Ravnborg 2008-07-17 56 void (*fd_set_dma_addr) (char *); f5e706ad886b6a include/asm-sparc/floppy_64.h Sam Ravnborg 2008-07-17 57 void (*fd_set_dma_count) (int); f5e706ad886b6a include/asm-sparc/floppy_64.h Sam Ravnborg 2008-07-17 58 unsigned int (*get_dma_residue) (void); f5e706ad886b6a include/asm-sparc/floppy_64.h Sam Ravnborg 2008-07-17 59 int (*fd_request_irq) (void); f5e706ad886b6a include/asm-sparc/floppy_64.h Sam Ravnborg 2008-07-17 60 void (*fd_free_irq) (void); f5e706ad886b6a include/asm-sparc/floppy_64.h Sam Ravnborg 2008-07-17 61 int (*fd_eject) (int); f5e706ad886b6a include/asm-sparc/floppy_64.h Sam Ravnborg 2008-07-17 62 }; f5e706ad886b6a include/asm-sparc/floppy_64.h Sam Ravnborg 2008-07-17 63 f5e706ad886b6a include/asm-sparc/floppy_64.h Sam Ravnborg 2008-07-17 64 static struct sun_floppy_ops sun_fdops; f5e706ad886b6a include/asm-sparc/floppy_64.h Sam Ravnborg 2008-07-17 65 6cb7e69671843c arch/sparc/include/asm/floppy_64.h Willy Tarreau 2020-03-31 66 #define fd_inb(base, reg) sun_fdops.fd_inb(base, reg) 6cb7e69671843c arch/sparc/include/asm/floppy_64.h Willy Tarreau 2020-03-31 67 #define fd_outb(value, base, reg) sun_fdops.fd_outb(value, base, reg) f5e706ad886b6a include/asm-sparc/floppy_64.h Sam Ravnborg 2008-07-17 68 #define fd_enable_dma() sun_fdops.fd_enable_dma() f5e706ad886b6a include/asm-sparc/floppy_64.h Sam Ravnborg 2008-07-17 69 #define fd_disable_dma() sun_fdops.fd_disable_dma() f5e706ad886b6a include/asm-sparc/floppy_64.h Sam Ravnborg 2008-07-17 70 #define fd_request_dma() (0) /* nothing... */ f5e706ad886b6a include/asm-sparc/floppy_64.h Sam Ravnborg 2008-07-17 71 #define fd_free_dma() /* nothing... */ f5e706ad886b6a include/asm-sparc/floppy_64.h Sam Ravnborg 2008-07-17 72 #define fd_clear_dma_ff() /* nothing... */ f5e706ad886b6a include/asm-sparc/floppy_64.h Sam Ravnborg 2008-07-17 73 #define fd_set_dma_mode(mode) sun_fdops.fd_set_dma_mode(mode) f5e706ad886b6a include/asm-sparc/floppy_64.h Sam Ravnborg 2008-07-17 74 #define fd_set_dma_addr(addr) sun_fdops.fd_set_dma_addr(addr) f5e706ad886b6a include/asm-sparc/floppy_64.h Sam Ravnborg 2008-07-17 75 #define fd_set_dma_count(count) sun_fdops.fd_set_dma_count(count) f5e706ad886b6a include/asm-sparc/floppy_64.h Sam Ravnborg 2008-07-17 76 #define get_dma_residue(x) sun_fdops.get_dma_residue() f5e706ad886b6a include/asm-sparc/floppy_64.h Sam Ravnborg 2008-07-17 77 #define fd_request_irq() sun_fdops.fd_request_irq() f5e706ad886b6a include/asm-sparc/floppy_64.h Sam Ravnborg 2008-07-17 78 #define fd_free_irq() sun_fdops.fd_free_irq() f5e706ad886b6a include/asm-sparc/floppy_64.h Sam Ravnborg 2008-07-17 79 #define fd_eject(drive) sun_fdops.fd_eject(drive) f5e706ad886b6a include/asm-sparc/floppy_64.h Sam Ravnborg 2008-07-17 80 f5e706ad886b6a include/asm-sparc/floppy_64.h Sam Ravnborg 2008-07-17 81 /* Super paranoid... */ f5e706ad886b6a include/asm-sparc/floppy_64.h Sam Ravnborg 2008-07-17 82 #undef HAVE_DISABLE_HLT f5e706ad886b6a include/asm-sparc/floppy_64.h Sam Ravnborg 2008-07-17 83 f5e706ad886b6a include/asm-sparc/floppy_64.h Sam Ravnborg 2008-07-17 84 static int sun_floppy_types[2] = { 0, 0 }; f5e706ad886b6a include/asm-sparc/floppy_64.h Sam Ravnborg 2008-07-17 85 f5e706ad886b6a include/asm-sparc/floppy_64.h Sam Ravnborg 2008-07-17 86 /* Here is where we catch the floppy driver trying to initialize, f5e706ad886b6a include/asm-sparc/floppy_64.h Sam Ravnborg 2008-07-17 87 * therefore this is where we call the PROM device tree probing f5e706ad886b6a include/asm-sparc/floppy_64.h Sam Ravnborg 2008-07-17 88 * routine etc. on the Sparc. f5e706ad886b6a include/asm-sparc/floppy_64.h Sam Ravnborg 2008-07-17 89 */ f5e706ad886b6a include/asm-sparc/floppy_64.h Sam Ravnborg 2008-07-17 90 #define FLOPPY0_TYPE sun_floppy_init() f5e706ad886b6a include/asm-sparc/floppy_64.h Sam Ravnborg 2008-07-17 91 #define FLOPPY1_TYPE sun_floppy_types[1] f5e706ad886b6a include/asm-sparc/floppy_64.h Sam Ravnborg 2008-07-17 92 f5e706ad886b6a include/asm-sparc/floppy_64.h Sam Ravnborg 2008-07-17 93 #define FDC1 ((unsigned long)sun_fdc) f5e706ad886b6a include/asm-sparc/floppy_64.h Sam Ravnborg 2008-07-17 94 f5e706ad886b6a include/asm-sparc/floppy_64.h Sam Ravnborg 2008-07-17 95 #define N_FDC 1 f5e706ad886b6a include/asm-sparc/floppy_64.h Sam Ravnborg 2008-07-17 96 #define N_DRIVE 8 f5e706ad886b6a include/asm-sparc/floppy_64.h Sam Ravnborg 2008-07-17 97 f5e706ad886b6a include/asm-sparc/floppy_64.h Sam Ravnborg 2008-07-17 98 /* No 64k boundary crossing problems on the Sparc. */ f5e706ad886b6a include/asm-sparc/floppy_64.h Sam Ravnborg 2008-07-17 99 #define CROSS_64KB(a,s) (0) f5e706ad886b6a include/asm-sparc/floppy_64.h Sam Ravnborg 2008-07-17 100 6cb7e69671843c arch/sparc/include/asm/floppy_64.h Willy Tarreau 2020-03-31 101 static unsigned char sun_82077_fd_inb(unsigned long base, unsigned int reg) f5e706ad886b6a include/asm-sparc/floppy_64.h Sam Ravnborg 2008-07-17 102 { f5e706ad886b6a include/asm-sparc/floppy_64.h Sam Ravnborg 2008-07-17 103 udelay(5); 6cb7e69671843c arch/sparc/include/asm/floppy_64.h Willy Tarreau 2020-03-31 104 switch (reg) { f5e706ad886b6a include/asm-sparc/floppy_64.h Sam Ravnborg 2008-07-17 105 default: 6cb7e69671843c arch/sparc/include/asm/floppy_64.h Willy Tarreau 2020-03-31 106 printk("floppy: Asked to read unknown port %x\n", reg); f5e706ad886b6a include/asm-sparc/floppy_64.h Sam Ravnborg 2008-07-17 107 panic("floppy: Port bolixed."); 6cb7e69671843c arch/sparc/include/asm/floppy_64.h Willy Tarreau 2020-03-31 108 case FD_STATUS: f5e706ad886b6a include/asm-sparc/floppy_64.h Sam Ravnborg 2008-07-17 @109 return sbus_readb(&sun_fdc->status_82077) & ~STATUS_DMA; 6cb7e69671843c arch/sparc/include/asm/floppy_64.h Willy Tarreau 2020-03-31 110 case FD_DATA: f5e706ad886b6a include/asm-sparc/floppy_64.h Sam Ravnborg 2008-07-17 111 return sbus_readb(&sun_fdc->data_82077); 6cb7e69671843c arch/sparc/include/asm/floppy_64.h Willy Tarreau 2020-03-31 112 case FD_DIR: f5e706ad886b6a include/asm-sparc/floppy_64.h Sam Ravnborg 2008-07-17 113 /* XXX: Is DCL on 0x80 in sun4m? */ f5e706ad886b6a include/asm-sparc/floppy_64.h Sam Ravnborg 2008-07-17 114 return sbus_readb(&sun_fdc->dir_82077); 6cb79b3f3ba2b1 arch/sparc/include/asm/floppy_64.h Joe Perches 2011-06-03 115 } f5e706ad886b6a include/asm-sparc/floppy_64.h Sam Ravnborg 2008-07-17 116 panic("sun_82072_fd_inb: How did I get here?"); f5e706ad886b6a include/asm-sparc/floppy_64.h Sam Ravnborg 2008-07-17 117 } f5e706ad886b6a include/asm-sparc/floppy_64.h Sam Ravnborg 2008-07-17 118 6cb7e69671843c arch/sparc/include/asm/floppy_64.h Willy Tarreau 2020-03-31 119 static void sun_82077_fd_outb(unsigned char value, unsigned long base, 6cb7e69671843c arch/sparc/include/asm/floppy_64.h Willy Tarreau 2020-03-31 120 unsigned int reg) f5e706ad886b6a include/asm-sparc/floppy_64.h Sam Ravnborg 2008-07-17 121 { f5e706ad886b6a include/asm-sparc/floppy_64.h Sam Ravnborg 2008-07-17 122 udelay(5); 6cb7e69671843c arch/sparc/include/asm/floppy_64.h Willy Tarreau 2020-03-31 123 switch (reg) { f5e706ad886b6a include/asm-sparc/floppy_64.h Sam Ravnborg 2008-07-17 124 default: 6cb7e69671843c arch/sparc/include/asm/floppy_64.h Willy Tarreau 2020-03-31 125 printk("floppy: Asked to write to unknown port %x\n", reg); f5e706ad886b6a include/asm-sparc/floppy_64.h Sam Ravnborg 2008-07-17 126 panic("floppy: Port bolixed."); 6cb7e69671843c arch/sparc/include/asm/floppy_64.h Willy Tarreau 2020-03-31 127 case FD_DOR: f5e706ad886b6a include/asm-sparc/floppy_64.h Sam Ravnborg 2008-07-17 128 /* Happily, the 82077 has a real DOR register. */ f5e706ad886b6a include/asm-sparc/floppy_64.h Sam Ravnborg 2008-07-17 @129 sbus_writeb(value, &sun_fdc->dor_82077); f5e706ad886b6a include/asm-sparc/floppy_64.h Sam Ravnborg 2008-07-17 130 break; 6cb7e69671843c arch/sparc/include/asm/floppy_64.h Willy Tarreau 2020-03-31 131 case FD_DATA: f5e706ad886b6a include/asm-sparc/floppy_64.h Sam Ravnborg 2008-07-17 132 sbus_writeb(value, &sun_fdc->data_82077); f5e706ad886b6a include/asm-sparc/floppy_64.h Sam Ravnborg 2008-07-17 133 break; 6cb7e69671843c arch/sparc/include/asm/floppy_64.h Willy Tarreau 2020-03-31 134 case FD_DCR: f5e706ad886b6a include/asm-sparc/floppy_64.h Sam Ravnborg 2008-07-17 135 sbus_writeb(value, &sun_fdc->dcr_82077); f5e706ad886b6a include/asm-sparc/floppy_64.h Sam Ravnborg 2008-07-17 136 break; 6cb7e69671843c arch/sparc/include/asm/floppy_64.h Willy Tarreau 2020-03-31 137 case FD_DSR: f5e706ad886b6a include/asm-sparc/floppy_64.h Sam Ravnborg 2008-07-17 138 sbus_writeb(value, &sun_fdc->status_82077); f5e706ad886b6a include/asm-sparc/floppy_64.h Sam Ravnborg 2008-07-17 139 break; 6cb79b3f3ba2b1 arch/sparc/include/asm/floppy_64.h Joe Perches 2011-06-03 140 } f5e706ad886b6a include/asm-sparc/floppy_64.h Sam Ravnborg 2008-07-17 141 return; f5e706ad886b6a include/asm-sparc/floppy_64.h Sam Ravnborg 2008-07-17 142 } f5e706ad886b6a include/asm-sparc/floppy_64.h Sam Ravnborg 2008-07-17 143 :::::: The code at line 109 was first introduced by commit :::::: f5e706ad886b6a5eb59637830110b09ccebf01c5 sparc: join the remaining header files :::::: TO: Sam Ravnborg :::::: CC: David S. Miller --- 0-DAY CI Kernel Test Service, Intel Corporation https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org