Re: prueth: IEP driver doesn't probe anymore

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

 



Hi All,

Le 19/09/2022 à 10:07, Romain Naour a écrit :
> Hi All,
> 
> Le 16/09/2022 à 10:55, Romain Naour a écrit :
>> Hi All,
>>
>> I'm able to use the prueth driver on a AM5749 cpu using the TI vendor branch
>> (ti-linux-5.10.y). But I need a more recent kernel to support other device on my
>> custom board. So I had to rebase all the TI work related to the out of tree
>> prueth driver on a the latest kernel.
>>
>> I hope this driver will be merged in the kernel soon but the series [1] doesn't
>> include the prueth driver for AM57xx cpus (only the icssg_prueth for AM65xx is
>> included).
>>
>> For some reason the IEP driver [2] [3] doesn't probe anymore. Is a side effect
>> of recent ti-sysc or legacy platform data work ? I'm using a 5.19.8 stable kernel.
>>
>> The prueth_probe() error out with "unable to get IEP" log message.
>>
>> Do you have any clue?
> 
> I tested several kernel releases between the 5.10 and 5.19 and It turn out that
> the issue appear in the 5.13.y kernel.
> 
> After a long and time consuming git bisect, the first bad commit is:
> 
> Merge tag 'arm-soc-5.13' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc:
> https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=01d7136894410a71932096e0fb9f1d301b6ccf07
> 
> Yes this is a merge commit from Linus.
> 
> I tested the kernel from each commit parent and the prueth sill works.
> 
> So I rebased the branch arm-soc-5.13 merged by Linus to have a fast-forward
> history. The second git bisect return this commit as first bad commit:
> 
> ARM: dts: Move dra7 l3 noc to a separate node:
> https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=7f2659ce657e87cb7f47e6b15099608eaa1349ac
> 
> The switch to ti-sysc seems to have some side effect on some driver like pci-dra7xx:
> 
> "After updating pci-dra7xx driver to probe with ti-sysc and genpd, I
> noticed that dra7xx_pcie_probe() would not run if a power-domains property
> was configured for the interconnect target module."
> 
> https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=e259c2926c016dd815e5547412356d378fc1f589
> 
> This is my current understanding of the issue... but I don't understand the side
> effect of the move of the dra7 l3 noc node. Also, there is something merged
> before the 'arm-soc-5.13' branch that is a second cause of the issue.

Ok, I understand what's going on...

The issue appear on the merge commit since on a omap side there was the switch
to ti-sysc (devicetree interconnect description) and on upstream side there was
a change on driver core behavior with fw_devlink=on being set by default:

https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=ea718c699055c8566eb64432388a04974c43b2ea

Actually the issue is really on the TI's prueth and IEP driver whith
fw_devlink=on. The IEP driver probe correctly with fw_devlink=permissive.

Best regards,
Romain


> 
> Best regards,
> Romain
> 
>>
>> Danish, if you can provide a new version of the "PRUSS Remoteproc, Platform
>> APIS, and Ethernet Driver" series including the prueth and iep driver for
>> AM57xx, I will be able to test it [4].
>>
>> Thanks!
>>
>> [1] https://lore.kernel.org/netdev/20220406094358.7895-1-p-mohan@xxxxxx/
>> [2]
>> https://git.ti.com/cgit/ti-linux-kernel/ti-linux-kernel/commit/?h=ti-linux-5.10.y&id=d3bf5a58c356a90fe14d34f213d6195b9a946dc5
>> [3]
>> https://git.ti.com/cgit/ti-linux-kernel/ti-linux-kernel/commit/?h=ti-linux-5.10.y&id=7cb095866c8b436176dd783878a9e9c3c0bada0b
>> [4]
>> https://lore.kernel.org/linux-remoteproc/992019ad-5c58-d420-8a18-a82228f8e086@xxxxxxxx/
>>
>> Best regards,
>> Romain
> 




[Index of Archives]     [Linux Arm (vger)]     [ARM Kernel]     [ARM MSM]     [Linux Tegra]     [Linux WPAN Networking]     [Linux Wireless Networking]     [Maemo Users]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Trails]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux