tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git 
master
head:   9123e3a74ec7b934a4a099e98af6a61c2f80bbf5
commit: 670d0a4b10704667765f7d18f7592993d02783aa sparse: use identifiers to 
define address spaces
date:   8 weeks ago
config: riscv-randconfig-s031-20200817 (attached as .config)
compiler: riscv32-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-180-g49f7e13a-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=riscv 

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/message/fusion/mptbase.c:640:25: sparse: sparse: cast to restricted 
__le32
   drivers/message/fusion/mptbase.c:3141:37: sparse: sparse: cast to restricted 
__le16
   drivers/message/fusion/mptbase.c:3142:37: sparse: sparse: cast to restricted 
__le32
   drivers/message/fusion/mptbase.c:3143:40: sparse: sparse: cast to restricted 
__le16
   drivers/message/fusion/mptbase.c:3144:36: sparse: sparse: cast to restricted 
__le16
   drivers/message/fusion/mptbase.c:3145:37: sparse: sparse: cast to restricted 
__le32
   drivers/message/fusion/mptbase.c:3146:26: sparse: sparse: cast to restricted 
__le16
   drivers/message/fusion/mptbase.c:3149:42: sparse: sparse: cast to restricted 
__le16
   drivers/message/fusion/mptbase.c:3150:43: sparse: sparse: cast to restricted 
__le16
   drivers/message/fusion/mptbase.c:3161:41: sparse: sparse: cast to restricted 
__le16
   drivers/message/fusion/mptbase.c:3166:49: sparse: sparse: cast to restricted 
__le32
   drivers/message/fusion/mptbase.c:3168:36: sparse: sparse: cast to restricted 
__le16
   drivers/message/fusion/mptbase.c:3175:33: sparse: sparse: cast to restricted 
__le32
   drivers/message/fusion/mptbase.c:3176:40: sparse: sparse: cast to restricted 
__le16
   drivers/message/fusion/mptbase.c:3178:33: sparse: sparse: cast to restricted 
__le32
   drivers/message/fusion/mptbase.c:3180:33: sparse: sparse: cast to restricted 
__le16
   drivers/message/fusion/mptbase.c:3181:42: sparse: sparse: cast to restricted 
__le32
   drivers/message/fusion/mptbase.c:3190:46: sparse: sparse: cast to restricted 
__le32
   drivers/message/fusion/mptbase.c:3299:30: sparse: sparse: cast to restricted 
__le32
   drivers/message/fusion/mptbase.c:3300:29: sparse: sparse: cast to restricted 
__le16
   drivers/message/fusion/mptbase.c:3301:30: sparse: sparse: cast to restricted 
__le32
   drivers/message/fusion/mptbase.c:3302:30: sparse: sparse: cast to restricted 
__le16
   drivers/message/fusion/mptbase.c:3303:30: sparse: sparse: cast to restricted 
__le16
   drivers/message/fusion/mptbase.c:3304:33: sparse: sparse: cast to restricted 
__le16
   drivers/message/fusion/mptbase.c:3305:39: sparse: sparse: cast to restricted 
__le16
   drivers/message/fusion/mptbase.c:3306:36: sparse: sparse: cast to restricted 
__le16
   drivers/message/fusion/mptbase.c:3307:33: sparse: sparse: cast to restricted 
__le16
   drivers/message/fusion/mptbase.c:3371:37: sparse: sparse: incorrect type in 
assignment (different base types) @@     expected unsigned short [addressable] 
[assigned] [usertype] MsgVersion @@     got restricted __le16 [usertype] @@
   drivers/message/fusion/mptbase.c:3371:37: sparse:     expected unsigned 
short [addressable] [assigned] [usertype] MsgVersion
   drivers/message/fusion/mptbase.c:3371:37: sparse:     got restricted __le16 
[usertype]
   drivers/message/fusion/mptbase.c:3372:40: sparse: sparse: incorrect type in 
assignment (different base types) @@     expected unsigned short [addressable] 
[assigned] [usertype] HeaderVersion @@     got restricted __le16 [usertype] @@
   drivers/message/fusion/mptbase.c:3372:40: sparse:     expected unsigned 
short [addressable] [assigned] [usertype] HeaderVersion
   drivers/message/fusion/mptbase.c:3372:40: sparse:     got restricted __le16 
[usertype]
   drivers/message/fusion/mptbase.c:3379:33: sparse: sparse: incorrect type in 
assignment (different base types) @@     expected unsigned short [addressable] 
[assigned] [usertype] ReplyFrameSize @@     got restricted __le16 [usertype] @@
   drivers/message/fusion/mptbase.c:3379:33: sparse:     expected unsigned 
short [addressable] [assigned] [usertype] ReplyFrameSize
   drivers/message/fusion/mptbase.c:3379:33: sparse:     got restricted __le16 
[usertype]
   drivers/message/fusion/mptbase.c:3385:42: sparse: sparse: incorrect type in 
assignment (different base types) @@     expected unsigned int [addressable] 
[assigned] [usertype] HostMfaHighAddr @@     got restricted __le32 [usertype] @@
   drivers/message/fusion/mptbase.c:3385:42: sparse:     expected unsigned int 
[addressable] [assigned] [usertype] HostMfaHighAddr
   drivers/message/fusion/mptbase.c:3385:42: sparse:     got restricted __le32 
[usertype]
   drivers/message/fusion/mptbase.c:3386:46: sparse: sparse: incorrect type in 
assignment (different base types) @@     expected unsigned int [addressable] 
[assigned] [usertype] SenseBufferHighAddr @@     got restricted __le32 
[usertype] @@
   drivers/message/fusion/mptbase.c:3386:46: sparse:     expected unsigned int 
[addressable] [assigned] [usertype] SenseBufferHighAddr
   drivers/message/fusion/mptbase.c:3386:46: sparse:     got restricted __le32 
[usertype]
   drivers/message/fusion/mptbase.c:3389:42: sparse: sparse: incorrect type in 
assignment (different base types) @@     expected unsigned int [addressable] 
[assigned] [usertype] HostMfaHighAddr @@     got restricted __le32 [usertype] @@
   drivers/message/fusion/mptbase.c:3389:42: sparse:     expected unsigned int 
[addressable] [assigned] [usertype] HostMfaHighAddr
   drivers/message/fusion/mptbase.c:3389:42: sparse:     got restricted __le32 
[usertype]
   drivers/message/fusion/mptbase.c:3390:46: sparse: sparse: incorrect type in 
assignment (different base types) @@     expected unsigned int [addressable] 
[assigned] [usertype] SenseBufferHighAddr @@     got restricted __le32 
[usertype] @@
   drivers/message/fusion/mptbase.c:3390:46: sparse:     expected unsigned int 
[addressable] [assigned] [usertype] SenseBufferHighAddr
   drivers/message/fusion/mptbase.c:3390:46: sparse:     got restricted __le32 
[usertype]
   drivers/message/fusion/mptbase.c:3619:27: sparse: sparse: incorrect type in 
assignment (different base types) @@     expected unsigned int [usertype] 
ImageSize @@     got restricted __le32 [usertype] @@
   drivers/message/fusion/mptbase.c:3619:27: sparse:     expected unsigned int 
[usertype] ImageSize
   drivers/message/fusion/mptbase.c:3619:27: sparse:     got restricted __le32 
[usertype]
   drivers/message/fusion/mptbase.c:3643:26: sparse: sparse: cast to restricted 
__le16
   drivers/message/fusion/mptbase.c:3647:21: sparse: sparse: cast to restricted 
__le32
>> drivers/message/fusion/mptbase.c:3754:9: sparse: sparse: cast removes 
>> address space '__iomem' of expression
>> drivers/message/fusion/mptbase.c:3754:9: sparse: sparse: incorrect type in 
>> argument 2 (different address spaces) @@     expected void volatile 
>> [noderef] __iomem *addr @@     got void * @@
>> drivers/message/fusion/mptbase.c:3754:9: sparse:     expected void volatile 
>> [noderef] __iomem *addr
   drivers/message/fusion/mptbase.c:3754:9: sparse:     got void *
   drivers/message/fusion/mptbase.c:3761:17: sparse: sparse: cast removes 
address space '__iomem' of expression
   drivers/message/fusion/mptbase.c:3761:17: sparse: sparse: incorrect type in 
argument 2 (different address spaces) @@     expected void volatile [noderef] 
__iomem *addr @@     got void * @@
   drivers/message/fusion/mptbase.c:3761:17: sparse:     expected void volatile 
[noderef] __iomem *addr
   drivers/message/fusion/mptbase.c:3761:17: sparse:     got void *
   drivers/message/fusion/mptbase.c:3775:17: sparse: sparse: cast removes 
address space '__iomem' of expression
   drivers/message/fusion/mptbase.c:3775:17: sparse: sparse: incorrect type in 
argument 2 (different address spaces) @@     expected void volatile [noderef] 
__iomem *addr @@     got void * @@
   drivers/message/fusion/mptbase.c:3775:17: sparse:     expected void volatile 
[noderef] __iomem *addr
   drivers/message/fusion/mptbase.c:3775:17: sparse:     got void *
   drivers/message/fusion/mptbase.c:3778:25: sparse: sparse: cast removes 
address space '__iomem' of expression
   drivers/message/fusion/mptbase.c:3778:25: sparse: sparse: incorrect type in 
argument 2 (different address spaces) @@     expected void volatile [noderef] 
__iomem *addr @@     got void * @@
   drivers/message/fusion/mptbase.c:3778:25: sparse:     expected void volatile 
[noderef] __iomem *addr
   drivers/message/fusion/mptbase.c:3778:25: sparse:     got void *
   drivers/message/fusion/mptbase.c:3785:9: sparse: sparse: cast removes 
address space '__iomem' of expression
   drivers/message/fusion/mptbase.c:3785:9: sparse: sparse: incorrect type in 
argument 2 (different address spaces) @@     expected void volatile [noderef] 
__iomem *addr @@     got void * @@
   drivers/message/fusion/mptbase.c:3785:9: sparse:     expected void volatile 
[noderef] __iomem *addr
   drivers/message/fusion/mptbase.c:3785:9: sparse:     got void *
   drivers/message/fusion/mptbase.c:3789:9: sparse: sparse: cast removes 
address space '__iomem' of expression
   drivers/message/fusion/mptbase.c:3789:9: sparse: sparse: incorrect type in 
argument 2 (different address spaces) @@     expected void volatile [noderef] 
__iomem *addr @@     got void * @@
   drivers/message/fusion/mptbase.c:3789:9: sparse:     expected void volatile 
[noderef] __iomem *addr
   drivers/message/fusion/mptbase.c:3789:9: sparse:     got void *
   drivers/message/fusion/mptbase.c:3799:17: sparse: sparse: cast removes 
address space '__iomem' of expression
   drivers/message/fusion/mptbase.c:3799:17: sparse: sparse: incorrect type in 
argument 2 (different address spaces) @@     expected void volatile [noderef] 
__iomem *addr @@     got void * @@
   drivers/message/fusion/mptbase.c:3799:17: sparse:     expected void volatile 
[noderef] __iomem *addr
   drivers/message/fusion/mptbase.c:3799:17: sparse:     got void *
   drivers/message/fusion/mptbase.c:3800:30: sparse: sparse: cast removes 
address space '__iomem' of expression
>> drivers/message/fusion/mptbase.c:3800:30: sparse: sparse: incorrect type in 
>> argument 1 (different address spaces) @@     expected void const volatile 
>> [noderef] __iomem *addr @@     got void * @@
>> drivers/message/fusion/mptbase.c:3800:30: sparse:     expected void const 
>> volatile [noderef] __iomem *addr
   drivers/message/fusion/mptbase.c:3800:30: sparse:     got void *
   drivers/message/fusion/mptbase.c:3802:17: sparse: sparse: cast removes 
address space '__iomem' of expression
   drivers/message/fusion/mptbase.c:3802:17: sparse: sparse: incorrect type in 
argument 2 (different address spaces) @@     expected void volatile [noderef] 
__iomem *addr @@     got void * @@
   drivers/message/fusion/mptbase.c:3802:17: sparse:     expected void volatile 
[noderef] __iomem *addr
   drivers/message/fusion/mptbase.c:3802:17: sparse:     got void *
   drivers/message/fusion/mptbase.c:3803:17: sparse: sparse: cast removes 
address space '__iomem' of expression
   drivers/message/fusion/mptbase.c:3803:17: sparse: sparse: incorrect type in 
argument 2 (different address spaces) @@     expected void volatile [noderef] 
__iomem *addr @@     got void * @@
   drivers/message/fusion/mptbase.c:3803:17: sparse:     expected void volatile 
[noderef] __iomem *addr
   drivers/message/fusion/mptbase.c:3803:17: sparse:     got void *
   drivers/message/fusion/mptbase.c:4884:38: sparse: sparse: cast to restricted 
__le16
   drivers/message/fusion/mptbase.c:4889:46: sparse: sparse: cast to restricted 
__le16
   drivers/message/fusion/mptbase.c:4905:25: sparse: sparse: cast to restricted 
__le16
   drivers/message/fusion/mptbase.c:5334:44: sparse: sparse: cast to restricted 
__le32
   drivers/message/fusion/mptbase.c:5428:54: sparse: sparse: cast to restricted 
__le32
   drivers/message/fusion/mptbase.c:5429:59: sparse: sparse: cast to restricted 
__le32
   drivers/message/fusion/mptbase.c:5510:47: sparse: sparse: cast to restricted 
__le16
   drivers/message/fusion/mptbase.c:5537:38: sparse: sparse: cast to restricted 
__le32
   drivers/message/fusion/mptbase.c:5544:40: sparse: sparse: cast to restricted 
__le32
   drivers/message/fusion/mptbase.c:5548:49: sparse: sparse: cast to restricted 
__le16
   drivers/message/fusion/mptbase.c:6180:23: sparse: sparse: cast to restricted 
__le32
   drivers/message/fusion/mptbase.c:6182:31: sparse: sparse: cast to restricted 
__le32
   drivers/message/fusion/mptbase.c:6188:58: sparse: sparse: incorrect type in 
assignment (different base types) @@     expected unsigned int [usertype] 
CoalescingTimeout @@     got restricted __le32 [usertype] @@
   drivers/message/fusion/mptbase.c:6188:58: sparse:     expected unsigned int 
[usertype] CoalescingTimeout
   drivers/message/fusion/mptbase.c:6188:58: sparse:     got restricted __le32 
[usertype]
   drivers/message/fusion/mptbase.c:6287:24: sparse: sparse: incorrect type in 
assignment (different base types) @@     expected unsigned int [addressable] 
[assigned] [usertype] MsgContext @@     got restricted __le32 [usertype] @@
   drivers/message/fusion/mptbase.c:6287:24: sparse:     expected unsigned int 
[addressable] [assigned] [usertype] MsgContext
   drivers/message/fusion/mptbase.c:6287:24: sparse:     got restricted __le32 
[usertype]
   drivers/message/fusion/mptbase.c:1321:21: sparse: sparse: cast to restricted 
__le32
   drivers/message/fusion/mptbase.c:7710:17: sparse: sparse: cast to restricted 
__le32
   drivers/message/fusion/mptbase.c:7711:21: sparse: sparse: cast to restricted 
__le16
   drivers/message/fusion/mptbase.c:7713:27: sparse: sparse: cast to restricted 
__le32
   drivers/message/fusion/mptbase.c:7759:61: sparse: sparse: cast to restricted 
__le32
   drivers/message/fusion/mptbase.c:529:19: sparse: sparse: cast to restricted 
__le16
   drivers/message/fusion/mptbase.c:539:20: sparse: sparse: cast to restricted 
__le16
   drivers/message/fusion/mptbase.c:541:37: sparse: sparse: cast to restricted 
__le32
   drivers/message/fusion/mptbase.c:919:55: sparse: sparse: incorrect type in 
assignment (different base types) @@     expected unsigned short [usertype] 
req_idx @@     got restricted __le16 [usertype] @@
   drivers/message/fusion/mptbase.c:919:55: sparse:     expected unsigned short 
[usertype] req_idx
   drivers/message/fusion/mptbase.c:919:55: sparse:     got restricted __le16 
[usertype]
   drivers/message/fusion/mptbase.c:969:47: sparse: sparse: incorrect type in 
assignment (different base types) @@     expected unsigned short [usertype] 
req_idx @@     got restricted __le16 [usertype] @@
   drivers/message/fusion/mptbase.c:969:47: sparse:     expected unsigned short 
[usertype] req_idx
   drivers/message/fusion/mptbase.c:969:47: sparse:     got restricted __le16 
[usertype]
   drivers/message/fusion/mptbase.c:1004:47: sparse: sparse: incorrect type in 
assignment (different base types) @@     expected unsigned short [usertype] 
req_idx @@     got restricted __le16 [usertype] @@
   drivers/message/fusion/mptbase.c:1004:47: sparse:     expected unsigned 
short [usertype] req_idx
   drivers/message/fusion/mptbase.c:1004:47: sparse:     got restricted __le16 
[usertype]
   drivers/message/fusion/mptbase.c:1031:13: sparse: sparse: restricted __le32 
degrades to integer
   drivers/message/fusion/mptbase.c:1034:34: sparse: sparse: incorrect type in 
assignment (different base types) @@     expected unsigned int [usertype] arg1 
@@     got restricted __le32 [usertype] @@
   drivers/message/fusion/mptbase.c:1034:34: sparse:     expected unsigned int 
[usertype] arg1
   drivers/message/fusion/mptbase.c:1034:34: sparse:     got restricted __le32 
[usertype]
   drivers/message/fusion/mptbase.c:1057:27: sparse: sparse: incorrect type in 
assignment (different base types) @@     expected unsigned int [usertype] 
FlagsLength @@     got restricted __le32 [usertype] @@
   drivers/message/fusion/mptbase.c:1057:27: sparse:     expected unsigned int 
[usertype] FlagsLength
   drivers/message/fusion/mptbase.c:1057:27: sparse:     got restricted __le32 
[usertype]
   drivers/message/fusion/mptbase.c:1058:23: sparse: sparse: incorrect type in 
assignment (different base types) @@     expected unsigned int [usertype] 
Address @@     got restricted __le32 [usertype] @@
   drivers/message/fusion/mptbase.c:1058:23: sparse:     expected unsigned int 
[usertype] Address
   drivers/message/fusion/mptbase.c:1058:23: sparse:     got restricted __le32 
[usertype]
   drivers/message/fusion/mptbase.c:1074:27: sparse: sparse: incorrect type in 
assignment (different base types) @@     expected unsigned int [usertype] Low 
@@     got restricted __le32 [usertype] @@
   drivers/message/fusion/mptbase.c:1074:27: sparse:     expected unsigned int 
[usertype] Low
   drivers/message/fusion/mptbase.c:1074:27: sparse:     got restricted __le32 
[usertype]
   drivers/message/fusion/mptbase.c:1076:28: sparse: sparse: incorrect type in 
assignment (different base types) @@     expected unsigned int [usertype] High 
@@     got restricted __le32 [usertype] @@
   drivers/message/fusion/mptbase.c:1076:28: sparse:     expected unsigned int 
[usertype] High
   drivers/message/fusion/mptbase.c:1076:28: sparse:     got restricted __le32 
[usertype]
   drivers/message/fusion/mptbase.c:1078:27: sparse: sparse: incorrect type in 
assignment (different base types) @@     expected unsigned int [usertype] 
FlagsLength @@     got restricted __le32 [usertype] @@
   drivers/message/fusion/mptbase.c:1078:27: sparse:     expected unsigned int 
[usertype] FlagsLength
   drivers/message/fusion/mptbase.c:1078:27: sparse:     got restricted __le32 
[usertype]
   drivers/message/fusion/mptbase.c:1097:27: sparse: sparse: incorrect type in 
assignment (different base types) @@     expected unsigned int [usertype] Low 
@@     got restricted __le32 [usertype] @@
   drivers/message/fusion/mptbase.c:1097:27: sparse:     expected unsigned int 
[usertype] Low
   drivers/message/fusion/mptbase.c:1097:27: sparse:     got restricted __le32 
[usertype]
   drivers/message/fusion/mptbase.c:1115:28: sparse: sparse: incorrect type in 
assignment (different base types) @@     expected unsigned int [usertype] High 
@@     got restricted __le32 [usertype] @@
   drivers/message/fusion/mptbase.c:1115:28: sparse:     expected unsigned int 
[usertype] High
   drivers/message/fusion/mptbase.c:1115:28: sparse:     got restricted __le32 
[usertype]
   drivers/message/fusion/mptbase.c:1116:27: sparse: sparse: incorrect type in 
assignment (different base types) @@     expected unsigned int [usertype] 
FlagsLength @@     got restricted __le32 [usertype] @@
   drivers/message/fusion/mptbase.c:1116:27: sparse:     expected unsigned int 
[usertype] FlagsLength
   drivers/message/fusion/mptbase.c:1116:27: sparse:     got restricted __le32 
[usertype]
   drivers/message/fusion/mptbase.c:1134:24: sparse: sparse: incorrect type in 
assignment (different base types) @@     expected unsigned short [usertype] 
Length @@     got restricted __le16 [usertype] @@
   drivers/message/fusion/mptbase.c:1134:24: sparse:     expected unsigned 
short [usertype] Length
   drivers/message/fusion/mptbase.c:1134:24: sparse:     got restricted __le16 
[usertype]
   drivers/message/fusion/mptbase.c:1137:25: sparse: sparse: incorrect type in 
assignment (different base types) @@     expected unsigned int [usertype] 
Address @@     got restricted __le32 [usertype] @@
   drivers/message/fusion/mptbase.c:1137:25: sparse:     expected unsigned int 
[usertype] Address
   drivers/message/fusion/mptbase.c:1137:25: sparse:     got restricted __le32 
[usertype]
   drivers/message/fusion/mptbase.c:1155:24: sparse: sparse: incorrect type in 
assignment (different base types) @@     expected unsigned short [usertype] 
Length @@     got restricted __le16 [usertype] @@
   drivers/message/fusion/mptbase.c:1155:24: sparse:     expected unsigned 
short [usertype] Length
   drivers/message/fusion/mptbase.c:1155:24: sparse:     got restricted __le16 
[usertype]
   drivers/message/fusion/mptbase.c:1161:29: sparse: sparse: incorrect type in 
assignment (different base types) @@     expected unsigned int [usertype] Low 
@@     got restricted __le32 [usertype] @@
   drivers/message/fusion/mptbase.c:1161:29: sparse:     expected unsigned int 
[usertype] Low
   drivers/message/fusion/mptbase.c:1161:29: sparse:     got restricted __le32 
[usertype]
   drivers/message/fusion/mptbase.c:1163:30: sparse: sparse: incorrect type in 
assignment (different base types) @@     expected unsigned int [usertype] High 
@@     got restricted __le32 [usertype] @@
   drivers/message/fusion/mptbase.c:1163:30: sparse:     expected unsigned int 
[usertype] High
   drivers/message/fusion/mptbase.c:1163:30: sparse:     got restricted __le32 
[usertype]
   drivers/message/fusion/mptbase.c:1203:55: sparse: sparse: incorrect type in 
assignment (different base types) @@     expected unsigned short [usertype] 
req_idx @@     got restricted __le16 [usertype] @@
   drivers/message/fusion/mptbase.c:1203:55: sparse:     expected unsigned 
short [usertype] req_idx
   drivers/message/fusion/mptbase.c:1203:55: sparse:     got restricted __le16 
[usertype]
   drivers/message/fusion/mptbase.c:2155:22: sparse: sparse: incorrect type in 
assignment (different base types) @@     expected unsigned int [usertype] 
device_state @@     got restricted pci_power_t @@
   drivers/message/fusion/mptbase.c:2155:22: sparse:     expected unsigned int 
[usertype] device_state
   drivers/message/fusion/mptbase.c:2155:22: sparse:     got restricted 
pci_power_t
   drivers/message/fusion/mptbase.c:2180:35: sparse: sparse: too many warnings

# 
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=670d0a4b10704667765f7d18f7592993d02783aa
git remote add linus 
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
git fetch --no-tags linus master
git checkout 670d0a4b10704667765f7d18f7592993d02783aa
vim +/__iomem +3754 drivers/message/fusion/mptbase.c

^1da177e4c3f41 Linus Torvalds    2005-04-16  3663  
^1da177e4c3f41 Linus Torvalds    2005-04-16  3664  
/*=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=*/
d9489fb6061479 Randy Dunlap      2006-12-06  3665  /**
^1da177e4c3f41 Linus Torvalds    2005-04-16  3666   *   mpt_downloadboot - 
DownloadBoot code
^1da177e4c3f41 Linus Torvalds    2005-04-16  3667   *   @ioc: Pointer to 
MPT_ADAPTER structure
d9489fb6061479 Randy Dunlap      2006-12-06  3668   *   @pFwHeader: Pointer to 
firmware header info
^1da177e4c3f41 Linus Torvalds    2005-04-16  3669   *   @sleepFlag: Specifies 
whether the process can sleep
^1da177e4c3f41 Linus Torvalds    2005-04-16  3670   *
^1da177e4c3f41 Linus Torvalds    2005-04-16  3671   *   FwDownloadBoot requires 
Programmed IO access.
^1da177e4c3f41 Linus Torvalds    2005-04-16  3672   *
^1da177e4c3f41 Linus Torvalds    2005-04-16  3673   *   Returns 0 for success
^1da177e4c3f41 Linus Torvalds    2005-04-16  3674   *           -1 FW Image 
size is 0
^1da177e4c3f41 Linus Torvalds    2005-04-16  3675   *           -2 No valid 
cached_fw Pointer
^1da177e4c3f41 Linus Torvalds    2005-04-16  3676   *           <0 for fw 
upload failure.
^1da177e4c3f41 Linus Torvalds    2005-04-16  3677   */
^1da177e4c3f41 Linus Torvalds    2005-04-16  3678  static int
82ffb671640647 Christoph Hellwig 2005-09-09  3679  mpt_downloadboot(MPT_ADAPTER 
*ioc, MpiFwHeader_t *pFwHeader, int sleepFlag)
^1da177e4c3f41 Linus Torvalds    2005-04-16  3680  {
^1da177e4c3f41 Linus Torvalds    2005-04-16  3681       MpiExtImageHeader_t     
*pExtImage;
^1da177e4c3f41 Linus Torvalds    2005-04-16  3682       u32                     
 fwSize;
^1da177e4c3f41 Linus Torvalds    2005-04-16  3683       u32                     
 diag0val;
^1da177e4c3f41 Linus Torvalds    2005-04-16  3684       int                     
 count;
^1da177e4c3f41 Linus Torvalds    2005-04-16  3685       u32                     
*ptrFw;
^1da177e4c3f41 Linus Torvalds    2005-04-16  3686       u32                     
 diagRwData;
^1da177e4c3f41 Linus Torvalds    2005-04-16  3687       u32                     
 nextImage;
^1da177e4c3f41 Linus Torvalds    2005-04-16  3688       u32                     
 load_addr;
^1da177e4c3f41 Linus Torvalds    2005-04-16  3689       u32                     
 ioc_state=0;
^1da177e4c3f41 Linus Torvalds    2005-04-16  3690  
436ace725f35eb Prakash, Sathya   2007-07-24  3691       ddlprintk(ioc, 
printk(MYIOC_s_DEBUG_FMT "downloadboot: fw size 0x%x (%d), FW Ptr %p\n",
82ffb671640647 Christoph Hellwig 2005-09-09  3692                               
ioc->name, pFwHeader->ImageSize, pFwHeader->ImageSize, pFwHeader));
^1da177e4c3f41 Linus Torvalds    2005-04-16  3693  
^1da177e4c3f41 Linus Torvalds    2005-04-16  3694       
CHIPREG_WRITE32(&ioc->chip->WriteSequence, 0xFF);
^1da177e4c3f41 Linus Torvalds    2005-04-16  3695       
CHIPREG_WRITE32(&ioc->chip->WriteSequence, MPI_WRSEQ_1ST_KEY_VALUE);
^1da177e4c3f41 Linus Torvalds    2005-04-16  3696       
CHIPREG_WRITE32(&ioc->chip->WriteSequence, MPI_WRSEQ_2ND_KEY_VALUE);
^1da177e4c3f41 Linus Torvalds    2005-04-16  3697       
CHIPREG_WRITE32(&ioc->chip->WriteSequence, MPI_WRSEQ_3RD_KEY_VALUE);
^1da177e4c3f41 Linus Torvalds    2005-04-16  3698       
CHIPREG_WRITE32(&ioc->chip->WriteSequence, MPI_WRSEQ_4TH_KEY_VALUE);
^1da177e4c3f41 Linus Torvalds    2005-04-16  3699       
CHIPREG_WRITE32(&ioc->chip->WriteSequence, MPI_WRSEQ_5TH_KEY_VALUE);
^1da177e4c3f41 Linus Torvalds    2005-04-16  3700  
^1da177e4c3f41 Linus Torvalds    2005-04-16  3701       
CHIPREG_WRITE32(&ioc->chip->Diagnostic, (MPI_DIAG_PREVENT_IOC_BOOT | 
MPI_DIAG_DISABLE_ARM));
^1da177e4c3f41 Linus Torvalds    2005-04-16  3702  
^1da177e4c3f41 Linus Torvalds    2005-04-16  3703       /* wait 1 msec */
^1da177e4c3f41 Linus Torvalds    2005-04-16  3704       if (sleepFlag == 
CAN_SLEEP) {
d6be06c84da962 Michael Reed      2006-05-24  3705               msleep(1);
^1da177e4c3f41 Linus Torvalds    2005-04-16  3706       } else {
^1da177e4c3f41 Linus Torvalds    2005-04-16  3707               mdelay (1);
^1da177e4c3f41 Linus Torvalds    2005-04-16  3708       }
^1da177e4c3f41 Linus Torvalds    2005-04-16  3709  
^1da177e4c3f41 Linus Torvalds    2005-04-16  3710       diag0val = 
CHIPREG_READ32(&ioc->chip->Diagnostic);
^1da177e4c3f41 Linus Torvalds    2005-04-16  3711       
CHIPREG_WRITE32(&ioc->chip->Diagnostic, diag0val | MPI_DIAG_RESET_ADAPTER);
^1da177e4c3f41 Linus Torvalds    2005-04-16  3712  
^1da177e4c3f41 Linus Torvalds    2005-04-16  3713       for (count = 0; count < 
30; count ++) {
^1da177e4c3f41 Linus Torvalds    2005-04-16  3714               diag0val = 
CHIPREG_READ32(&ioc->chip->Diagnostic);
^1da177e4c3f41 Linus Torvalds    2005-04-16  3715               if (!(diag0val 
& MPI_DIAG_RESET_ADAPTER)) {
436ace725f35eb Prakash, Sathya   2007-07-24  3716                       
ddlprintk(ioc, printk(MYIOC_s_DEBUG_FMT "RESET_ADAPTER cleared, count=%d\n",
^1da177e4c3f41 Linus Torvalds    2005-04-16  3717                               
ioc->name, count));
^1da177e4c3f41 Linus Torvalds    2005-04-16  3718                       break;
^1da177e4c3f41 Linus Torvalds    2005-04-16  3719               }
82ffb671640647 Christoph Hellwig 2005-09-09  3720               /* wait .1 sec 
*/
^1da177e4c3f41 Linus Torvalds    2005-04-16  3721               if (sleepFlag 
== CAN_SLEEP) {
d6be06c84da962 Michael Reed      2006-05-24  3722                       msleep 
(100);
^1da177e4c3f41 Linus Torvalds    2005-04-16  3723               } else {
82ffb671640647 Christoph Hellwig 2005-09-09  3724                       mdelay 
(100);
^1da177e4c3f41 Linus Torvalds    2005-04-16  3725               }
^1da177e4c3f41 Linus Torvalds    2005-04-16  3726       }
^1da177e4c3f41 Linus Torvalds    2005-04-16  3727  
^1da177e4c3f41 Linus Torvalds    2005-04-16  3728       if ( count == 30 ) {
436ace725f35eb Prakash, Sathya   2007-07-24  3729               ddlprintk(ioc, 
printk(MYIOC_s_DEBUG_FMT "downloadboot failed! "
82ffb671640647 Christoph Hellwig 2005-09-09  3730               "Unable to get 
MPI_DIAG_DRWE mode, diag0val=%x\n",
^1da177e4c3f41 Linus Torvalds    2005-04-16  3731               ioc->name, 
diag0val));
^1da177e4c3f41 Linus Torvalds    2005-04-16  3732               return -3;
^1da177e4c3f41 Linus Torvalds    2005-04-16  3733       }
^1da177e4c3f41 Linus Torvalds    2005-04-16  3734  
^1da177e4c3f41 Linus Torvalds    2005-04-16  3735       
CHIPREG_WRITE32(&ioc->chip->WriteSequence, 0xFF);
^1da177e4c3f41 Linus Torvalds    2005-04-16  3736       
CHIPREG_WRITE32(&ioc->chip->WriteSequence, MPI_WRSEQ_1ST_KEY_VALUE);
^1da177e4c3f41 Linus Torvalds    2005-04-16  3737       
CHIPREG_WRITE32(&ioc->chip->WriteSequence, MPI_WRSEQ_2ND_KEY_VALUE);
^1da177e4c3f41 Linus Torvalds    2005-04-16  3738       
CHIPREG_WRITE32(&ioc->chip->WriteSequence, MPI_WRSEQ_3RD_KEY_VALUE);
^1da177e4c3f41 Linus Torvalds    2005-04-16  3739       
CHIPREG_WRITE32(&ioc->chip->WriteSequence, MPI_WRSEQ_4TH_KEY_VALUE);
^1da177e4c3f41 Linus Torvalds    2005-04-16  3740       
CHIPREG_WRITE32(&ioc->chip->WriteSequence, MPI_WRSEQ_5TH_KEY_VALUE);
^1da177e4c3f41 Linus Torvalds    2005-04-16  3741  
^1da177e4c3f41 Linus Torvalds    2005-04-16  3742       /* Set the DiagRwEn and 
Disable ARM bits */
^1da177e4c3f41 Linus Torvalds    2005-04-16  3743       
CHIPREG_WRITE32(&ioc->chip->Diagnostic, (MPI_DIAG_RW_ENABLE | 
MPI_DIAG_DISABLE_ARM));
^1da177e4c3f41 Linus Torvalds    2005-04-16  3744  
^1da177e4c3f41 Linus Torvalds    2005-04-16  3745       fwSize = 
(pFwHeader->ImageSize + 3)/4;
^1da177e4c3f41 Linus Torvalds    2005-04-16  3746       ptrFw = (u32 *) 
pFwHeader;
^1da177e4c3f41 Linus Torvalds    2005-04-16  3747  
^1da177e4c3f41 Linus Torvalds    2005-04-16  3748       /* Write the 
LoadStartAddress to the DiagRw Address Register
^1da177e4c3f41 Linus Torvalds    2005-04-16  3749        * using Programmed IO
^1da177e4c3f41 Linus Torvalds    2005-04-16  3750        */
3fadc59d603caf Moore, Eric Dean  2005-05-11  3751       if 
(ioc->errata_flag_1064)
3fadc59d603caf Moore, Eric Dean  2005-05-11  3752               
pci_enable_io_access(ioc->pcidev);
3fadc59d603caf Moore, Eric Dean  2005-05-11  3753  
^1da177e4c3f41 Linus Torvalds    2005-04-16 @3754       
CHIPREG_PIO_WRITE32(&ioc->pio_chip->DiagRwAddress, pFwHeader->LoadStartAddress);
436ace725f35eb Prakash, Sathya   2007-07-24  3755       ddlprintk(ioc, 
printk(MYIOC_s_DEBUG_FMT "LoadStart addr written 0x%x \n",
^1da177e4c3f41 Linus Torvalds    2005-04-16  3756               ioc->name, 
pFwHeader->LoadStartAddress));
^1da177e4c3f41 Linus Torvalds    2005-04-16  3757  
436ace725f35eb Prakash, Sathya   2007-07-24  3758       ddlprintk(ioc, 
printk(MYIOC_s_DEBUG_FMT "Write FW Image: 0x%x bytes @ %p\n",
^1da177e4c3f41 Linus Torvalds    2005-04-16  3759                               
ioc->name, fwSize*4, ptrFw));
^1da177e4c3f41 Linus Torvalds    2005-04-16  3760       while (fwSize--) {
^1da177e4c3f41 Linus Torvalds    2005-04-16  3761               
CHIPREG_PIO_WRITE32(&ioc->pio_chip->DiagRwData, *ptrFw++);
^1da177e4c3f41 Linus Torvalds    2005-04-16  3762       }
^1da177e4c3f41 Linus Torvalds    2005-04-16  3763  
^1da177e4c3f41 Linus Torvalds    2005-04-16  3764       nextImage = 
pFwHeader->NextImageHeaderOffset;
^1da177e4c3f41 Linus Torvalds    2005-04-16  3765       while (nextImage) {
^1da177e4c3f41 Linus Torvalds    2005-04-16  3766               pExtImage = 
(MpiExtImageHeader_t *) ((char *)pFwHeader + nextImage);
^1da177e4c3f41 Linus Torvalds    2005-04-16  3767  
^1da177e4c3f41 Linus Torvalds    2005-04-16  3768               load_addr = 
pExtImage->LoadStartAddress;
^1da177e4c3f41 Linus Torvalds    2005-04-16  3769  
^1da177e4c3f41 Linus Torvalds    2005-04-16  3770               fwSize = 
(pExtImage->ImageSize + 3) >> 2;
^1da177e4c3f41 Linus Torvalds    2005-04-16  3771               ptrFw = (u32 
*)pExtImage;
^1da177e4c3f41 Linus Torvalds    2005-04-16  3772  
436ace725f35eb Prakash, Sathya   2007-07-24  3773               ddlprintk(ioc, 
printk(MYIOC_s_DEBUG_FMT "Write Ext Image: 0x%x (%d) bytes @ %p load_addr=%x\n",
c6678e0cfb41b0 Christoph Hellwig 2005-08-18  3774                               
                ioc->name, fwSize*4, fwSize*4, ptrFw, load_addr));
^1da177e4c3f41 Linus Torvalds    2005-04-16  3775               
CHIPREG_PIO_WRITE32(&ioc->pio_chip->DiagRwAddress, load_addr);
^1da177e4c3f41 Linus Torvalds    2005-04-16  3776  
^1da177e4c3f41 Linus Torvalds    2005-04-16  3777               while 
(fwSize--) {
^1da177e4c3f41 Linus Torvalds    2005-04-16  3778                       
CHIPREG_PIO_WRITE32(&ioc->pio_chip->DiagRwData, *ptrFw++);
^1da177e4c3f41 Linus Torvalds    2005-04-16  3779               }
^1da177e4c3f41 Linus Torvalds    2005-04-16  3780               nextImage = 
pExtImage->NextImageHeaderOffset;
^1da177e4c3f41 Linus Torvalds    2005-04-16  3781       }
^1da177e4c3f41 Linus Torvalds    2005-04-16  3782  
^1da177e4c3f41 Linus Torvalds    2005-04-16  3783       /* Write the 
IopResetVectorRegAddr */
436ace725f35eb Prakash, Sathya   2007-07-24  3784       ddlprintk(ioc, 
printk(MYIOC_s_DEBUG_FMT "Write IopResetVector Addr=%x! \n", ioc->name,  
pFwHeader->IopResetRegAddr));
^1da177e4c3f41 Linus Torvalds    2005-04-16  3785       
CHIPREG_PIO_WRITE32(&ioc->pio_chip->DiagRwAddress, pFwHeader->IopResetRegAddr);
^1da177e4c3f41 Linus Torvalds    2005-04-16  3786  
^1da177e4c3f41 Linus Torvalds    2005-04-16  3787       /* Write the 
IopResetVectorValue */
436ace725f35eb Prakash, Sathya   2007-07-24  3788       ddlprintk(ioc, 
printk(MYIOC_s_DEBUG_FMT "Write IopResetVector Value=%x! \n", ioc->name, 
pFwHeader->IopResetVectorValue));
^1da177e4c3f41 Linus Torvalds    2005-04-16  3789       
CHIPREG_PIO_WRITE32(&ioc->pio_chip->DiagRwData, pFwHeader->IopResetVectorValue);
^1da177e4c3f41 Linus Torvalds    2005-04-16  3790  
^1da177e4c3f41 Linus Torvalds    2005-04-16  3791       /* Clear the internal 
flash bad bit - autoincrementing register,
^1da177e4c3f41 Linus Torvalds    2005-04-16  3792        * so must do two 
writes.
^1da177e4c3f41 Linus Torvalds    2005-04-16  3793        */
a9b2937a1eab29 Moore, Eric Dean  2005-11-16  3794       if (ioc->bus_type == 
SPI) {
82ffb671640647 Christoph Hellwig 2005-09-09  3795               /*
82ffb671640647 Christoph Hellwig 2005-09-09  3796                * 1030 and 
1035 H/W errata, workaround to access
82ffb671640647 Christoph Hellwig 2005-09-09  3797                * the 
ClearFlashBadSignatureBit
82ffb671640647 Christoph Hellwig 2005-09-09  3798                */
^1da177e4c3f41 Linus Torvalds    2005-04-16  3799               
CHIPREG_PIO_WRITE32(&ioc->pio_chip->DiagRwAddress, 0x3F000000);
^1da177e4c3f41 Linus Torvalds    2005-04-16 @3800               diagRwData = 
CHIPREG_PIO_READ32(&ioc->pio_chip->DiagRwData);
82ffb671640647 Christoph Hellwig 2005-09-09  3801               diagRwData |= 
0x40000000;
^1da177e4c3f41 Linus Torvalds    2005-04-16  3802               
CHIPREG_PIO_WRITE32(&ioc->pio_chip->DiagRwAddress, 0x3F000000);
^1da177e4c3f41 Linus Torvalds    2005-04-16  3803               
CHIPREG_PIO_WRITE32(&ioc->pio_chip->DiagRwData, diagRwData);
^1da177e4c3f41 Linus Torvalds    2005-04-16  3804  
82ffb671640647 Christoph Hellwig 2005-09-09  3805       } else /* 
if((ioc->bus_type == SAS) || (ioc->bus_type == FC)) */ {
82ffb671640647 Christoph Hellwig 2005-09-09  3806               diag0val = 
CHIPREG_READ32(&ioc->chip->Diagnostic);
82ffb671640647 Christoph Hellwig 2005-09-09  3807               
CHIPREG_WRITE32(&ioc->chip->Diagnostic, diag0val |
82ffb671640647 Christoph Hellwig 2005-09-09  3808                   
MPI_DIAG_CLEAR_FLASH_BAD_SIG);
82ffb671640647 Christoph Hellwig 2005-09-09  3809  
82ffb671640647 Christoph Hellwig 2005-09-09  3810               /* wait 1 msec 
*/
82ffb671640647 Christoph Hellwig 2005-09-09  3811               if (sleepFlag 
== CAN_SLEEP) {
d6be06c84da962 Michael Reed      2006-05-24  3812                       msleep 
(1);
82ffb671640647 Christoph Hellwig 2005-09-09  3813               } else {
82ffb671640647 Christoph Hellwig 2005-09-09  3814                       mdelay 
(1);
82ffb671640647 Christoph Hellwig 2005-09-09  3815               }
82ffb671640647 Christoph Hellwig 2005-09-09  3816       }
82ffb671640647 Christoph Hellwig 2005-09-09  3817  
3fadc59d603caf Moore, Eric Dean  2005-05-11  3818       if 
(ioc->errata_flag_1064)
3fadc59d603caf Moore, Eric Dean  2005-05-11  3819               
pci_disable_io_access(ioc->pcidev);
3fadc59d603caf Moore, Eric Dean  2005-05-11  3820  
^1da177e4c3f41 Linus Torvalds    2005-04-16  3821       diag0val = 
CHIPREG_READ32(&ioc->chip->Diagnostic);
436ace725f35eb Prakash, Sathya   2007-07-24  3822       ddlprintk(ioc, 
printk(MYIOC_s_DEBUG_FMT "downloadboot diag0val=%x, "
82ffb671640647 Christoph Hellwig 2005-09-09  3823               "turning off 
PREVENT_IOC_BOOT, DISABLE_ARM, RW_ENABLE\n",
^1da177e4c3f41 Linus Torvalds    2005-04-16  3824               ioc->name, 
diag0val));
82ffb671640647 Christoph Hellwig 2005-09-09  3825       diag0val &= 
~(MPI_DIAG_PREVENT_IOC_BOOT | MPI_DIAG_DISABLE_ARM | MPI_DIAG_RW_ENABLE);
436ace725f35eb Prakash, Sathya   2007-07-24  3826       ddlprintk(ioc, 
printk(MYIOC_s_DEBUG_FMT "downloadboot now diag0val=%x\n",
^1da177e4c3f41 Linus Torvalds    2005-04-16  3827               ioc->name, 
diag0val));
^1da177e4c3f41 Linus Torvalds    2005-04-16  3828       
CHIPREG_WRITE32(&ioc->chip->Diagnostic, diag0val);
^1da177e4c3f41 Linus Torvalds    2005-04-16  3829  
^1da177e4c3f41 Linus Torvalds    2005-04-16  3830       /* Write 0xFF to reset 
the sequencer */
^1da177e4c3f41 Linus Torvalds    2005-04-16  3831       
CHIPREG_WRITE32(&ioc->chip->WriteSequence, 0xFF);
^1da177e4c3f41 Linus Torvalds    2005-04-16  3832  
82ffb671640647 Christoph Hellwig 2005-09-09  3833       if (ioc->bus_type == 
SAS) {
82ffb671640647 Christoph Hellwig 2005-09-09  3834               ioc_state = 
mpt_GetIocState(ioc, 0);
82ffb671640647 Christoph Hellwig 2005-09-09  3835               if ( 
(GetIocFacts(ioc, sleepFlag,
82ffb671640647 Christoph Hellwig 2005-09-09  3836                               
MPT_HOSTEVENT_IOC_BRINGUP)) != 0 ) {
436ace725f35eb Prakash, Sathya   2007-07-24  3837                       
ddlprintk(ioc, printk(MYIOC_s_DEBUG_FMT "GetIocFacts failed: IocState=%x\n",
82ffb671640647 Christoph Hellwig 2005-09-09  3838                               
        ioc->name, ioc_state));
82ffb671640647 Christoph Hellwig 2005-09-09  3839                       return 
-EFAULT;
82ffb671640647 Christoph Hellwig 2005-09-09  3840               }
82ffb671640647 Christoph Hellwig 2005-09-09  3841       }
82ffb671640647 Christoph Hellwig 2005-09-09  3842  
^1da177e4c3f41 Linus Torvalds    2005-04-16  3843       for (count=0; 
count<HZ*20; count++) {
^1da177e4c3f41 Linus Torvalds    2005-04-16  3844               if ((ioc_state 
= mpt_GetIocState(ioc, 0)) & MPI_IOC_STATE_READY) {
436ace725f35eb Prakash, Sathya   2007-07-24  3845                       
ddlprintk(ioc, printk(MYIOC_s_DEBUG_FMT
436ace725f35eb Prakash, Sathya   2007-07-24  3846                               
"downloadboot successful! (count=%d) IocState=%x\n",
^1da177e4c3f41 Linus Torvalds    2005-04-16  3847                               
ioc->name, count, ioc_state));
82ffb671640647 Christoph Hellwig 2005-09-09  3848                       if 
(ioc->bus_type == SAS) {
82ffb671640647 Christoph Hellwig 2005-09-09  3849                               
return 0;
82ffb671640647 Christoph Hellwig 2005-09-09  3850                       }
^1da177e4c3f41 Linus Torvalds    2005-04-16  3851                       if 
((SendIocInit(ioc, sleepFlag)) != 0) {
436ace725f35eb Prakash, Sathya   2007-07-24  3852                               
ddlprintk(ioc, printk(MYIOC_s_DEBUG_FMT
436ace725f35eb Prakash, Sathya   2007-07-24  3853                               
        "downloadboot: SendIocInit failed\n",
^1da177e4c3f41 Linus Torvalds    2005-04-16  3854                               
        ioc->name));
^1da177e4c3f41 Linus Torvalds    2005-04-16  3855                               
return -EFAULT;
^1da177e4c3f41 Linus Torvalds    2005-04-16  3856                       }
436ace725f35eb Prakash, Sathya   2007-07-24  3857                       
ddlprintk(ioc, printk(MYIOC_s_DEBUG_FMT
436ace725f35eb Prakash, Sathya   2007-07-24  3858                               
        "downloadboot: SendIocInit successful\n",
^1da177e4c3f41 Linus Torvalds    2005-04-16  3859                               
        ioc->name));
^1da177e4c3f41 Linus Torvalds    2005-04-16  3860                       return 
0;
^1da177e4c3f41 Linus Torvalds    2005-04-16  3861               }
^1da177e4c3f41 Linus Torvalds    2005-04-16  3862               if (sleepFlag 
== CAN_SLEEP) {
d6be06c84da962 Michael Reed      2006-05-24  3863                       msleep 
(10);
^1da177e4c3f41 Linus Torvalds    2005-04-16  3864               } else {
^1da177e4c3f41 Linus Torvalds    2005-04-16  3865                       mdelay 
(10);
^1da177e4c3f41 Linus Torvalds    2005-04-16  3866               }
^1da177e4c3f41 Linus Torvalds    2005-04-16  3867       }
436ace725f35eb Prakash, Sathya   2007-07-24  3868       ddlprintk(ioc, 
printk(MYIOC_s_DEBUG_FMT
436ace725f35eb Prakash, Sathya   2007-07-24  3869               "downloadboot 
failed! IocState=%x\n",ioc->name, ioc_state));
^1da177e4c3f41 Linus Torvalds    2005-04-16  3870       return -EFAULT;
^1da177e4c3f41 Linus Torvalds    2005-04-16  3871  }
^1da177e4c3f41 Linus Torvalds    2005-04-16  3872  

:::::: The code at line 3754 was first introduced by commit
:::::: 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 Linux-2.6.12-rc2

:::::: TO: Linus Torvalds <torva...@ppc970.osdl.org>
:::::: CC: Linus Torvalds <torva...@ppc970.osdl.org>

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-...@lists.01.org

Attachment: .config.gz
Description: application/gzip

Reply via email to