[PATCH 2/7] coresight: Convert disclaim functions to take a struct cs_access

James Clark james.clark at linaro.org
Tue Mar 18 02:27:10 PDT 2025



On 17/03/2025 6:29 pm, Leo Yan wrote:
> On Mon, Mar 17, 2025 at 11:36:40AM +0000, James Clark wrote:
>>
>>
>> On 13/03/2025 2:54 pm, Leo Yan wrote:
>>> On Tue, Feb 11, 2025 at 10:39:38AM +0000, James Clark wrote:
>>>
>>> [...]
>>>
>>>>    static inline bool coresight_is_claimed_any(struct coresight_device *csdev)
>>>>    {
>>>> -       return coresight_read_claim_tags(csdev) != 0;
>>>> +       return coresight_read_claim_tags(&csdev->access) != 0;
>>>>    }
>>>
>>> Likewise other claim functions, can coresight_is_claimed_any() change its
>>> argument type from struct coresight_device to struct csdev_access?
>>
>> I only wanted to change the ones that I had to. I think we should prioritize
>> passing csdev as much as possible in the coresight framework to make
>> everything consistent. Otherwise it's extra churn for no benefit, and if we
>> need something from csdev here in the future we'll have to change this one
>> back again.
> 
> The function coresight_is_claimed_any() has been deleted in a later
> patch.  So this is fine for me.
> 
> In theory, claim tags are low level operations and don't need a
> CoreSight device context, I prefer we can keep them as simple as
> possible.
> 
> With this series, we can see coresight_claim_device() and
> coresight_disclaim_device() are inconsistent for their parameters:
> one is using "struct coresight_device *" and another is
> "struct csdev_access *".  Maybe we just proceed to use csdev_access
> for all claim tag functions?
> 

That's because coresight_claim_device() has logging which requires the 
device name to make it useful. If anything, coresight_disclaim_device() 
should actually take a csdev and then print a better log message. I 
don't think there's a way to make it consistent when there are different 
requirements for each level of operations. The ones with logging need a 
csdev and the lower level ones used on probe need to work with only csa.

> If later we need to use a CoreSight device context when operating
> claim tags, it means we might have different scenarios and we can
> handle that separately.
> 
> Thanks,
> Leo





More information about the linux-arm-kernel mailing list