lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <202506060742.XR3HcxWA-lkp@intel.com>
Date: Fri, 6 Jun 2025 07:02:44 +0800
From: kernel test robot <lkp@...el.com>
To: Arnd Bergmann <arnd@...db.de>
Cc: oe-kbuild-all@...ts.linux.dev, linux-kernel@...r.kernel.org,
	Johannes Berg <johannes.berg@...el.com>
Subject: include/asm-generic/io.h:542:14: error: call to '_inb' declared with
 attribute error: inb()) requires CONFIG_HAS_IOPORT

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head:   e271ed52b344ac02d4581286961d0c40acc54c03
commit: b8c9c3b822fe8e033b9802516f6466099d915488 um: stop using PCI port I/O
date:   4 days ago
config: um-randconfig-001-20250606 (https://download.01.org/0day-ci/archive/20250606/202506060742.XR3HcxWA-lkp@intel.com/config)
compiler: gcc-12 (Debian 12.2.0-14) 12.2.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20250606/202506060742.XR3HcxWA-lkp@intel.com/reproduce)

If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@...el.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202506060742.XR3HcxWA-lkp@intel.com/

All errors (new ones prefixed by >>):

   drivers/char/sonypi.c: In function 'sonypi_call1':
   drivers/char/sonypi.c:638:12: warning: variable 'v1' set but not used [-Wunused-but-set-variable]
     638 |         u8 v1, v2;
         |            ^~
   In file included from arch/um/include/asm/io.h:24,
                    from include/linux/io.h:12,
                    from include/linux/irq.h:20,
                    from include/asm-generic/hardirq.h:17,
                    from arch/um/include/asm/hardirq.h:5,
                    from include/linux/hardirq.h:11,
                    from include/linux/interrupt.h:11,
                    from include/linux/pci.h:38,
                    from drivers/char/sonypi.c:27:
   In function 'inb_p',
       inlined from 'sonypi_irq' at drivers/char/sonypi.c:830:7:
>> include/asm-generic/io.h:542:14: error: call to '_inb' declared with attribute error: inb()) requires CONFIG_HAS_IOPORT
     542 | #define _inb _inb
         |              ^
   include/asm-generic/io.h:643:13: note: in expansion of macro '_inb'
     643 | #define inb _inb
         |             ^~~~
   include/asm-generic/io.h:670:16: note: in expansion of macro 'inb'
     670 |         return inb(addr);
         |                ^~~
   In function 'inb_p',
       inlined from 'sonypi_irq' at drivers/char/sonypi.c:831:7:
>> include/asm-generic/io.h:542:14: error: call to '_inb' declared with attribute error: inb()) requires CONFIG_HAS_IOPORT
     542 | #define _inb _inb
         |              ^
   include/asm-generic/io.h:643:13: note: in expansion of macro '_inb'
     643 | #define inb _inb
         |             ^~~~
   include/asm-generic/io.h:670:16: note: in expansion of macro 'inb'
     670 |         return inb(addr);
         |                ^~~
   In function 'inb_p',
       inlined from 'sonypi_call1.isra' at drivers/char/sonypi.c:640:2:
>> include/asm-generic/io.h:542:14: error: call to '_inb' declared with attribute error: inb()) requires CONFIG_HAS_IOPORT
     542 | #define _inb _inb
         |              ^
   include/asm-generic/io.h:643:13: note: in expansion of macro '_inb'
     643 | #define inb _inb
         |             ^~~~
   include/asm-generic/io.h:670:16: note: in expansion of macro 'inb'
     670 |         return inb(addr);
         |                ^~~
   drivers/char/sonypi.c: In function 'sonypi_call1.isra':
>> include/asm-generic/io.h:596:15: error: call to '_outb' declared with attribute error: outb() requires CONFIG_HAS_IOPORT
     596 | #define _outb _outb
   include/asm-generic/io.h:655:14: note: in expansion of macro '_outb'
     655 | #define outb _outb
         |              ^~~~~
   drivers/char/sonypi.c:641:9: note: in expansion of macro 'outb'
     641 |         outb(dev, sonypi_device.ioport2);
         |         ^~~~
   In function 'inb_p',
       inlined from 'sonypi_call1.isra' at drivers/char/sonypi.c:642:7:
>> include/asm-generic/io.h:542:14: error: call to '_inb' declared with attribute error: inb()) requires CONFIG_HAS_IOPORT
     542 | #define _inb _inb
         |              ^
   include/asm-generic/io.h:643:13: note: in expansion of macro '_inb'
     643 | #define inb _inb
         |             ^~~~
   include/asm-generic/io.h:670:16: note: in expansion of macro 'inb'
     670 |         return inb(addr);
         |                ^~~
   In function 'inb_p',
       inlined from 'sonypi_call1.isra' at drivers/char/sonypi.c:643:7:
>> include/asm-generic/io.h:542:14: error: call to '_inb' declared with attribute error: inb()) requires CONFIG_HAS_IOPORT
     542 | #define _inb _inb
         |              ^
   include/asm-generic/io.h:643:13: note: in expansion of macro '_inb'
     643 | #define inb _inb
         |             ^~~~
   include/asm-generic/io.h:670:16: note: in expansion of macro 'inb'
     670 |         return inb(addr);
         |                ^~~
   In function 'inb_p',
       inlined from 'sonypi_call2' at drivers/char/sonypi.c:651:2:
>> include/asm-generic/io.h:542:14: error: call to '_inb' declared with attribute error: inb()) requires CONFIG_HAS_IOPORT
     542 | #define _inb _inb
         |              ^
   include/asm-generic/io.h:643:13: note: in expansion of macro '_inb'
     643 | #define inb _inb
         |             ^~~~
   include/asm-generic/io.h:670:16: note: in expansion of macro 'inb'
     670 |         return inb(addr);
         |                ^~~
   drivers/char/sonypi.c: In function 'sonypi_call2':
>> include/asm-generic/io.h:596:15: error: call to '_outb' declared with attribute error: outb() requires CONFIG_HAS_IOPORT
     596 | #define _outb _outb
   include/asm-generic/io.h:655:14: note: in expansion of macro '_outb'
     655 | #define outb _outb
         |              ^~~~~
   drivers/char/sonypi.c:652:9: note: in expansion of macro 'outb'
     652 |         outb(dev, sonypi_device.ioport2);
         |         ^~~~
   In function 'inb_p',
       inlined from 'sonypi_call2' at drivers/char/sonypi.c:653:2:
>> include/asm-generic/io.h:542:14: error: call to '_inb' declared with attribute error: inb()) requires CONFIG_HAS_IOPORT
     542 | #define _inb _inb
         |              ^
   include/asm-generic/io.h:643:13: note: in expansion of macro '_inb'
     643 | #define inb _inb
         |             ^~~~
   include/asm-generic/io.h:670:16: note: in expansion of macro 'inb'
     670 |         return inb(addr);
         |                ^~~
   drivers/char/sonypi.c: In function 'sonypi_call2':
>> include/asm-generic/io.h:596:15: error: call to '_outb' declared with attribute error: outb() requires CONFIG_HAS_IOPORT
     596 | #define _outb _outb
   include/asm-generic/io.h:655:14: note: in expansion of macro '_outb'
     655 | #define outb _outb
         |              ^~~~~
   drivers/char/sonypi.c:654:9: note: in expansion of macro 'outb'
     654 |         outb(fn, sonypi_device.ioport1);
         |         ^~~~
   In function 'inb_p',
       inlined from 'sonypi_call2' at drivers/char/sonypi.c:655:7:
>> include/asm-generic/io.h:542:14: error: call to '_inb' declared with attribute error: inb()) requires CONFIG_HAS_IOPORT
     542 | #define _inb _inb
         |              ^
   include/asm-generic/io.h:643:13: note: in expansion of macro '_inb'
     643 | #define inb _inb
         |             ^~~~
   include/asm-generic/io.h:670:16: note: in expansion of macro 'inb'
     670 |         return inb(addr);
         |                ^~~
   In function 'inb_p',
       inlined from 'sonypi_ec_read' at drivers/char/sonypi.c:533:2:
>> include/asm-generic/io.h:542:14: error: call to '_inb' declared with attribute error: inb()) requires CONFIG_HAS_IOPORT
     542 | #define _inb _inb
         |              ^
   include/asm-generic/io.h:643:13: note: in expansion of macro '_inb'
     643 | #define inb _inb
         |             ^~~~
   include/asm-generic/io.h:670:16: note: in expansion of macro 'inb'
     670 |         return inb(addr);
         |                ^~~
   In function 'outb_p',
       inlined from 'sonypi_ec_read' at drivers/char/sonypi.c:534:2:
>> include/asm-generic/io.h:596:15: error: call to '_outb' declared with attribute error: outb() requires CONFIG_HAS_IOPORT
     596 | #define _outb _outb
         |               ^
   include/asm-generic/io.h:655:14: note: in expansion of macro '_outb'
     655 | #define outb _outb
         |              ^~~~~
   include/asm-generic/io.h:694:9: note: in expansion of macro 'outb'
     694 |         outb(value, addr);
         |         ^~~~
   In function 'inb_p',
       inlined from 'sonypi_ec_read' at drivers/char/sonypi.c:535:2:
>> include/asm-generic/io.h:542:14: error: call to '_inb' declared with attribute error: inb()) requires CONFIG_HAS_IOPORT
     542 | #define _inb _inb
         |              ^
   include/asm-generic/io.h:643:13: note: in expansion of macro '_inb'
     643 | #define inb _inb
         |             ^~~~
   include/asm-generic/io.h:670:16: note: in expansion of macro 'inb'
     670 |         return inb(addr);
         |                ^~~
   In function 'outb_p',
       inlined from 'sonypi_ec_read' at drivers/char/sonypi.c:536:2:
>> include/asm-generic/io.h:596:15: error: call to '_outb' declared with attribute error: outb() requires CONFIG_HAS_IOPORT
     596 | #define _outb _outb
         |               ^
   include/asm-generic/io.h:655:14: note: in expansion of macro '_outb'
     655 | #define outb _outb
         |              ^~~~~
   include/asm-generic/io.h:694:9: note: in expansion of macro 'outb'
     694 |         outb(value, addr);
         |         ^~~~
   In function 'inb_p',
       inlined from 'sonypi_ec_read' at drivers/char/sonypi.c:537:2:
>> include/asm-generic/io.h:542:14: error: call to '_inb' declared with attribute error: inb()) requires CONFIG_HAS_IOPORT
     542 | #define _inb _inb
         |              ^
   include/asm-generic/io.h:643:13: note: in expansion of macro '_inb'
     643 | #define inb _inb
         |             ^~~~
   include/asm-generic/io.h:670:16: note: in expansion of macro 'inb'
     670 |         return inb(addr);
         |                ^~~
   In function 'inb_p',
       inlined from 'sonypi_ec_read' at drivers/char/sonypi.c:538:11:
>> include/asm-generic/io.h:542:14: error: call to '_inb' declared with attribute error: inb()) requires CONFIG_HAS_IOPORT
     542 | #define _inb _inb
         |              ^
   include/asm-generic/io.h:643:13: note: in expansion of macro '_inb'
     643 | #define inb _inb
         |             ^~~~
   include/asm-generic/io.h:670:16: note: in expansion of macro 'inb'
     670 |         return inb(addr);
         |                ^~~
   In function 'inb_p',
       inlined from 'sonypi_ec_write' at drivers/char/sonypi.c:517:2:
>> include/asm-generic/io.h:542:14: error: call to '_inb' declared with attribute error: inb()) requires CONFIG_HAS_IOPORT
     542 | #define _inb _inb
         |              ^
   include/asm-generic/io.h:643:13: note: in expansion of macro '_inb'
     643 | #define inb _inb
         |             ^~~~
   include/asm-generic/io.h:670:16: note: in expansion of macro 'inb'
     670 |         return inb(addr);
         |                ^~~
   In function 'outb_p',
       inlined from 'sonypi_ec_write' at drivers/char/sonypi.c:518:2:
>> include/asm-generic/io.h:596:15: error: call to '_outb' declared with attribute error: outb() requires CONFIG_HAS_IOPORT
     596 | #define _outb _outb
         |               ^
   include/asm-generic/io.h:655:14: note: in expansion of macro '_outb'
     655 | #define outb _outb
         |              ^~~~~
   include/asm-generic/io.h:694:9: note: in expansion of macro 'outb'
     694 |         outb(value, addr);
         |         ^~~~
   In function 'inb_p',
       inlined from 'sonypi_ec_write' at drivers/char/sonypi.c:519:2:
>> include/asm-generic/io.h:542:14: error: call to '_inb' declared with attribute error: inb()) requires CONFIG_HAS_IOPORT
     542 | #define _inb _inb
         |              ^
   include/asm-generic/io.h:643:13: note: in expansion of macro '_inb'
     643 | #define inb _inb
         |             ^~~~
   include/asm-generic/io.h:670:16: note: in expansion of macro 'inb'
     670 |         return inb(addr);
         |                ^~~
   In function 'outb_p',
       inlined from 'sonypi_ec_write' at drivers/char/sonypi.c:520:2:
   include/asm-generic/io.h:596:15: error: call to '_outb' declared with attribute error: outb() requires CONFIG_HAS_IOPORT
     596 | #define _outb _outb
         |               ^
   include/asm-generic/io.h:655:14: note: in expansion of macro '_outb'
     655 | #define outb _outb
         |              ^~~~~
   include/asm-generic/io.h:694:9: note: in expansion of macro 'outb'
     694 |         outb(value, addr);
         |         ^~~~
   In function 'inb_p',
       inlined from 'sonypi_ec_write' at drivers/char/sonypi.c:521:2:
   include/asm-generic/io.h:542:14: error: call to '_inb' declared with attribute error: inb()) requires CONFIG_HAS_IOPORT
     542 | #define _inb _inb
         |              ^
   include/asm-generic/io.h:643:13: note: in expansion of macro '_inb'
     643 | #define inb _inb
         |             ^~~~
   include/asm-generic/io.h:670:16: note: in expansion of macro 'inb'
     670 |         return inb(addr);
         |                ^~~
   In function 'outb_p',
       inlined from 'sonypi_ec_write' at drivers/char/sonypi.c:522:2:
   include/asm-generic/io.h:596:15: error: call to '_outb' declared with attribute error: outb() requires CONFIG_HAS_IOPORT
     596 | #define _outb _outb
         |               ^
   include/asm-generic/io.h:655:14: note: in expansion of macro '_outb'
     655 | #define outb _outb
         |              ^~~~~
   include/asm-generic/io.h:694:9: note: in expansion of macro 'outb'
     694 |         outb(value, addr);
         |         ^~~~
   In function 'inb_p',
       inlined from 'sonypi_ec_write' at drivers/char/sonypi.c:523:2:
   include/asm-generic/io.h:542:14: error: call to '_inb' declared with attribute error: inb()) requires CONFIG_HAS_IOPORT
     542 | #define _inb _inb
         |              ^
   include/asm-generic/io.h:643:13: note: in expansion of macro '_inb'
     643 | #define inb _inb
         |             ^~~~
   include/asm-generic/io.h:670:16: note: in expansion of macro 'inb'
     670 |         return inb(addr);
         |                ^~~
   In function 'inb_p',
       inlined from 'sonypi_call3' at drivers/char/sonypi.c:663:2,
       inlined from 'sonypi_set' at drivers/char/sonypi.c:693:2:
   include/asm-generic/io.h:542:14: error: call to '_inb' declared with attribute error: inb()) requires CONFIG_HAS_IOPORT
     542 | #define _inb _inb
         |              ^
   include/asm-generic/io.h:643:13: note: in expansion of macro '_inb'
     643 | #define inb _inb
         |             ^~~~
   include/asm-generic/io.h:670:16: note: in expansion of macro 'inb'
     670 |         return inb(addr);
         |                ^~~
   In function 'sonypi_call3',
       inlined from 'sonypi_set' at drivers/char/sonypi.c:693:2:
   include/asm-generic/io.h:596:15: error: call to '_outb' declared with attribute error: outb() requires CONFIG_HAS_IOPORT
     596 | #define _outb _outb
   include/asm-generic/io.h:655:14: note: in expansion of macro '_outb'
     655 | #define outb _outb
         |              ^~~~~
   drivers/char/sonypi.c:664:9: note: in expansion of macro 'outb'
     664 |         outb(dev, sonypi_device.ioport2);
         |         ^~~~
   In function 'inb_p',
       inlined from 'sonypi_call3' at drivers/char/sonypi.c:665:2,
       inlined from 'sonypi_set' at drivers/char/sonypi.c:693:2:
   include/asm-generic/io.h:542:14: error: call to '_inb' declared with attribute error: inb()) requires CONFIG_HAS_IOPORT
     542 | #define _inb _inb
         |              ^
   include/asm-generic/io.h:643:13: note: in expansion of macro '_inb'
     643 | #define inb _inb
         |             ^~~~
   include/asm-generic/io.h:670:16: note: in expansion of macro 'inb'
     670 |         return inb(addr);
         |                ^~~
   In function 'sonypi_call3',
       inlined from 'sonypi_set' at drivers/char/sonypi.c:693:2:
   include/asm-generic/io.h:596:15: error: call to '_outb' declared with attribute error: outb() requires CONFIG_HAS_IOPORT
     596 | #define _outb _outb
   include/asm-generic/io.h:655:14: note: in expansion of macro '_outb'
     655 | #define outb _outb
         |              ^~~~~
   drivers/char/sonypi.c:666:9: note: in expansion of macro 'outb'
     666 |         outb(fn, sonypi_device.ioport1);
         |         ^~~~
   In function 'inb_p',
       inlined from 'sonypi_call3' at drivers/char/sonypi.c:667:2,
       inlined from 'sonypi_set' at drivers/char/sonypi.c:693:2:
   include/asm-generic/io.h:542:14: error: call to '_inb' declared with attribute error: inb()) requires CONFIG_HAS_IOPORT
..


vim +/_inb +542 include/asm-generic/io.h

3f7e212df82ca0 Arnd Bergmann   2009-05-13  534  
9216efafc52ff9 Thierry Reding  2014-10-01  535  /*
9216efafc52ff9 Thierry Reding  2014-10-01  536   * {in,out}{b,w,l}() access little endian I/O. {in,out}{b,w,l}_p() can be
9216efafc52ff9 Thierry Reding  2014-10-01  537   * implemented on hardware that needs an additional delay for I/O accesses to
9216efafc52ff9 Thierry Reding  2014-10-01  538   * take effect.
9216efafc52ff9 Thierry Reding  2014-10-01  539   */
9216efafc52ff9 Thierry Reding  2014-10-01  540  
f009c89df79abe John Garry      2020-03-28  541  #if !defined(inb) && !defined(_inb)
f009c89df79abe John Garry      2020-03-28 @542  #define _inb _inb
6f043e75744596 Niklas Schnelle 2024-10-24  543  #ifdef CONFIG_HAS_IOPORT
214ba3584b2e2c Stafford Horne  2020-07-26  544  static inline u8 _inb(unsigned long addr)
9216efafc52ff9 Thierry Reding  2014-10-01  545  {
87fe2d543f8173 Sinan Kaya      2018-04-05  546  	u8 val;
87fe2d543f8173 Sinan Kaya      2018-04-05  547  
87fe2d543f8173 Sinan Kaya      2018-04-05  548  	__io_pbr();
87fe2d543f8173 Sinan Kaya      2018-04-05  549  	val = __raw_readb(PCI_IOBASE + addr);
abbbbc83a210e9 Will Deacon     2019-02-22  550  	__io_par(val);
87fe2d543f8173 Sinan Kaya      2018-04-05  551  	return val;
9216efafc52ff9 Thierry Reding  2014-10-01  552  }
6f043e75744596 Niklas Schnelle 2024-10-24  553  #else
6f043e75744596 Niklas Schnelle 2024-10-24  554  u8 _inb(unsigned long addr)
6f043e75744596 Niklas Schnelle 2024-10-24  555  	__compiletime_error("inb()) requires CONFIG_HAS_IOPORT");
6f043e75744596 Niklas Schnelle 2024-10-24  556  #endif
9216efafc52ff9 Thierry Reding  2014-10-01  557  #endif
9216efafc52ff9 Thierry Reding  2014-10-01  558  
f009c89df79abe John Garry      2020-03-28  559  #if !defined(inw) && !defined(_inw)
f009c89df79abe John Garry      2020-03-28  560  #define _inw _inw
6f043e75744596 Niklas Schnelle 2024-10-24  561  #ifdef CONFIG_HAS_IOPORT
f009c89df79abe John Garry      2020-03-28  562  static inline u16 _inw(unsigned long addr)
9216efafc52ff9 Thierry Reding  2014-10-01  563  {
87fe2d543f8173 Sinan Kaya      2018-04-05  564  	u16 val;
87fe2d543f8173 Sinan Kaya      2018-04-05  565  
87fe2d543f8173 Sinan Kaya      2018-04-05  566  	__io_pbr();
c1d55d50139bea Stafford Horne  2020-07-29  567  	val = __le16_to_cpu((__le16 __force)__raw_readw(PCI_IOBASE + addr));
abbbbc83a210e9 Will Deacon     2019-02-22  568  	__io_par(val);
87fe2d543f8173 Sinan Kaya      2018-04-05  569  	return val;
9216efafc52ff9 Thierry Reding  2014-10-01  570  }
6f043e75744596 Niklas Schnelle 2024-10-24  571  #else
6f043e75744596 Niklas Schnelle 2024-10-24  572  u16 _inw(unsigned long addr)
6f043e75744596 Niklas Schnelle 2024-10-24  573  	__compiletime_error("inw() requires CONFIG_HAS_IOPORT");
6f043e75744596 Niklas Schnelle 2024-10-24  574  #endif
9216efafc52ff9 Thierry Reding  2014-10-01  575  #endif
9216efafc52ff9 Thierry Reding  2014-10-01  576  
f009c89df79abe John Garry      2020-03-28  577  #if !defined(inl) && !defined(_inl)
f009c89df79abe John Garry      2020-03-28 @578  #define _inl _inl
6f043e75744596 Niklas Schnelle 2024-10-24  579  #ifdef CONFIG_HAS_IOPORT
214ba3584b2e2c Stafford Horne  2020-07-26  580  static inline u32 _inl(unsigned long addr)
9216efafc52ff9 Thierry Reding  2014-10-01  581  {
87fe2d543f8173 Sinan Kaya      2018-04-05  582  	u32 val;
87fe2d543f8173 Sinan Kaya      2018-04-05  583  
87fe2d543f8173 Sinan Kaya      2018-04-05  584  	__io_pbr();
c1d55d50139bea Stafford Horne  2020-07-29  585  	val = __le32_to_cpu((__le32 __force)__raw_readl(PCI_IOBASE + addr));
abbbbc83a210e9 Will Deacon     2019-02-22  586  	__io_par(val);
87fe2d543f8173 Sinan Kaya      2018-04-05  587  	return val;
9216efafc52ff9 Thierry Reding  2014-10-01  588  }
6f043e75744596 Niklas Schnelle 2024-10-24  589  #else
6f043e75744596 Niklas Schnelle 2024-10-24  590  u32 _inl(unsigned long addr)
6f043e75744596 Niklas Schnelle 2024-10-24  591  	__compiletime_error("inl() requires CONFIG_HAS_IOPORT");
6f043e75744596 Niklas Schnelle 2024-10-24  592  #endif
9216efafc52ff9 Thierry Reding  2014-10-01  593  #endif
9216efafc52ff9 Thierry Reding  2014-10-01  594  
f009c89df79abe John Garry      2020-03-28  595  #if !defined(outb) && !defined(_outb)
f009c89df79abe John Garry      2020-03-28 @596  #define _outb _outb
6f043e75744596 Niklas Schnelle 2024-10-24  597  #ifdef CONFIG_HAS_IOPORT
f009c89df79abe John Garry      2020-03-28  598  static inline void _outb(u8 value, unsigned long addr)
9216efafc52ff9 Thierry Reding  2014-10-01  599  {
a7851aa54c0cdd Sinan Kaya      2018-04-05  600  	__io_pbw();
a7851aa54c0cdd Sinan Kaya      2018-04-05  601  	__raw_writeb(value, PCI_IOBASE + addr);
a7851aa54c0cdd Sinan Kaya      2018-04-05  602  	__io_paw();
9216efafc52ff9 Thierry Reding  2014-10-01  603  }
6f043e75744596 Niklas Schnelle 2024-10-24  604  #else
6f043e75744596 Niklas Schnelle 2024-10-24  605  void _outb(u8 value, unsigned long addr)
6f043e75744596 Niklas Schnelle 2024-10-24  606  	__compiletime_error("outb() requires CONFIG_HAS_IOPORT");
6f043e75744596 Niklas Schnelle 2024-10-24  607  #endif
9216efafc52ff9 Thierry Reding  2014-10-01  608  #endif
9216efafc52ff9 Thierry Reding  2014-10-01  609  
f009c89df79abe John Garry      2020-03-28  610  #if !defined(outw) && !defined(_outw)
f009c89df79abe John Garry      2020-03-28  611  #define _outw _outw
6f043e75744596 Niklas Schnelle 2024-10-24  612  #ifdef CONFIG_HAS_IOPORT
f009c89df79abe John Garry      2020-03-28  613  static inline void _outw(u16 value, unsigned long addr)
9216efafc52ff9 Thierry Reding  2014-10-01  614  {
a7851aa54c0cdd Sinan Kaya      2018-04-05  615  	__io_pbw();
c1d55d50139bea Stafford Horne  2020-07-29  616  	__raw_writew((u16 __force)cpu_to_le16(value), PCI_IOBASE + addr);
a7851aa54c0cdd Sinan Kaya      2018-04-05  617  	__io_paw();
9216efafc52ff9 Thierry Reding  2014-10-01  618  }
6f043e75744596 Niklas Schnelle 2024-10-24  619  #else
6f043e75744596 Niklas Schnelle 2024-10-24  620  void _outw(u16 value, unsigned long addr)
6f043e75744596 Niklas Schnelle 2024-10-24  621  	__compiletime_error("outw() requires CONFIG_HAS_IOPORT");
6f043e75744596 Niklas Schnelle 2024-10-24  622  #endif
9216efafc52ff9 Thierry Reding  2014-10-01  623  #endif
9216efafc52ff9 Thierry Reding  2014-10-01  624  
f009c89df79abe John Garry      2020-03-28  625  #if !defined(outl) && !defined(_outl)
f009c89df79abe John Garry      2020-03-28 @626  #define _outl _outl
6f043e75744596 Niklas Schnelle 2024-10-24  627  #ifdef CONFIG_HAS_IOPORT
f009c89df79abe John Garry      2020-03-28  628  static inline void _outl(u32 value, unsigned long addr)
9216efafc52ff9 Thierry Reding  2014-10-01  629  {
a7851aa54c0cdd Sinan Kaya      2018-04-05  630  	__io_pbw();
c1d55d50139bea Stafford Horne  2020-07-29  631  	__raw_writel((u32 __force)cpu_to_le32(value), PCI_IOBASE + addr);
a7851aa54c0cdd Sinan Kaya      2018-04-05  632  	__io_paw();
9216efafc52ff9 Thierry Reding  2014-10-01  633  }
6f043e75744596 Niklas Schnelle 2024-10-24  634  #else
6f043e75744596 Niklas Schnelle 2024-10-24  635  void _outl(u32 value, unsigned long addr)
6f043e75744596 Niklas Schnelle 2024-10-24  636  	__compiletime_error("outl() requires CONFIG_HAS_IOPORT");
6f043e75744596 Niklas Schnelle 2024-10-24  637  #endif
9216efafc52ff9 Thierry Reding  2014-10-01  638  #endif
9216efafc52ff9 Thierry Reding  2014-10-01  639  

:::::: The code at line 542 was first introduced by commit
:::::: f009c89df79abea5f5244b8135a205f7d4352f86 io: Provide _inX() and _outX()

:::::: TO: John Garry <john.garry@...wei.com>
:::::: CC: Wei Xu <xuwei5@...ilicon.com>

-- 
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ