[PATCH v8 3/5] iommu/arm-smmu: introduction of ACTLR for custom prefetcher settings
Bibek Kumar Patro
quic_bibekkum at quicinc.com
Fri Jan 19 02:05:14 PST 2024
On 1/18/2024 11:25 PM, Konrad Dybcio wrote:
>
>
> On 1/16/24 16:04, Bibek Kumar Patro wrote:
>> Currently in Qualcomm SoCs the default prefetch is set to 1 which allows
>> the TLB to fetch just the next page table. MMU-500 features ACTLR
>> register which is implementation defined and is used for Qualcomm SoCs
>> to have a custom prefetch setting enabling TLB to prefetch the next set
>> of page tables accordingly allowing for faster translations.
>>
>> ACTLR value is unique for each SMR (Stream matching register) and stored
>> in a pre-populated table. This value is set to the register during
>> context bank initialisation.
>>
>> Suggested-by: Dmitry Baryshkov <dmitry.baryshkov at linaro.org>
>
> Since it's your idea with Dmitry's review suggestions, I don't think
> this tag makes sense.
>
> It's normally used for situations like:
>
> Colleague X: "Hey Bibek, I noticed x broke on y, can you fix it?"
> "Sure!" <proceeds to make a commit with suggested-by Colleague X>
>
Got it, thanks for the inputs. Will remove this tag as it won't make
sense in this case as explained by you.
> Just a nit below:
>
>> +struct actlr_config {
>> + u16 sid;
>> + u16 mask;
>> + u32 actlr;
>> +};
>
> This, can go here, in the header:
>
Sure, Noted. Will add this to the header.
Initially made it local, since it is only being used
in the tables.
Thanks,
Bibek
>> +struct actlr_config;
>> +
>> +struct actlr_variant {
>> + const resource_size_t io_start;
>> + const struct actlr_config * const actlrcfg;
>> + const size_t num_actlrcfg;
>> +};
>> +
>
> Otherwise, this looks good!
>
> Konrad
More information about the linux-arm-kernel
mailing list