lkml.org 
[lkml]   [2022]   [Nov]   [24]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
SubjectRe: [Patch V2] memory: tegra: Remove clients SID override programming
From

On 11/22/2022 4:44 PM, Krzysztof Kozlowski wrote:
> External email: Use caution opening links or attachments
>
>
> On 22/11/2022 06:31, Ashish Mhetre wrote:
>> On newer Tegra releases, early boot SID override programming and SID
>> override programming during resume is handled by bootloader.
>> Also, SID override is programmed on-demand during probe_finalize() call
>> of IOMMU which is done in tegra186_mc_client_sid_override() in this same
>> file. This function does it more correctly by checking if write is
>> permitted on SID override register. It also checks if SID override
>> register is already written with correct value and skips re-writing it
>> in that case.
>> Hence, removing the SID override programming of all clients.
>>
>> Fixes: 393d66fd2cac ("memory: tegra: Implement SID override programming")
> I could not get from commit msg what is the bug being fixed. You just
> said "more correctly", but usually things are either correct or not.
> What are visible effects of the bug?
>
> Otherwise it sounds more like optimization or a bit better approach, but
> not a bugfix.
>
> Best regards,
> Krzysztof

Thanks for the review. In the function tegra186_mc_program_sid() which is
getting removed, SID override register of all clients is written without
checking if secure firmware has allowed write on it or not. If write is
disabled by secure firmware then it can lead to errors coming from secure
firmware and hang in kernel boot. So, that's a possible bug.
Also, it's an optimization over current approach because it saves time by
removing re-writing of these SID override registers as in new Tegra releases
SID override of all clients is programmed by bootloader. So, MC driver don't
need to program them again.

Thanks,
Ashish Mhetre

\
 
 \ /
  Last update: 2022-11-24 11:21    [W:0.056 / U:0.332 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site