tree: https://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-gpio.git pin2mask-removal head: f18d3c98c828e720d9c202ca196fc86fa77c6acb commit: 636039bd093e898aef96ecbf338b7e7b7d09c0e5 [31/33] gpio: mpc8xxx: Do not reverse bits using bgpio config: xtensa-allyesconfig (attached as .config) compiler: xtensa-linux-gcc (GCC) 4.9.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 636039bd093e898aef96ecbf338b7e7b7d09c0e5 # save the attached .config to linux build tree make.cross ARCH=xtensa All error/warnings (new ones prefixed by >>): drivers//gpio/gpio-mpc8xxx.c: In function 'mpc8572_gpio_get': >> drivers//gpio/gpio-mpc8xxx.c:73:46: error: 'offset' undeclared (first use in this function) return !!((val | out_shadow) & mpc_pin2mask(offset)); ^ drivers//gpio/gpio-mpc8xxx.c:73:46: note: each undeclared identifier is reported only once for each function it appears in >> drivers//gpio/gpio-mpc8xxx.c:74:1: warning: control reaches end of non-void function [-Wreturn-type] } ^ vim +/offset +73 drivers//gpio/gpio-mpc8xxx.c 57 58 /* Workaround GPIO 1 errata on MPC8572/MPC8536. The status of GPIOs 59 * defined as output cannot be determined by reading GPDAT register, 60 * so we use shadow data register instead. The status of input pins 61 * is determined by reading GPDAT register. 62 */ 63 static int mpc8572_gpio_get(struct gpio_chip *gc, unsigned int gpio) 64 { 65 u32 val; 66 struct mpc8xxx_gpio_chip *mpc8xxx_gc = gpiochip_get_data(gc); 67 u32 out_mask, out_shadow; 68 69 out_mask = gc->read_reg(mpc8xxx_gc->regs + GPIO_DIR); 70 val = gc->read_reg(mpc8xxx_gc->regs + GPIO_DAT) & ~out_mask; 71 out_shadow = gc->bgpio_data & out_mask; 72 > 73 return !!((val | out_shadow) & mpc_pin2mask(offset)); > 74 } 75 --- 0-DAY kernel test infrastructure Open Source Technology Center https://lists.01.org/pipermail/kbuild-all Intel Corporation
Attachment:
.config.gz
Description: application/gzip