Hi Christoph, First bad commit (maybe != root cause): tree: https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git master head: 50b8b1d699ac313c0a07a3c185ffb23aecab8abb commit: 8cad3b66bff4ee7c7d52b9a663cb6a2c5f66a7f7 [8921/13745] Buslogic: remove ISA support config: ia64-allmodconfig (attached as .config) compiler: ia64-linux-gcc (GCC) 9.3.0 reproduce (this is a W=1 build): wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross chmod +x ~/bin/make.cross # https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/commit/?id=8cad3b66bff4ee7c7d52b9a663cb6a2c5f66a7f7 git remote add linux-next https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git git fetch --no-tags linux-next master git checkout 8cad3b66bff4ee7c7d52b9a663cb6a2c5f66a7f7 # save the attached .config to linux build tree COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross W=1 ARCH=ia64 If you fix the issue, kindly add following tag as appropriate Reported-by: kernel test robot <lkp@xxxxxxxxx> All errors (new ones prefixed by >>): In file included from include/uapi/linux/signal.h:6, from include/linux/signal_types.h:10, from include/linux/sched.h:30, from arch/ia64/include/asm/hw_irq.h:11, from include/linux/irq.h:589, from arch/ia64/include/asm/hardirq.h:19, from include/linux/hardirq.h:10, from include/linux/interrupt.h:11, from drivers/scsi/BusLogic.c:27: arch/ia64/include/uapi/asm/siginfo.h:15:27: error: expected ':', ',', ';', '}' or '__attribute__' before '.' token 15 | #define si_flags _sifields._sigfault._flags | ^ drivers/scsi/FlashPoint.c:43:6: note: in expansion of macro 'si_flags' 43 | u16 si_flags; | ^~~~~~~~ In file included from drivers/scsi/BusLogic.c:51: drivers/scsi/FlashPoint.c: In function 'FlashPoint_ProbeHostAdapter': >> drivers/scsi/FlashPoint.c:1076:11: error: 'struct sccb_mgr_info' has no member named '_sifields' 1076 | pCardInfo->si_flags = 0x0000; | ^~ drivers/scsi/FlashPoint.c:1079:12: error: 'struct sccb_mgr_info' has no member named '_sifields' 1079 | pCardInfo->si_flags |= SCSI_PARITY_ENA; | ^~ drivers/scsi/FlashPoint.c:1082:12: error: 'struct sccb_mgr_info' has no member named '_sifields' 1082 | pCardInfo->si_flags |= SOFT_RESET; | ^~ drivers/scsi/FlashPoint.c:1085:12: error: 'struct sccb_mgr_info' has no member named '_sifields' 1085 | pCardInfo->si_flags |= EXTENDED_TRANSLATION; | ^~ drivers/scsi/FlashPoint.c:1088:12: error: 'struct sccb_mgr_info' has no member named '_sifields' 1088 | pCardInfo->si_flags |= FLAG_SCAM_ENABLED; | ^~ drivers/scsi/FlashPoint.c:1091:12: error: 'struct sccb_mgr_info' has no member named '_sifields' 1091 | pCardInfo->si_flags |= FLAG_SCAM_LEVEL2; | ^~ drivers/scsi/FlashPoint.c:1107:12: error: 'struct sccb_mgr_info' has no member named '_sifields' 1107 | pCardInfo->si_flags |= SUPPORT_16TAR_32LUN; | ^~ drivers/scsi/FlashPoint.c:1109:11: error: 'struct sccb_mgr_info' has no member named 'si_card_family' 1109 | pCardInfo->si_card_family = HARPOON_FAMILY; | ^~ >> drivers/scsi/FlashPoint.c:1110:11: error: 'struct sccb_mgr_info' has no member named 'si_bustype' 1110 | pCardInfo->si_bustype = BUSTYPE_PCI; | ^~ >> drivers/scsi/FlashPoint.c:1113:12: error: 'struct sccb_mgr_info' has no member named 'si_card_model' 1113 | pCardInfo->si_card_model[0] = '9'; | ^~ drivers/scsi/FlashPoint.c:1116:13: error: 'struct sccb_mgr_info' has no member named 'si_card_model' 1116 | pCardInfo->si_card_model[1] = '3'; | ^~ drivers/scsi/FlashPoint.c:1117:13: error: 'struct sccb_mgr_info' has no member named 'si_card_model' 1117 | pCardInfo->si_card_model[2] = '0'; | ^~ drivers/scsi/FlashPoint.c:1120:13: error: 'struct sccb_mgr_info' has no member named 'si_card_model' 1120 | pCardInfo->si_card_model[1] = '5'; | ^~ drivers/scsi/FlashPoint.c:1121:13: error: 'struct sccb_mgr_info' has no member named 'si_card_model' 1121 | pCardInfo->si_card_model[2] = '0'; | ^~ drivers/scsi/FlashPoint.c:1124:13: error: 'struct sccb_mgr_info' has no member named 'si_card_model' 1124 | pCardInfo->si_card_model[1] = '3'; | ^~ drivers/scsi/FlashPoint.c:1125:13: error: 'struct sccb_mgr_info' has no member named 'si_card_model' 1125 | pCardInfo->si_card_model[2] = '2'; | ^~ drivers/scsi/FlashPoint.c:1128:13: error: 'struct sccb_mgr_info' has no member named 'si_card_model' 1128 | pCardInfo->si_card_model[1] = '5'; | ^~ drivers/scsi/FlashPoint.c:1129:13: error: 'struct sccb_mgr_info' has no member named 'si_card_model' 1129 | pCardInfo->si_card_model[2] = '2'; | ^~ drivers/scsi/FlashPoint.c:1134:12: error: 'struct sccb_mgr_info' has no member named 'si_card_model' 1134 | pCardInfo->si_card_model[0] = (unsigned char)(temp >> 8); | ^~ drivers/scsi/FlashPoint.c:1137:12: error: 'struct sccb_mgr_info' has no member named 'si_card_model' 1137 | pCardInfo->si_card_model[1] = (unsigned char)(temp & 0x00FF); | ^~ drivers/scsi/FlashPoint.c:1138:12: error: 'struct sccb_mgr_info' has no member named 'si_card_model' 1138 | pCardInfo->si_card_model[2] = (unsigned char)(temp >> 8); | ^~ drivers/scsi/FlashPoint.c:1141:15: error: 'struct sccb_mgr_info' has no member named 'si_card_model' 1141 | if (pCardInfo->si_card_model[1] == '3') { | ^~ drivers/scsi/FlashPoint.c:1143:13: error: 'struct sccb_mgr_info' has no member named '_sifields' 1143 | pCardInfo->si_flags |= LOW_BYTE_TERM; | ^~ drivers/scsi/FlashPoint.c:1144:22: error: 'struct sccb_mgr_info' has no member named 'si_card_model' 1144 | } else if (pCardInfo->si_card_model[2] == '0') { | ^~ drivers/scsi/FlashPoint.c:1148:13: error: 'struct sccb_mgr_info' has no member named '_sifields' 1148 | pCardInfo->si_flags |= LOW_BYTE_TERM; | ^~ drivers/scsi/FlashPoint.c:1151:13: error: 'struct sccb_mgr_info' has no member named '_sifields' 1151 | pCardInfo->si_flags |= HIGH_BYTE_TERM; | ^~ drivers/scsi/FlashPoint.c:1169:13: error: 'struct sccb_mgr_info' has no member named '_sifields' 1169 | pCardInfo->si_flags |= LOW_BYTE_TERM; | ^~ drivers/scsi/FlashPoint.c:1171:13: error: 'struct sccb_mgr_info' has no member named '_sifields' 1171 | pCardInfo->si_flags |= HIGH_BYTE_TERM; | ^~ >> drivers/scsi/FlashPoint.c:1178:12: error: 'struct sccb_mgr_info' has no member named 'si_XlatInfo' 1178 | pCardInfo->si_XlatInfo[i] = | ^~ >> drivers/scsi/FlashPoint.c:1185:11: error: 'struct sccb_mgr_info' has no member named 'si_relative_cardnum' 1185 | pCardInfo->si_relative_cardnum = | ^~ drivers/scsi/FlashPoint.c: In function 'FlashPoint_HardwareResetHostAdapter': drivers/scsi/FlashPoint.c:1278:30: error: 'struct sccb_mgr_info' has no member named '_sifields' 1278 | i = (unsigned char)pCardInfo->si_flags; | ^~ drivers/scsi/FlashPoint.c:1292:17: error: 'struct sccb_mgr_info' has no member named '_sifields' 1292 | if (!(pCardInfo->si_flags & SOFT_RESET)) { | ^~ drivers/scsi/FlashPoint.c:1299:15: error: 'struct sccb_mgr_info' has no member named '_sifields' 1299 | if (pCardInfo->si_flags & POST_ALL_UNDERRRUNS) | ^~ drivers/scsi/FlashPoint.c: In function 'FlashPoint_AbortCCB': drivers/scsi/FlashPoint.c:1618:16: warning: variable 'TID' set but not used [-Wunused-but-set-variable] 1618 | unsigned char TID; | ^~~ drivers/scsi/BusLogic.c: In function 'blogic_msg': drivers/scsi/BusLogic.c:3447:2: warning: function 'blogic_msg' might be a candidate for 'gnu_printf' format attribute [-Wsuggest-attribute=format] 3447 | len = vsprintf(buf, fmt, args); | ^~~ vim +1076 drivers/scsi/FlashPoint.c ^1da177e4c3f41 Linus Torvalds 2005-04-16 929 47b5d69c4aa753 James Bottomley 2005-04-24 930 /*--------------------------------------------------------------------- ^1da177e4c3f41 Linus Torvalds 2005-04-16 931 * d8b6b8bd8a99ee Alexey Dobriyan 2006-03-08 932 * Function: FlashPoint_ProbeHostAdapter ^1da177e4c3f41 Linus Torvalds 2005-04-16 933 * 47b5d69c4aa753 James Bottomley 2005-04-24 934 * Description: Setup and/or Search for cards and return info to caller. ^1da177e4c3f41 Linus Torvalds 2005-04-16 935 * 47b5d69c4aa753 James Bottomley 2005-04-24 936 *---------------------------------------------------------------------*/ ^1da177e4c3f41 Linus Torvalds 2005-04-16 937 7f101662dd55aa Alexey Dobriyan 2006-03-08 938 static int FlashPoint_ProbeHostAdapter(struct sccb_mgr_info *pCardInfo) 47b5d69c4aa753 James Bottomley 2005-04-24 939 { db038cf86fc63d Alexey Dobriyan 2006-03-08 940 static unsigned char first_time = 1; ^1da177e4c3f41 Linus Torvalds 2005-04-16 941 db038cf86fc63d Alexey Dobriyan 2006-03-08 942 unsigned char i, j, id, ScamFlg; c823feeb33161c Alexey Dobriyan 2006-03-08 943 unsigned short temp, temp2, temp3, temp4, temp5, temp6; 391e2f25601e34 Khalid Aziz 2013-05-16 944 u32 ioport; 68d0c1ae66413e Alexey Dobriyan 2006-03-08 945 struct nvram_info *pCurrNvRam; ^1da177e4c3f41 Linus Torvalds 2005-04-16 946 47b5d69c4aa753 James Bottomley 2005-04-24 947 ioport = pCardInfo->si_baseaddr; ^1da177e4c3f41 Linus Torvalds 2005-04-16 948 47b5d69c4aa753 James Bottomley 2005-04-24 949 if (RD_HARPOON(ioport + hp_vendor_id_0) != ORION_VEND_0) 5c1b85e209af41 Alexey Dobriyan 2006-03-08 950 return (int)FAILURE; ^1da177e4c3f41 Linus Torvalds 2005-04-16 951 ^1da177e4c3f41 Linus Torvalds 2005-04-16 952 if ((RD_HARPOON(ioport + hp_vendor_id_1) != ORION_VEND_1)) 5c1b85e209af41 Alexey Dobriyan 2006-03-08 953 return (int)FAILURE; ^1da177e4c3f41 Linus Torvalds 2005-04-16 954 ^1da177e4c3f41 Linus Torvalds 2005-04-16 955 if ((RD_HARPOON(ioport + hp_device_id_0) != ORION_DEV_0)) 5c1b85e209af41 Alexey Dobriyan 2006-03-08 956 return (int)FAILURE; ^1da177e4c3f41 Linus Torvalds 2005-04-16 957 ^1da177e4c3f41 Linus Torvalds 2005-04-16 958 if ((RD_HARPOON(ioport + hp_device_id_1) != ORION_DEV_1)) 5c1b85e209af41 Alexey Dobriyan 2006-03-08 959 return (int)FAILURE; ^1da177e4c3f41 Linus Torvalds 2005-04-16 960 ^1da177e4c3f41 Linus Torvalds 2005-04-16 961 if (RD_HARPOON(ioport + hp_rev_num) != 0x0f) { ^1da177e4c3f41 Linus Torvalds 2005-04-16 962 ^1da177e4c3f41 Linus Torvalds 2005-04-16 963 /* For new Harpoon then check for sub_device ID LSB ^1da177e4c3f41 Linus Torvalds 2005-04-16 964 the bits(0-3) must be all ZERO for compatible with ^1da177e4c3f41 Linus Torvalds 2005-04-16 965 current version of SCCBMgr, else skip this Harpoon ^1da177e4c3f41 Linus Torvalds 2005-04-16 966 device. */ ^1da177e4c3f41 Linus Torvalds 2005-04-16 967 ^1da177e4c3f41 Linus Torvalds 2005-04-16 968 if (RD_HARPOON(ioport + hp_sub_device_id_0) & 0x0f) 5c1b85e209af41 Alexey Dobriyan 2006-03-08 969 return (int)FAILURE; ^1da177e4c3f41 Linus Torvalds 2005-04-16 970 } ^1da177e4c3f41 Linus Torvalds 2005-04-16 971 5c04a7b8981f28 Alexey Dobriyan 2006-03-08 972 if (first_time) { 47b5d69c4aa753 James Bottomley 2005-04-24 973 FPT_SccbMgrTableInitAll(); ^1da177e4c3f41 Linus Torvalds 2005-04-16 974 first_time = 0; 47b5d69c4aa753 James Bottomley 2005-04-24 975 FPT_mbCards = 0; ^1da177e4c3f41 Linus Torvalds 2005-04-16 976 } ^1da177e4c3f41 Linus Torvalds 2005-04-16 977 47b5d69c4aa753 James Bottomley 2005-04-24 978 if (FPT_RdStack(ioport, 0) != 0x00) { 5c04a7b8981f28 Alexey Dobriyan 2006-03-08 979 if (FPT_ChkIfChipInitialized(ioport) == 0) { ^1da177e4c3f41 Linus Torvalds 2005-04-16 980 pCurrNvRam = NULL; ^1da177e4c3f41 Linus Torvalds 2005-04-16 981 WR_HARPOON(ioport + hp_semaphore, 0x00); 47b5d69c4aa753 James Bottomley 2005-04-24 982 FPT_XbowInit(ioport, 0); /*Must Init the SCSI before attempting */ 47b5d69c4aa753 James Bottomley 2005-04-24 983 FPT_DiagEEPROM(ioport); 5c04a7b8981f28 Alexey Dobriyan 2006-03-08 984 } else { 47b5d69c4aa753 James Bottomley 2005-04-24 985 if (FPT_mbCards < MAX_MB_CARDS) { 47b5d69c4aa753 James Bottomley 2005-04-24 986 pCurrNvRam = &FPT_nvRamInfo[FPT_mbCards]; 47b5d69c4aa753 James Bottomley 2005-04-24 987 FPT_mbCards++; ^1da177e4c3f41 Linus Torvalds 2005-04-16 988 pCurrNvRam->niBaseAddr = ioport; 47b5d69c4aa753 James Bottomley 2005-04-24 989 FPT_RNVRamData(pCurrNvRam); ^1da177e4c3f41 Linus Torvalds 2005-04-16 990 } else 5c1b85e209af41 Alexey Dobriyan 2006-03-08 991 return (int)FAILURE; ^1da177e4c3f41 Linus Torvalds 2005-04-16 992 } ^1da177e4c3f41 Linus Torvalds 2005-04-16 993 } else ^1da177e4c3f41 Linus Torvalds 2005-04-16 994 pCurrNvRam = NULL; ^1da177e4c3f41 Linus Torvalds 2005-04-16 995 ^1da177e4c3f41 Linus Torvalds 2005-04-16 996 WR_HARPOON(ioport + hp_clkctrl_0, CLKCTRL_DEFAULT); ^1da177e4c3f41 Linus Torvalds 2005-04-16 997 WR_HARPOON(ioport + hp_sys_ctrl, 0x00); ^1da177e4c3f41 Linus Torvalds 2005-04-16 998 ^1da177e4c3f41 Linus Torvalds 2005-04-16 999 if (pCurrNvRam) ^1da177e4c3f41 Linus Torvalds 2005-04-16 1000 pCardInfo->si_id = pCurrNvRam->niAdapId; ^1da177e4c3f41 Linus Torvalds 2005-04-16 1001 else 5c04a7b8981f28 Alexey Dobriyan 2006-03-08 1002 pCardInfo->si_id = 5c04a7b8981f28 Alexey Dobriyan 2006-03-08 1003 (unsigned 5c04a7b8981f28 Alexey Dobriyan 2006-03-08 1004 char)(FPT_utilEERead(ioport, 5c04a7b8981f28 Alexey Dobriyan 2006-03-08 1005 (ADAPTER_SCSI_ID / 5c04a7b8981f28 Alexey Dobriyan 2006-03-08 1006 2)) & (unsigned char)0x0FF); ^1da177e4c3f41 Linus Torvalds 2005-04-16 1007 ^1da177e4c3f41 Linus Torvalds 2005-04-16 1008 pCardInfo->si_lun = 0x00; ^1da177e4c3f41 Linus Torvalds 2005-04-16 1009 pCardInfo->si_fw_revision = ORION_FW_REV; ^1da177e4c3f41 Linus Torvalds 2005-04-16 1010 temp2 = 0x0000; ^1da177e4c3f41 Linus Torvalds 2005-04-16 1011 temp3 = 0x0000; ^1da177e4c3f41 Linus Torvalds 2005-04-16 1012 temp4 = 0x0000; ^1da177e4c3f41 Linus Torvalds 2005-04-16 1013 temp5 = 0x0000; ^1da177e4c3f41 Linus Torvalds 2005-04-16 1014 temp6 = 0x0000; ^1da177e4c3f41 Linus Torvalds 2005-04-16 1015 ^1da177e4c3f41 Linus Torvalds 2005-04-16 1016 for (id = 0; id < (16 / 2); id++) { ^1da177e4c3f41 Linus Torvalds 2005-04-16 1017 ^1da177e4c3f41 Linus Torvalds 2005-04-16 1018 if (pCurrNvRam) { c823feeb33161c Alexey Dobriyan 2006-03-08 1019 temp = (unsigned short)pCurrNvRam->niSyncTbl[id]; ^1da177e4c3f41 Linus Torvalds 2005-04-16 1020 temp = ((temp & 0x03) + ((temp << 4) & 0xc0)) + ^1da177e4c3f41 Linus Torvalds 2005-04-16 1021 (((temp << 4) & 0x0300) + ((temp << 8) & 0xc000)); ^1da177e4c3f41 Linus Torvalds 2005-04-16 1022 } else 5c04a7b8981f28 Alexey Dobriyan 2006-03-08 1023 temp = 5c04a7b8981f28 Alexey Dobriyan 2006-03-08 1024 FPT_utilEERead(ioport, 5c04a7b8981f28 Alexey Dobriyan 2006-03-08 1025 (unsigned short)((SYNC_RATE_TBL / 2) 5c04a7b8981f28 Alexey Dobriyan 2006-03-08 1026 + id)); ^1da177e4c3f41 Linus Torvalds 2005-04-16 1027 ^1da177e4c3f41 Linus Torvalds 2005-04-16 1028 for (i = 0; i < 2; temp >>= 8, i++) { ^1da177e4c3f41 Linus Torvalds 2005-04-16 1029 ^1da177e4c3f41 Linus Torvalds 2005-04-16 1030 temp2 >>= 1; ^1da177e4c3f41 Linus Torvalds 2005-04-16 1031 temp3 >>= 1; ^1da177e4c3f41 Linus Torvalds 2005-04-16 1032 temp4 >>= 1; ^1da177e4c3f41 Linus Torvalds 2005-04-16 1033 temp5 >>= 1; ^1da177e4c3f41 Linus Torvalds 2005-04-16 1034 temp6 >>= 1; 5c04a7b8981f28 Alexey Dobriyan 2006-03-08 1035 switch (temp & 0x3) { ^1da177e4c3f41 Linus Torvalds 2005-04-16 1036 case AUTO_RATE_20: /* Synchronous, 20 mega-transfers/second */ df561f6688fef7 Gustavo A. R. Silva 2020-08-23 1037 temp6 |= 0x8000; df561f6688fef7 Gustavo A. R. Silva 2020-08-23 1038 fallthrough; ^1da177e4c3f41 Linus Torvalds 2005-04-16 1039 case AUTO_RATE_10: /* Synchronous, 10 mega-transfers/second */ df561f6688fef7 Gustavo A. R. Silva 2020-08-23 1040 temp5 |= 0x8000; df561f6688fef7 Gustavo A. R. Silva 2020-08-23 1041 fallthrough; ^1da177e4c3f41 Linus Torvalds 2005-04-16 1042 case AUTO_RATE_05: /* Synchronous, 5 mega-transfers/second */ df561f6688fef7 Gustavo A. R. Silva 2020-08-23 1043 temp2 |= 0x8000; df561f6688fef7 Gustavo A. R. Silva 2020-08-23 1044 fallthrough; ^1da177e4c3f41 Linus Torvalds 2005-04-16 1045 case AUTO_RATE_00: /* Asynchronous */ ^1da177e4c3f41 Linus Torvalds 2005-04-16 1046 break; ^1da177e4c3f41 Linus Torvalds 2005-04-16 1047 } ^1da177e4c3f41 Linus Torvalds 2005-04-16 1048 ^1da177e4c3f41 Linus Torvalds 2005-04-16 1049 if (temp & DISC_ENABLE_BIT) ^1da177e4c3f41 Linus Torvalds 2005-04-16 1050 temp3 |= 0x8000; ^1da177e4c3f41 Linus Torvalds 2005-04-16 1051 ^1da177e4c3f41 Linus Torvalds 2005-04-16 1052 if (temp & WIDE_NEGO_BIT) ^1da177e4c3f41 Linus Torvalds 2005-04-16 1053 temp4 |= 0x8000; ^1da177e4c3f41 Linus Torvalds 2005-04-16 1054 ^1da177e4c3f41 Linus Torvalds 2005-04-16 1055 } ^1da177e4c3f41 Linus Torvalds 2005-04-16 1056 } ^1da177e4c3f41 Linus Torvalds 2005-04-16 1057 ^1da177e4c3f41 Linus Torvalds 2005-04-16 1058 pCardInfo->si_per_targ_init_sync = temp2; ^1da177e4c3f41 Linus Torvalds 2005-04-16 1059 pCardInfo->si_per_targ_no_disc = temp3; ^1da177e4c3f41 Linus Torvalds 2005-04-16 1060 pCardInfo->si_per_targ_wide_nego = temp4; ^1da177e4c3f41 Linus Torvalds 2005-04-16 1061 pCardInfo->si_per_targ_fast_nego = temp5; ^1da177e4c3f41 Linus Torvalds 2005-04-16 1062 pCardInfo->si_per_targ_ultra_nego = temp6; ^1da177e4c3f41 Linus Torvalds 2005-04-16 1063 ^1da177e4c3f41 Linus Torvalds 2005-04-16 1064 if (pCurrNvRam) ^1da177e4c3f41 Linus Torvalds 2005-04-16 1065 i = pCurrNvRam->niSysConf; ^1da177e4c3f41 Linus Torvalds 2005-04-16 1066 else 5c04a7b8981f28 Alexey Dobriyan 2006-03-08 1067 i = (unsigned 5c04a7b8981f28 Alexey Dobriyan 2006-03-08 1068 char)(FPT_utilEERead(ioport, (SYSTEM_CONFIG / 2))); ^1da177e4c3f41 Linus Torvalds 2005-04-16 1069 ^1da177e4c3f41 Linus Torvalds 2005-04-16 1070 if (pCurrNvRam) ^1da177e4c3f41 Linus Torvalds 2005-04-16 1071 ScamFlg = pCurrNvRam->niScamConf; ^1da177e4c3f41 Linus Torvalds 2005-04-16 1072 else 5c04a7b8981f28 Alexey Dobriyan 2006-03-08 1073 ScamFlg = 5c04a7b8981f28 Alexey Dobriyan 2006-03-08 1074 (unsigned char)FPT_utilEERead(ioport, SCAM_CONFIG / 2); ^1da177e4c3f41 Linus Torvalds 2005-04-16 1075 ^1da177e4c3f41 Linus Torvalds 2005-04-16 @1076 pCardInfo->si_flags = 0x0000; ^1da177e4c3f41 Linus Torvalds 2005-04-16 1077 ^1da177e4c3f41 Linus Torvalds 2005-04-16 1078 if (i & 0x01) ^1da177e4c3f41 Linus Torvalds 2005-04-16 1079 pCardInfo->si_flags |= SCSI_PARITY_ENA; ^1da177e4c3f41 Linus Torvalds 2005-04-16 1080 ^1da177e4c3f41 Linus Torvalds 2005-04-16 1081 if (!(i & 0x02)) ^1da177e4c3f41 Linus Torvalds 2005-04-16 1082 pCardInfo->si_flags |= SOFT_RESET; ^1da177e4c3f41 Linus Torvalds 2005-04-16 1083 ^1da177e4c3f41 Linus Torvalds 2005-04-16 1084 if (i & 0x10) ^1da177e4c3f41 Linus Torvalds 2005-04-16 1085 pCardInfo->si_flags |= EXTENDED_TRANSLATION; ^1da177e4c3f41 Linus Torvalds 2005-04-16 1086 ^1da177e4c3f41 Linus Torvalds 2005-04-16 1087 if (ScamFlg & SCAM_ENABLED) ^1da177e4c3f41 Linus Torvalds 2005-04-16 1088 pCardInfo->si_flags |= FLAG_SCAM_ENABLED; ^1da177e4c3f41 Linus Torvalds 2005-04-16 1089 ^1da177e4c3f41 Linus Torvalds 2005-04-16 1090 if (ScamFlg & SCAM_LEVEL2) ^1da177e4c3f41 Linus Torvalds 2005-04-16 @1091 pCardInfo->si_flags |= FLAG_SCAM_LEVEL2; ^1da177e4c3f41 Linus Torvalds 2005-04-16 1092 ^1da177e4c3f41 Linus Torvalds 2005-04-16 1093 j = (RD_HARPOON(ioport + hp_bm_ctrl) & ~SCSI_TERM_ENA_L); ^1da177e4c3f41 Linus Torvalds 2005-04-16 1094 if (i & 0x04) { ^1da177e4c3f41 Linus Torvalds 2005-04-16 1095 j |= SCSI_TERM_ENA_L; ^1da177e4c3f41 Linus Torvalds 2005-04-16 1096 } ^1da177e4c3f41 Linus Torvalds 2005-04-16 1097 WR_HARPOON(ioport + hp_bm_ctrl, j); ^1da177e4c3f41 Linus Torvalds 2005-04-16 1098 ^1da177e4c3f41 Linus Torvalds 2005-04-16 1099 j = (RD_HARPOON(ioport + hp_ee_ctrl) & ~SCSI_TERM_ENA_H); ^1da177e4c3f41 Linus Torvalds 2005-04-16 1100 if (i & 0x08) { ^1da177e4c3f41 Linus Torvalds 2005-04-16 1101 j |= SCSI_TERM_ENA_H; ^1da177e4c3f41 Linus Torvalds 2005-04-16 1102 } ^1da177e4c3f41 Linus Torvalds 2005-04-16 1103 WR_HARPOON(ioport + hp_ee_ctrl, j); ^1da177e4c3f41 Linus Torvalds 2005-04-16 1104 ^1da177e4c3f41 Linus Torvalds 2005-04-16 1105 if (!(RD_HARPOON(ioport + hp_page_ctrl) & NARROW_SCSI_CARD)) ^1da177e4c3f41 Linus Torvalds 2005-04-16 1106 ^1da177e4c3f41 Linus Torvalds 2005-04-16 @1107 pCardInfo->si_flags |= SUPPORT_16TAR_32LUN; ^1da177e4c3f41 Linus Torvalds 2005-04-16 1108 ^1da177e4c3f41 Linus Torvalds 2005-04-16 1109 pCardInfo->si_card_family = HARPOON_FAMILY; ^1da177e4c3f41 Linus Torvalds 2005-04-16 @1110 pCardInfo->si_bustype = BUSTYPE_PCI; ^1da177e4c3f41 Linus Torvalds 2005-04-16 1111 ^1da177e4c3f41 Linus Torvalds 2005-04-16 1112 if (pCurrNvRam) { ^1da177e4c3f41 Linus Torvalds 2005-04-16 @1113 pCardInfo->si_card_model[0] = '9'; ^1da177e4c3f41 Linus Torvalds 2005-04-16 1114 switch (pCurrNvRam->niModel & 0x0f) { ^1da177e4c3f41 Linus Torvalds 2005-04-16 1115 case MODEL_LT: ^1da177e4c3f41 Linus Torvalds 2005-04-16 1116 pCardInfo->si_card_model[1] = '3'; ^1da177e4c3f41 Linus Torvalds 2005-04-16 1117 pCardInfo->si_card_model[2] = '0'; ^1da177e4c3f41 Linus Torvalds 2005-04-16 1118 break; ^1da177e4c3f41 Linus Torvalds 2005-04-16 1119 case MODEL_LW: ^1da177e4c3f41 Linus Torvalds 2005-04-16 1120 pCardInfo->si_card_model[1] = '5'; ^1da177e4c3f41 Linus Torvalds 2005-04-16 1121 pCardInfo->si_card_model[2] = '0'; ^1da177e4c3f41 Linus Torvalds 2005-04-16 1122 break; ^1da177e4c3f41 Linus Torvalds 2005-04-16 1123 case MODEL_DL: ^1da177e4c3f41 Linus Torvalds 2005-04-16 1124 pCardInfo->si_card_model[1] = '3'; ^1da177e4c3f41 Linus Torvalds 2005-04-16 1125 pCardInfo->si_card_model[2] = '2'; ^1da177e4c3f41 Linus Torvalds 2005-04-16 1126 break; ^1da177e4c3f41 Linus Torvalds 2005-04-16 1127 case MODEL_DW: ^1da177e4c3f41 Linus Torvalds 2005-04-16 1128 pCardInfo->si_card_model[1] = '5'; ^1da177e4c3f41 Linus Torvalds 2005-04-16 1129 pCardInfo->si_card_model[2] = '2'; ^1da177e4c3f41 Linus Torvalds 2005-04-16 1130 break; ^1da177e4c3f41 Linus Torvalds 2005-04-16 1131 } ^1da177e4c3f41 Linus Torvalds 2005-04-16 1132 } else { 47b5d69c4aa753 James Bottomley 2005-04-24 1133 temp = FPT_utilEERead(ioport, (MODEL_NUMB_0 / 2)); db038cf86fc63d Alexey Dobriyan 2006-03-08 1134 pCardInfo->si_card_model[0] = (unsigned char)(temp >> 8); 47b5d69c4aa753 James Bottomley 2005-04-24 1135 temp = FPT_utilEERead(ioport, (MODEL_NUMB_2 / 2)); ^1da177e4c3f41 Linus Torvalds 2005-04-16 1136 db038cf86fc63d Alexey Dobriyan 2006-03-08 1137 pCardInfo->si_card_model[1] = (unsigned char)(temp & 0x00FF); db038cf86fc63d Alexey Dobriyan 2006-03-08 1138 pCardInfo->si_card_model[2] = (unsigned char)(temp >> 8); ^1da177e4c3f41 Linus Torvalds 2005-04-16 1139 } ^1da177e4c3f41 Linus Torvalds 2005-04-16 1140 5c04a7b8981f28 Alexey Dobriyan 2006-03-08 1141 if (pCardInfo->si_card_model[1] == '3') { ^1da177e4c3f41 Linus Torvalds 2005-04-16 1142 if (RD_HARPOON(ioport + hp_ee_ctrl) & BIT(7)) ^1da177e4c3f41 Linus Torvalds 2005-04-16 1143 pCardInfo->si_flags |= LOW_BYTE_TERM; 5c04a7b8981f28 Alexey Dobriyan 2006-03-08 1144 } else if (pCardInfo->si_card_model[2] == '0') { ^1da177e4c3f41 Linus Torvalds 2005-04-16 1145 temp = RD_HARPOON(ioport + hp_xfer_pad); ^1da177e4c3f41 Linus Torvalds 2005-04-16 1146 WR_HARPOON(ioport + hp_xfer_pad, (temp & ~BIT(4))); ^1da177e4c3f41 Linus Torvalds 2005-04-16 1147 if (RD_HARPOON(ioport + hp_ee_ctrl) & BIT(7)) ^1da177e4c3f41 Linus Torvalds 2005-04-16 1148 pCardInfo->si_flags |= LOW_BYTE_TERM; ^1da177e4c3f41 Linus Torvalds 2005-04-16 1149 WR_HARPOON(ioport + hp_xfer_pad, (temp | BIT(4))); ^1da177e4c3f41 Linus Torvalds 2005-04-16 1150 if (RD_HARPOON(ioport + hp_ee_ctrl) & BIT(7)) ^1da177e4c3f41 Linus Torvalds 2005-04-16 @1151 pCardInfo->si_flags |= HIGH_BYTE_TERM; ^1da177e4c3f41 Linus Torvalds 2005-04-16 1152 WR_HARPOON(ioport + hp_xfer_pad, temp); 5c04a7b8981f28 Alexey Dobriyan 2006-03-08 1153 } else { ^1da177e4c3f41 Linus Torvalds 2005-04-16 1154 temp = RD_HARPOON(ioport + hp_ee_ctrl); ^1da177e4c3f41 Linus Torvalds 2005-04-16 1155 temp2 = RD_HARPOON(ioport + hp_xfer_pad); ^1da177e4c3f41 Linus Torvalds 2005-04-16 1156 WR_HARPOON(ioport + hp_ee_ctrl, (temp | SEE_CS)); ^1da177e4c3f41 Linus Torvalds 2005-04-16 1157 WR_HARPOON(ioport + hp_xfer_pad, (temp2 | BIT(4))); ^1da177e4c3f41 Linus Torvalds 2005-04-16 1158 temp3 = 0; 5c04a7b8981f28 Alexey Dobriyan 2006-03-08 1159 for (i = 0; i < 8; i++) { ^1da177e4c3f41 Linus Torvalds 2005-04-16 1160 temp3 <<= 1; ^1da177e4c3f41 Linus Torvalds 2005-04-16 1161 if (!(RD_HARPOON(ioport + hp_ee_ctrl) & BIT(7))) ^1da177e4c3f41 Linus Torvalds 2005-04-16 1162 temp3 |= 1; ^1da177e4c3f41 Linus Torvalds 2005-04-16 1163 WR_HARPOON(ioport + hp_xfer_pad, (temp2 & ~BIT(4))); ^1da177e4c3f41 Linus Torvalds 2005-04-16 1164 WR_HARPOON(ioport + hp_xfer_pad, (temp2 | BIT(4))); ^1da177e4c3f41 Linus Torvalds 2005-04-16 1165 } ^1da177e4c3f41 Linus Torvalds 2005-04-16 1166 WR_HARPOON(ioport + hp_ee_ctrl, temp); ^1da177e4c3f41 Linus Torvalds 2005-04-16 1167 WR_HARPOON(ioport + hp_xfer_pad, temp2); ^1da177e4c3f41 Linus Torvalds 2005-04-16 1168 if (!(temp3 & BIT(7))) ^1da177e4c3f41 Linus Torvalds 2005-04-16 @1169 pCardInfo->si_flags |= LOW_BYTE_TERM; ^1da177e4c3f41 Linus Torvalds 2005-04-16 1170 if (!(temp3 & BIT(6))) ^1da177e4c3f41 Linus Torvalds 2005-04-16 1171 pCardInfo->si_flags |= HIGH_BYTE_TERM; ^1da177e4c3f41 Linus Torvalds 2005-04-16 1172 } ^1da177e4c3f41 Linus Torvalds 2005-04-16 1173 ^1da177e4c3f41 Linus Torvalds 2005-04-16 1174 ARAM_ACCESS(ioport); ^1da177e4c3f41 Linus Torvalds 2005-04-16 1175 ^1da177e4c3f41 Linus Torvalds 2005-04-16 1176 for (i = 0; i < 4; i++) { ^1da177e4c3f41 Linus Torvalds 2005-04-16 1177 ^1da177e4c3f41 Linus Torvalds 2005-04-16 @1178 pCardInfo->si_XlatInfo[i] = ^1da177e4c3f41 Linus Torvalds 2005-04-16 1179 RD_HARPOON(ioport + hp_aramBase + BIOS_DATA_OFFSET + i); ^1da177e4c3f41 Linus Torvalds 2005-04-16 1180 } ^1da177e4c3f41 Linus Torvalds 2005-04-16 1181 ^1da177e4c3f41 Linus Torvalds 2005-04-16 1182 /* return with -1 if no sort, else return with ^1da177e4c3f41 Linus Torvalds 2005-04-16 1183 logical card number sorted by BIOS (zero-based) */ ^1da177e4c3f41 Linus Torvalds 2005-04-16 1184 ^1da177e4c3f41 Linus Torvalds 2005-04-16 @1185 pCardInfo->si_relative_cardnum = 5c04a7b8981f28 Alexey Dobriyan 2006-03-08 1186 (unsigned 5c04a7b8981f28 Alexey Dobriyan 2006-03-08 1187 char)(RD_HARPOON(ioport + hp_aramBase + BIOS_RELATIVE_CARD) - 1); ^1da177e4c3f41 Linus Torvalds 2005-04-16 1188 ^1da177e4c3f41 Linus Torvalds 2005-04-16 1189 SGRAM_ACCESS(ioport); ^1da177e4c3f41 Linus Torvalds 2005-04-16 1190 47b5d69c4aa753 James Bottomley 2005-04-24 1191 FPT_s_PhaseTbl[0] = FPT_phaseDataOut; 47b5d69c4aa753 James Bottomley 2005-04-24 1192 FPT_s_PhaseTbl[1] = FPT_phaseDataIn; 47b5d69c4aa753 James Bottomley 2005-04-24 1193 FPT_s_PhaseTbl[2] = FPT_phaseIllegal; 47b5d69c4aa753 James Bottomley 2005-04-24 1194 FPT_s_PhaseTbl[3] = FPT_phaseIllegal; 47b5d69c4aa753 James Bottomley 2005-04-24 1195 FPT_s_PhaseTbl[4] = FPT_phaseCommand; 47b5d69c4aa753 James Bottomley 2005-04-24 1196 FPT_s_PhaseTbl[5] = FPT_phaseStatus; 47b5d69c4aa753 James Bottomley 2005-04-24 1197 FPT_s_PhaseTbl[6] = FPT_phaseMsgOut; 47b5d69c4aa753 James Bottomley 2005-04-24 1198 FPT_s_PhaseTbl[7] = FPT_phaseMsgIn; ^1da177e4c3f41 Linus Torvalds 2005-04-16 1199 ^1da177e4c3f41 Linus Torvalds 2005-04-16 1200 pCardInfo->si_present = 0x01; ^1da177e4c3f41 Linus Torvalds 2005-04-16 1201 5c1b85e209af41 Alexey Dobriyan 2006-03-08 1202 return 0; ^1da177e4c3f41 Linus Torvalds 2005-04-16 1203 } ^1da177e4c3f41 Linus Torvalds 2005-04-16 1204 :::::: The code at line 1076 was first introduced by commit :::::: 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 Linux-2.6.12-rc2 :::::: TO: Linus Torvalds <torvalds@xxxxxxxxxxxxxxx> :::::: CC: Linus Torvalds <torvalds@xxxxxxxxxxxxxxx> --- 0-DAY CI Kernel Test Service, Intel Corporation https://lists.01.org/hyperkitty/list/kbuild-all@xxxxxxxxxxxx
Attachment:
.config.gz
Description: application/gzip