Re: [PATCH] mmc: sdhci-msm: Slot indexing for distinguishing multiple SDCC instances

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 25/10/24 13:37, Sachin Gupta wrote:
> 
> 
> On 10/24/2024 4:38 PM, Adrian Hunter wrote:
>> On 22/10/24 17:18, Sachin Gupta wrote:
>>> This update addresses the requirement for accurate slot indexing
>>> in the sdhci-msm driver to differentiate between multiple SDCC
>>> (Secure Digital Card Controller) instances, such as eMMC, SD card,
>>> and SDIO.
>>>
>>> Additionally, it revises the slot indexing logic to comply with
>>> the new device tree (DT) specifications.
>>
>> This patch seems incomplete because all it does is assign a global
>> variable which is never used again.
>>
> 
> Qualcomm internal debugging tools utilize this global variable to
> access and differentiate between all the instance's sdhci_msm_host
> data structure (eMMC, SD card, and SDIO).

The kernel does not accept code that does not serve a functional
purpose.

You could look at using eBPF or KGDB to get the information,
otherwise you might just have to carry that kind of patch in
your internal tree.

> 
>>>
>>> Signed-off-by: Ram Prakash Gupta <quic_rampraka@xxxxxxxxxxx>
>>> Signed-off-by: Sarthak Garg <quic_sartgarg@xxxxxxxxxxx>
>>> Signed-off-by: Maramaina Naresh <quic_mnaresh@xxxxxxxxxxx>
>>> Signed-off-by: Ziqi Chen <quic_ziqichen@xxxxxxxxxxx>
>>> Signed-off-by: Sachin Gupta <quic_sachgupt@xxxxxxxxxxx>
>>> ---
>>>   drivers/mmc/host/sdhci-msm.c | 10 ++++++++++
>>>   1 file changed, 10 insertions(+)
>>>
>>> diff --git a/drivers/mmc/host/sdhci-msm.c b/drivers/mmc/host/sdhci-msm.c
>>> index e113b99a3eab..3cb79117916f 100644
>>> --- a/drivers/mmc/host/sdhci-msm.c
>>> +++ b/drivers/mmc/host/sdhci-msm.c
>>> @@ -292,6 +292,8 @@ struct sdhci_msm_host {
>>>       bool vqmmc_enabled;
>>>   };
>>>   +static struct sdhci_msm_host *sdhci_slot[3];
>>> +
>>>   static const struct sdhci_msm_offset *sdhci_priv_msm_offset(struct sdhci_host *host)
>>>   {
>>>       struct sdhci_pltfm_host *pltfm_host = sdhci_priv(host);
>>> @@ -2426,6 +2428,14 @@ static int sdhci_msm_probe(struct platform_device *pdev)
>>>       if (ret)
>>>           goto pltfm_free;
>>>   +    if (node) {
>>> +        ret = of_alias_get_id(pdev->dev.of_node, "mmc");
>>> +        if (ret < 0)
>>> +            dev_err(&pdev->dev, "get slot index failed %d\n", ret);
>>> +        else
>>> +            sdhci_slot[ret] = msm_host;
>>> +    }
>>> +
>>>       /*
>>>        * Based on the compatible string, load the required msm host info from
>>>        * the data associated with the version info.
>>
> 





[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [Linux for Sparc]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux