Attention is currently required from: Furquan Shaikh, Tim Wawrzynczak, Subrata Banik, Arthur Heymans, Patrick Rudolph. Subrata Banik has posted comments on this change. ( https://review.coreboot.org/c/coreboot/+/56717 )
Change subject: soc/intel/common: Calculate and configure SF Mask 2 ......................................................................
Patch Set 2:
(1 comment)
File src/soc/intel/common/block/cpu/car/cache_as_ram.S:
https://review.coreboot.org/c/coreboot/+/56717/comment/9a610963_c8007de1 PS2, Line 522: #if CONFIG(SF_MASK_2BITS_PER_WAY) : mov %edx, %ebx /* back up data_ways in ebx */ : #endif : #if CONFIG(CAR_HAS_SF_MASKS) : /* : * Calculate SF masks: : * if CONFIG_SF_MASK_2BITS_PER_WAY: data_ways = data_ways / 2 : * Program MSR 0x1892 Non-Eviction Mask #2 : * IA32_CR_SF_QOS_MASK_2 = ((1 << data_ways) - 1) : */ : #if CONFIG(SF_MASK_2BITS_PER_WAY) : movl $0x01, %ecx : shr %cl, %ebx : mov %ebx, %ecx : movl $0x01, %ebx : shl %cl, %ebx : subl $0x01, %ebx : #else : mov %esi, %ebx : #endif : mov %ebx, %eax /* restore data_ways in eax */
- What if %ebx (# of data ways to protect) is 1 on line 534? […]
yes, i had the exact discussion with Furquan about what if the data_way is 1 then /2 would be problem but later i have forget that to comprehend, thanks for catching this case.
only one thing i would like to change here is that rogram_sf2: // for #1 xorl %edx, %edx mov %eax, %ebx /* Back up %ebx for programming SF1 */ mov $IA32_CR_SF_QOS_MASK_2, %ecx wrmsr