From: Dan Carpenter <dan.carpenter@oracle.com>
To: kbuild@lists.01.org,
Andy Shevchenko <andriy.shevchenko@linux.intel.com>,
linux-serial@vger.kernel.org, linux-kernel@vger.kernel.org
Cc: lkp@intel.com, kbuild-all@lists.01.org,
Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
Jiri Slaby <jirislaby@kernel.org>,
Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Subject: Re: [PATCH v1 1/4] serial: 8250_pci: Refactor the loop in pci_ite887x_init()
Date: Wed, 14 Jul 2021 11:07:51 +0300 [thread overview]
Message-ID: <202107140052.28NaY2ZC-lkp@intel.com> (raw)
In-Reply-To: <20210713104026.58560-1-andriy.shevchenko@linux.intel.com>
Hi Andy,
url: https://github.com/0day-ci/linux/commits/Andy-Shevchenko/serial-8250_pci-Refactor-the-loop-in-pci_ite887x_init/20210713-184225
base: https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty.git tty-testing
config: x86_64-randconfig-m001-20210713 (attached as .config)
compiler: gcc-9 (Debian 9.3.0-22) 9.3.0
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>
Reported-by: Dan Carpenter <dan.carpenter@oracle.com>
smatch warnings:
drivers/tty/serial/8250/8250_pci.c:927 pci_ite887x_init() error: buffer overflow 'inta_addr' 7 <= 7 (assuming for loop doesn't break)
vim +927 drivers/tty/serial/8250/8250_pci.c
97f2398f0f6a89 drivers/tty/serial/8250/8250_pci.c Andy Shevchenko 2021-07-13 901 static const short inta_addr[] = { 0x2a0, 0x2c0, 0x220, 0x240, 0x1e0, 0x200, 0x280, };
f79abb828e1d85 drivers/serial/8250_pci.c Ralf Baechle 2007-08-30 902 static int pci_ite887x_init(struct pci_dev *dev)
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 903 {
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 904 int ret, i, type;
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 905 struct resource *iobase = NULL;
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 906 u32 miscr, uartbar, ioport;
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 907
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 908 /* search for the base-ioport */
97f2398f0f6a89 drivers/tty/serial/8250/8250_pci.c Andy Shevchenko 2021-07-13 909 for (i = 0; i < ARRAY_SIZE(inta_addr); i++) {
^^^^^^^^^^^^^^^^^^^^^^^^^
97f2398f0f6a89 drivers/tty/serial/8250/8250_pci.c Andy Shevchenko 2021-07-13 910 iobase = request_region(inta_addr[i], ITE_887x_IOSIZE, "ite887x");
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 911 if (iobase != NULL) {
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 912 /* write POSIO0R - speed | size | ioport */
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 913 pci_write_config_dword(dev, ITE_887x_POSIO0,
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 914 ITE_887x_POSIO_ENABLE | ITE_887x_POSIO_SPEED |
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 915 ITE_887x_POSIO_IOSIZE_32 | inta_addr[i]);
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 916 /* write INTCBAR - ioport */
97f2398f0f6a89 drivers/tty/serial/8250/8250_pci.c Andy Shevchenko 2021-07-13 917 pci_write_config_dword(dev, ITE_887x_INTCBAR, inta_addr[i]);
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 918 ret = inb(inta_addr[i]);
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 919 if (ret != 0xff) {
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 920 /* ioport connected */
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 921 break;
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 922 }
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 923 release_region(iobase->start, ITE_887x_IOSIZE);
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 924 }
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 925 }
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 926
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 @927 if (!inta_addr[i]) {
Should this be changed to if (i == ARRAY_SIZE(inta_addr)) {?
af8c5b8debb046 drivers/tty/serial/8250/8250_pci.c Greg Kroah-Hartman 2013-09-28 928 dev_err(&dev->dev, "ite887x: could not find iobase\n");
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 929 return -ENODEV;
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 930 }
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 931
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
WARNING: multiple messages have this Message-ID (diff)
From: kernel test robot <lkp@intel.com>
To: kbuild@lists.01.org
Subject: Re: [PATCH v1 1/4] serial: 8250_pci: Refactor the loop in pci_ite887x_init()
Date: Wed, 14 Jul 2021 01:02:51 +0800 [thread overview]
Message-ID: <202107140052.28NaY2ZC-lkp@intel.com> (raw)
[-- Attachment #1: Type: text/plain, Size: 12033 bytes --]
CC: kbuild-all(a)lists.01.org
In-Reply-To: <20210713104026.58560-1-andriy.shevchenko@linux.intel.com>
References: <20210713104026.58560-1-andriy.shevchenko@linux.intel.com>
TO: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
TO: linux-serial(a)vger.kernel.org
TO: linux-kernel(a)vger.kernel.org
CC: "Greg Kroah-Hartman" <gregkh@linuxfoundation.org>
CC: Jiri Slaby <jirislaby@kernel.org>
CC: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Hi Andy,
I love your patch! Perhaps something to improve:
[auto build test WARNING on tty/tty-testing]
[also build test WARNING on linux/master usb/usb-testing linus/master v5.14-rc1 next-20210713]
[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/0day-ci/linux/commits/Andy-Shevchenko/serial-8250_pci-Refactor-the-loop-in-pci_ite887x_init/20210713-184225
base: https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty.git tty-testing
:::::: branch date: 6 hours ago
:::::: commit date: 6 hours ago
config: x86_64-randconfig-m001-20210713 (attached as .config)
compiler: gcc-9 (Debian 9.3.0-22) 9.3.0
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>
Reported-by: Dan Carpenter <dan.carpenter@oracle.com>
smatch warnings:
drivers/tty/serial/8250/8250_pci.c:927 pci_ite887x_init() error: buffer overflow 'inta_addr' 7 <= 7 (assuming for loop doesn't break)
vim +927 drivers/tty/serial/8250/8250_pci.c
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 899
97f2398f0f6a89 drivers/tty/serial/8250/8250_pci.c Andy Shevchenko 2021-07-13 900 /* inta_addr are the configuration addresses of the ITE */
97f2398f0f6a89 drivers/tty/serial/8250/8250_pci.c Andy Shevchenko 2021-07-13 901 static const short inta_addr[] = { 0x2a0, 0x2c0, 0x220, 0x240, 0x1e0, 0x200, 0x280, };
f79abb828e1d85 drivers/serial/8250_pci.c Ralf Baechle 2007-08-30 902 static int pci_ite887x_init(struct pci_dev *dev)
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 903 {
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 904 int ret, i, type;
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 905 struct resource *iobase = NULL;
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 906 u32 miscr, uartbar, ioport;
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 907
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 908 /* search for the base-ioport */
97f2398f0f6a89 drivers/tty/serial/8250/8250_pci.c Andy Shevchenko 2021-07-13 909 for (i = 0; i < ARRAY_SIZE(inta_addr); i++) {
97f2398f0f6a89 drivers/tty/serial/8250/8250_pci.c Andy Shevchenko 2021-07-13 910 iobase = request_region(inta_addr[i], ITE_887x_IOSIZE, "ite887x");
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 911 if (iobase != NULL) {
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 912 /* write POSIO0R - speed | size | ioport */
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 913 pci_write_config_dword(dev, ITE_887x_POSIO0,
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 914 ITE_887x_POSIO_ENABLE | ITE_887x_POSIO_SPEED |
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 915 ITE_887x_POSIO_IOSIZE_32 | inta_addr[i]);
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 916 /* write INTCBAR - ioport */
97f2398f0f6a89 drivers/tty/serial/8250/8250_pci.c Andy Shevchenko 2021-07-13 917 pci_write_config_dword(dev, ITE_887x_INTCBAR, inta_addr[i]);
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 918 ret = inb(inta_addr[i]);
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 919 if (ret != 0xff) {
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 920 /* ioport connected */
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 921 break;
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 922 }
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 923 release_region(iobase->start, ITE_887x_IOSIZE);
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 924 }
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 925 }
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 926
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 @927 if (!inta_addr[i]) {
af8c5b8debb046 drivers/tty/serial/8250/8250_pci.c Greg Kroah-Hartman 2013-09-28 928 dev_err(&dev->dev, "ite887x: could not find iobase\n");
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 929 return -ENODEV;
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 930 }
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 931
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 932 /* start of undocumented type checking (see parport_pc.c) */
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 933 type = inb(iobase->start + 0x18) & 0x0f;
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 934
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 935 switch (type) {
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 936 case 0x2: /* ITE8871 (1P) */
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 937 case 0xa: /* ITE8875 (1P) */
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 938 ret = 0;
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 939 break;
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 940 case 0xe: /* ITE8872 (2S1P) */
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 941 ret = 2;
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 942 break;
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 943 case 0x6: /* ITE8873 (1S) */
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 944 ret = 1;
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 945 break;
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 946 case 0x8: /* ITE8874 (2S) */
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 947 ret = 2;
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 948 break;
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 949 default:
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 950 moan_device("Unknown ITE887x", dev);
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 951 ret = -ENODEV;
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 952 }
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 953
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 954 /* configure all serial ports */
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 955 for (i = 0; i < ret; i++) {
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 956 /* read the I/O port from the device */
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 957 pci_read_config_dword(dev, ITE_887x_PS0BAR + (0x4 * (i + 1)),
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 958 &ioport);
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 959 ioport &= 0x0000FF00; /* the actual base address */
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 960 pci_write_config_dword(dev, ITE_887x_POSIO0 + (0x4 * (i + 1)),
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 961 ITE_887x_POSIO_ENABLE | ITE_887x_POSIO_SPEED |
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 962 ITE_887x_POSIO_IOSIZE_8 | ioport);
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 963
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 964 /* write the ioport to the UARTBAR */
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 965 pci_read_config_dword(dev, ITE_887x_UARTBAR, &uartbar);
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 966 uartbar &= ~(0xffff << (16 * i)); /* clear half the reg */
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 967 uartbar |= (ioport << (16 * i)); /* set the ioport */
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 968 pci_write_config_dword(dev, ITE_887x_UARTBAR, uartbar);
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 969
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 970 /* get current config */
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 971 pci_read_config_dword(dev, ITE_887x_MISCR, &miscr);
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 972 /* disable interrupts (UARTx_Routing[3:0]) */
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 973 miscr &= ~(0xf << (12 - 4 * i));
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 974 /* activate the UART (UARTx_En) */
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 975 miscr |= 1 << (23 - i);
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 976 /* write new config with activated UART */
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 977 pci_write_config_dword(dev, ITE_887x_MISCR, miscr);
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 978 }
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 979
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 980 if (ret <= 0) {
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 981 /* the device has no UARTs if we get here */
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 982 release_region(iobase->start, ITE_887x_IOSIZE);
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 983 }
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 984
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 985 return ret;
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 986 }
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 987
---
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: 47908 bytes --]
WARNING: multiple messages have this Message-ID (diff)
From: Dan Carpenter <dan.carpenter@oracle.com>
To: kbuild-all@lists.01.org
Subject: Re: [PATCH v1 1/4] serial: 8250_pci: Refactor the loop in pci_ite887x_init()
Date: Wed, 14 Jul 2021 11:07:51 +0300 [thread overview]
Message-ID: <202107140052.28NaY2ZC-lkp@intel.com> (raw)
In-Reply-To: <20210713104026.58560-1-andriy.shevchenko@linux.intel.com>
[-- Attachment #1: Type: text/plain, Size: 4656 bytes --]
Hi Andy,
url: https://github.com/0day-ci/linux/commits/Andy-Shevchenko/serial-8250_pci-Refactor-the-loop-in-pci_ite887x_init/20210713-184225
base: https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty.git tty-testing
config: x86_64-randconfig-m001-20210713 (attached as .config)
compiler: gcc-9 (Debian 9.3.0-22) 9.3.0
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>
Reported-by: Dan Carpenter <dan.carpenter@oracle.com>
smatch warnings:
drivers/tty/serial/8250/8250_pci.c:927 pci_ite887x_init() error: buffer overflow 'inta_addr' 7 <= 7 (assuming for loop doesn't break)
vim +927 drivers/tty/serial/8250/8250_pci.c
97f2398f0f6a89 drivers/tty/serial/8250/8250_pci.c Andy Shevchenko 2021-07-13 901 static const short inta_addr[] = { 0x2a0, 0x2c0, 0x220, 0x240, 0x1e0, 0x200, 0x280, };
f79abb828e1d85 drivers/serial/8250_pci.c Ralf Baechle 2007-08-30 902 static int pci_ite887x_init(struct pci_dev *dev)
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 903 {
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 904 int ret, i, type;
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 905 struct resource *iobase = NULL;
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 906 u32 miscr, uartbar, ioport;
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 907
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 908 /* search for the base-ioport */
97f2398f0f6a89 drivers/tty/serial/8250/8250_pci.c Andy Shevchenko 2021-07-13 909 for (i = 0; i < ARRAY_SIZE(inta_addr); i++) {
^^^^^^^^^^^^^^^^^^^^^^^^^
97f2398f0f6a89 drivers/tty/serial/8250/8250_pci.c Andy Shevchenko 2021-07-13 910 iobase = request_region(inta_addr[i], ITE_887x_IOSIZE, "ite887x");
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 911 if (iobase != NULL) {
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 912 /* write POSIO0R - speed | size | ioport */
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 913 pci_write_config_dword(dev, ITE_887x_POSIO0,
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 914 ITE_887x_POSIO_ENABLE | ITE_887x_POSIO_SPEED |
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 915 ITE_887x_POSIO_IOSIZE_32 | inta_addr[i]);
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 916 /* write INTCBAR - ioport */
97f2398f0f6a89 drivers/tty/serial/8250/8250_pci.c Andy Shevchenko 2021-07-13 917 pci_write_config_dword(dev, ITE_887x_INTCBAR, inta_addr[i]);
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 918 ret = inb(inta_addr[i]);
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 919 if (ret != 0xff) {
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 920 /* ioport connected */
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 921 break;
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 922 }
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 923 release_region(iobase->start, ITE_887x_IOSIZE);
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 924 }
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 925 }
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 926
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 @927 if (!inta_addr[i]) {
Should this be changed to if (i == ARRAY_SIZE(inta_addr)) {?
af8c5b8debb046 drivers/tty/serial/8250/8250_pci.c Greg Kroah-Hartman 2013-09-28 928 dev_err(&dev->dev, "ite887x: could not find iobase\n");
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 929 return -ENODEV;
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 930 }
84f8c6fc0e3b6e drivers/serial/8250_pci.c Niels de Vos 2007-08-22 931
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org
next parent reply other threads:[~2021-07-14 8:08 UTC|newest]
Thread overview: 25+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-07-13 17:02 kernel test robot [this message]
2021-07-14 8:07 ` [PATCH v1 1/4] serial: 8250_pci: Refactor the loop in pci_ite887x_init() Dan Carpenter
2021-07-14 8:07 ` Dan Carpenter
-- strict thread matches above, loose matches on Subject: below --
2021-07-13 10:40 Andy Shevchenko
2021-07-13 10:40 ` [PATCH v1 2/4] serial: 8250_pci: Get rid of redundant 'else' keyword Andy Shevchenko
2021-07-13 10:40 ` [PATCH v1 3/4] serial: 8250_pci: Always try MSI/MSI-X Andy Shevchenko
2021-07-14 6:54 ` Jiri Slaby
2021-07-14 7:58 ` Jiri Slaby
2021-07-14 9:31 ` Andy Shevchenko
2021-07-14 9:15 ` Andy Shevchenko
2021-07-14 16:56 ` rwright
2021-07-14 12:49 ` [EXT] " Ralf Ramsauer
2021-07-14 13:35 ` Andy Shevchenko
2021-07-14 16:49 ` Ralf Ramsauer
2021-07-16 13:07 ` Ralf Ramsauer
2021-07-16 15:01 ` Andy Shevchenko
2021-07-16 15:27 ` Ralf Ramsauer
2021-07-16 17:27 ` Andy Shevchenko
2021-07-17 12:44 ` Ralf Ramsauer
2021-07-13 10:40 ` [PATCH v1 4/4] serial: 8250_pci: Replace dev_*() by pci_*() macros Andy Shevchenko
2021-07-13 21:05 ` Joe Perches
2021-07-14 6:57 ` [PATCH v1 1/4] serial: 8250_pci: Refactor the loop in pci_ite887x_init() Jiri Slaby
2021-07-14 12:37 ` Andy Shevchenko
2021-07-14 10:44 ` Joe Perches
2021-07-14 12:36 ` Andy Shevchenko
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=202107140052.28NaY2ZC-lkp@intel.com \
--to=dan.carpenter@oracle.com \
--cc=andriy.shevchenko@linux.intel.com \
--cc=gregkh@linuxfoundation.org \
--cc=jirislaby@kernel.org \
--cc=kbuild-all@lists.01.org \
--cc=kbuild@lists.01.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-serial@vger.kernel.org \
--cc=lkp@intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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.