Lines Matching refs:idx
196 unsigned long idx = GPT_L1_INDEX(ALIGN_2MB(base)); in shatter_2mb() local
202 fill_desc(&gpi_info->gpt_l1_addr[idx], l1_desc, L1_QWORDS_2MB); in shatter_2mb()
208 unsigned long idx = GPT_L1_INDEX(ALIGN_2MB(base)); in shatter_32mb() local
209 const uint64_t *l1_gran = &gpi_info->gpt_l1_addr[idx]; in shatter_32mb()
217 idx = GPT_L1_INDEX(ALIGN_32MB(base)); in shatter_32mb()
218 l1 = &gpi_info->gpt_l1_addr[idx]; in shatter_32mb()
232 unsigned long idx = GPT_L1_INDEX(ALIGN_32MB(base)); in shatter_512mb() local
233 const uint64_t *l1_32mb = &gpi_info->gpt_l1_addr[idx]; in shatter_512mb()
241 idx = GPT_L1_INDEX(ALIGN_512MB(base)); in shatter_512mb()
242 l1 = &gpi_info->gpt_l1_addr[idx]; in shatter_512mb()
365 unsigned int idx; in validate_pas_mappings() local
373 for (idx = 0U; idx < pas_region_cnt; idx++) { in validate_pas_mappings()
375 if ((ULONG_MAX - pas_regions[idx].base_pa) < in validate_pas_mappings()
376 pas_regions[idx].size) { in validate_pas_mappings()
377 ERROR("GPT: Address overflow in PAS[%u]!\n", idx); in validate_pas_mappings()
382 if (((pas_regions[idx].base_pa + pas_regions[idx].size) > in validate_pas_mappings()
384 !is_gpi_valid(GPT_PAS_ATTR_GPI(pas_regions[idx].attrs))) { in validate_pas_mappings()
385 ERROR("GPT: PAS[%u] is invalid!\n", idx); in validate_pas_mappings()
394 for (unsigned int i = idx + 1U; i < pas_region_cnt; i++) { in validate_pas_mappings()
395 if (check_pas_overlap(pas_regions[idx].base_pa, in validate_pas_mappings()
396 pas_regions[idx].size, in validate_pas_mappings()
400 i, idx); in validate_pas_mappings()
412 (unsigned int)GPT_L0_IDX(pas_regions[idx].base_pa); in validate_pas_mappings()
413 i <= GPT_L0_IDX(pas_regions[idx].base_pa + in validate_pas_mappings()
414 pas_regions[idx].size - 1UL); in validate_pas_mappings()
427 idx, i); in validate_pas_mappings()
432 if (GPT_PAS_ATTR_MAP_TYPE(pas_regions[idx].attrs) == in validate_pas_mappings()
435 if (!GPT_IS_L0_ALIGNED(pas_regions[idx].base_pa) || in validate_pas_mappings()
436 !GPT_IS_L0_ALIGNED(pas_regions[idx].size)) { in validate_pas_mappings()
438 idx); in validate_pas_mappings()
446 if (GPT_PAS_ATTR_MAP_TYPE(pas_regions[idx].attrs) == in validate_pas_mappings()
449 if (!GPT_IS_L1_ALIGNED(gpt_config.p, pas_regions[idx].base_pa) || in validate_pas_mappings()
450 !GPT_IS_L1_ALIGNED(gpt_config.p, pas_regions[idx].size)) { in validate_pas_mappings()
452 idx); in validate_pas_mappings()
457 pas_l1_cnt = (GPT_L0_IDX(pas_regions[idx].base_pa + in validate_pas_mappings()
458 pas_regions[idx].size - 1UL) - in validate_pas_mappings()
459 GPT_L0_IDX(pas_regions[idx].base_pa) + 1U); in validate_pas_mappings()
478 GPT_L0_IDX(pas_regions[idx].base_pa + in validate_pas_mappings()
479 pas_regions[idx].size - 1UL), in validate_pas_mappings()
480 pas_regions, idx)) { in validate_pas_mappings()
486 GPT_L0_IDX(pas_regions[idx].base_pa), in validate_pas_mappings()
487 pas_regions, idx)) { in validate_pas_mappings()
496 ERROR("GPT: PAS[%u] has invalid mapping type 0x%x.\n", idx, in validate_pas_mappings()
497 GPT_PAS_ATTR_MAP_TYPE(pas_regions[idx].attrs)); in validate_pas_mappings()
617 unsigned long idx, end_idx; in generate_l0_blk_desc() local
634 idx = GPT_L0_IDX(pas->base_pa); in generate_l0_blk_desc()
644 for (; idx < end_idx; idx++) { in generate_l0_blk_desc()
645 l0_gpt_arr[idx] = gpt_desc; in generate_l0_blk_desc()
647 idx, &l0_gpt_arr[idx], in generate_l0_blk_desc()
649 GPT_L0_BLK_DESC_GPI_MASK, l0_gpt_arr[idx]); in generate_l0_blk_desc()
723 unsigned long idx = GPT_L1_INDEX(first); in fill_l1_cont_desc() local
752 fill_desc(&l1[idx], l1_desc, cnt); in fill_l1_cont_desc()
989 unsigned long idx; in flush_l0_for_pas_array() local
1002 for (idx = 1UL; idx < pas_count; idx++) { in flush_l0_for_pas_array()
1003 if (GPT_L0_IDX(pas[idx].base_pa) < start_idx) { in flush_l0_for_pas_array()
1004 start_idx = GPT_L0_IDX(pas[idx].base_pa); in flush_l0_for_pas_array()
1006 if (GPT_L0_IDX(pas[idx].base_pa + pas[idx].size - 1UL) > end_idx) { in flush_l0_for_pas_array()
1007 end_idx = GPT_L0_IDX(pas[idx].base_pa + pas[idx].size - 1UL); in flush_l0_for_pas_array()
1218 for (unsigned int idx = 0U; idx < pas_count; idx++) { in gpt_init_pas_l1_tables() local
1220 idx, pas_regions[idx].base_pa, pas_regions[idx].size, in gpt_init_pas_l1_tables()
1221 GPT_PAS_ATTR_GPI(pas_regions[idx].attrs), in gpt_init_pas_l1_tables()
1222 GPT_PAS_ATTR_MAP_TYPE(pas_regions[idx].attrs)); in gpt_init_pas_l1_tables()
1225 if (GPT_PAS_ATTR_MAP_TYPE(pas_regions[idx].attrs) == in gpt_init_pas_l1_tables()
1227 generate_l0_blk_desc(&pas_regions[idx]); in gpt_init_pas_l1_tables()
1230 generate_l0_tbl_desc(&pas_regions[idx]); in gpt_init_pas_l1_tables()
1351 unsigned int gpi_shift, unsigned int idx, in write_gpt() argument
1356 gpt_l1_addr[idx] = *gpt_l1_desc; in write_gpt()
1380 gpi_info->idx = (unsigned int)GPT_L1_INDEX(base); in get_gpi_params()
1400 gpi_info->gpt_l1_desc = (gpi_info->gpt_l1_addr)[gpi_info->idx]; in read_gpi()
1441 unsigned int long idx = GPT_L1_INDEX(ALIGN_2MB(base)) + in check_fuse_2mb() local
1452 if (gpi_info->gpt_l1_addr[idx--] != l1_desc) { in check_fuse_2mb()
1491 unsigned long idx = GPT_L1_INDEX(ALIGN_32MB(base)) + in check_fuse_32mb() local
1509 if (gpi_info->gpt_l1_addr[idx] != l1_cont_desc) { in check_fuse_32mb()
1513 idx -= gpt_l1_cnt_2mb; in check_fuse_32mb()
1549 unsigned long idx = GPT_L1_INDEX(ALIGN_512MB(base)) + in check_fuse_512mb() local
1567 if (gpi_info->gpt_l1_addr[idx] != l1_cont_desc) { in check_fuse_512mb()
1571 idx -= 16UL * gpt_l1_cnt_2mb; in check_fuse_512mb()
1790 gpi_info.gpi_shift, gpi_info.idx, target_pas); in gpt_delegate_pas()
1916 gpi_info.gpi_shift, gpi_info.idx, GPT_GPI_NO_ACCESS); in gpt_undelegate_pas()
1934 gpi_info.gpi_shift, gpi_info.idx, GPT_GPI_NS); in gpt_undelegate_pas()