Lines Matching refs:raid
323 struct MR_LD_RAID *raid; in MR_ValidateMapInfo() local
374 raid = MR_LdRaidGet(ld, drv_map); in MR_ValidateMapInfo()
375 le32_to_cpus((u32 *)&raid->capability); in MR_ValidateMapInfo()
388 struct MR_LD_RAID *raid = MR_LdRaidGet(ld, map); in MR_GetSpanBlock() local
391 for (span = 0; span < raid->spanDepth; span++, pSpanBlock++) { in MR_GetSpanBlock()
406 blk = (blk + le64_to_cpu(quad->offsetInSpan)) << raid->stripeShift; in MR_GetSpanBlock()
438 struct MR_LD_RAID *raid = MR_LdRaidGet(ld, map); in mr_spanset_get_span_block() local
453 for (span = 0; span < raid->spanDepth; span++) in mr_spanset_get_span_block()
471 << raid->stripeShift; in mr_spanset_get_span_block()
501 struct MR_LD_RAID *raid = MR_LdRaidGet(ld, map); in get_row_from_strip() local
520 for (span = 0, span_offset = 0; span < raid->spanDepth; span++) in get_row_from_strip()
558 struct MR_LD_RAID *raid = MR_LdRaidGet(ld, map); in get_strip_from_row() local
573 for (span = 0; span < raid->spanDepth; span++) in get_strip_from_row()
619 struct MR_LD_RAID *raid = MR_LdRaidGet(ld, map); in get_arm_from_strip() local
636 for (span = 0, span_offset = 0; span < raid->spanDepth; span++) in get_arm_from_strip()
662 struct MR_LD_RAID *raid = MR_LdRaidGet(ld, map); in get_arm() local
666 switch (raid->level) { in get_arm()
706 struct MR_LD_RAID *raid = MR_LdRaidGet(ld, map); in mr_spanset_get_phy_params() local
725 if (raid->level == 6) { in mr_spanset_get_phy_params()
749 (raid->level == 1) && in mr_spanset_get_phy_params()
757 if ((raid->level >= 5) && in mr_spanset_get_phy_params()
760 (raid->regTypeReqOnRead != REGION_TYPE_UNUSED)))) in mr_spanset_get_phy_params()
762 else if (raid->level == 1) { in mr_spanset_get_phy_params()
809 struct MR_LD_RAID *raid = MR_LdRaidGet(ld, map); in MR_GetPhyParams() local
822 row = mega_div64_32(stripRow, raid->rowDataSize); in MR_GetPhyParams()
824 if (raid->level == 6) { in MR_GetPhyParams()
826 u32 logArm = mega_mod64(stripRow, raid->rowDataSize); in MR_GetPhyParams()
829 if (raid->rowSize == 0) in MR_GetPhyParams()
832 rowMod = mega_mod64(row, raid->rowSize); in MR_GetPhyParams()
833 armQ = raid->rowSize-1-rowMod; /* index of Q drive */ in MR_GetPhyParams()
835 if (arm >= raid->rowSize) /* handle wrap condition */ in MR_GetPhyParams()
836 arm -= raid->rowSize; in MR_GetPhyParams()
839 if (raid->modFactor == 0) in MR_GetPhyParams()
842 raid->modFactor), in MR_GetPhyParams()
846 if (raid->spanDepth == 1) { in MR_GetPhyParams()
848 *pdBlock = row << raid->stripeShift; in MR_GetPhyParams()
865 (raid->level == 1) && in MR_GetPhyParams()
873 if ((raid->level >= 5) && in MR_GetPhyParams()
876 (raid->regTypeReqOnRead != REGION_TYPE_UNUSED)))) in MR_GetPhyParams()
878 else if (raid->level == 1) { in MR_GetPhyParams()
921 struct MR_LD_RAID *raid; in MR_BuildRaidContext() local
945 raid = MR_LdRaidGet(ld, map); in MR_BuildRaidContext()
947 io_info->ra_capable = raid->capability.ra_capable; in MR_BuildRaidContext()
953 if (raid->rowDataSize == 0) { in MR_BuildRaidContext()
968 stripSize = 1 << raid->stripeShift; in MR_BuildRaidContext()
975 start_strip = ldStartBlock >> raid->stripeShift; in MR_BuildRaidContext()
979 endStrip = endLba >> raid->stripeShift; in MR_BuildRaidContext()
992 if (raid->spanDepth == 1) { in MR_BuildRaidContext()
994 *pdBlock = start_row << raid->stripeShift; in MR_BuildRaidContext()
1010 start_row = mega_div64_32(start_strip, raid->rowDataSize); in MR_BuildRaidContext()
1011 endRow = mega_div64_32(endStrip, raid->rowDataSize); in MR_BuildRaidContext()
1020 regStart = start_row << raid->stripeShift; in MR_BuildRaidContext()
1024 io_info->do_fp_rlbypass = raid->capability.fpBypassRegionLock; in MR_BuildRaidContext()
1027 if (raid->capability.fpCapable) { in MR_BuildRaidContext()
1029 io_info->fpOkForIo = (raid->capability.fpReadCapable && in MR_BuildRaidContext()
1031 raid->capability. in MR_BuildRaidContext()
1034 io_info->fpOkForIo = (raid->capability.fpWriteCapable && in MR_BuildRaidContext()
1036 raid->capability. in MR_BuildRaidContext()
1053 if (start_strip == (start_row + 1) * raid->rowDataSize - 1) { in MR_BuildRaidContext()
1062 regSize += (numRows-2) << raid->stripeShift; in MR_BuildRaidContext()
1065 if (endStrip == endRow*raid->rowDataSize) in MR_BuildRaidContext()
1086 regSize += (numRows-2) << raid->stripeShift; in MR_BuildRaidContext()
1096 cpu_to_le16(raid->fpIoTimeoutForLd ? in MR_BuildRaidContext()
1097 raid->fpIoTimeoutForLd : in MR_BuildRaidContext()
1101 raid->regTypeReqOnRead : raid->regTypeReqOnWrite; in MR_BuildRaidContext()
1104 REGION_TYPE_SHARED_READ : raid->regTypeReqOnWrite; in MR_BuildRaidContext()
1105 pRAID_Context->virtual_disk_tgt_id = raid->targetId; in MR_BuildRaidContext()
1108 pRAID_Context->config_seq_num = raid->seqNum; in MR_BuildRaidContext()
1110 *raidLUN = raid->LUN; in MR_BuildRaidContext()
1162 struct MR_LD_RAID *raid; in mr_update_span_set() local
1173 raid = MR_LdRaidGet(ld, map); in mr_update_span_set()
1175 for (span = 0; span < raid->spanDepth; span++) { in mr_update_span_set()
1188 count < raid->spanDepth; count++) { in mr_update_span_set()
1209 ((span_row << raid->stripeShift) in mr_update_span_set()
1229 ((span_row << raid->stripeShift) in mr_update_span_set()
1251 if (span == raid->spanDepth) in mr_update_span_set()
1262 struct MR_LD_RAID *raid; in mr_update_load_balance_params() local
1274 raid = MR_LdRaidGet(ld, drv_map); in mr_update_load_balance_params()
1275 if ((raid->level != 1) || in mr_update_load_balance_params()
1276 (raid->ldState != MR_LD_STATE_OPTIMAL)) { in mr_update_load_balance_params()
1289 struct MR_LD_RAID *raid; in megasas_get_best_arm_pd() local
1304 raid = MR_LdRaidGet(ld, drv_map); in megasas_get_best_arm_pd()
1306 SPAN_ROW_SIZE(drv_map, ld, span) : raid->rowSize; in megasas_get_best_arm_pd()