On Mon, Oct 17, 2022 at 11:53 AM Tim Harvey <tharvey@xxxxxxxxxxxxx> wrote: > > On Thu, Oct 13, 2022 at 2:49 PM Lucas Stach <l.stach@xxxxxxxxxxxxxx> wrote: > > > > Hi Tim, > > > > Am Donnerstag, dem 13.10.2022 um 11:23 -0700 schrieb Tim Harvey: > > > On Wed, Oct 12, 2022 at 11:46 AM Tim Harvey <tharvey@xxxxxxxxxxxxx> wrote: > > > > > > > > On Tue, Oct 11, 2022 at 4:13 PM Marek Vasut <marex@xxxxxxx> wrote: > > > > > > > > > > On 10/11/22 22:10, Tim Harvey wrote: > > > > > > On Fri, Jul 8, 2022 at 1:57 AM Peng Fan (OSS) <peng.fan@xxxxxxxxxxx> wrote: > > > > > > > > > > > > > > From: Peng Fan <peng.fan@xxxxxxx> > > > > > > > > > > > > > > V4: > > > > > > > Because the header is not included when adding NoC node, the fsl,imx8mp.h > > > > > > > needs be included in this patchset. So include it in patch 6 > > > > > > > > > > > > > > V3: > > > > > > > Move adding NoC node patch to i.MX8MP ICC driver patchset > > > > > > > Per Lucas's comments, warn once when icc bulk get not return probe defer and continue. > > > > > > > > > > > > > > V2: > > > > > > > Use a low bandwidth value instead INT_MAX > > > > > > > Minor fix to move fsl,imx8mp.h out to dts patch, not driver patch > > > > > > > Add A-b tag from DT maintainer > > > > > > > > > > > > > > i.MX8MP NoC settings is invalid after related power domain up. So > > > > > > > need to set valid values after power domain up. > > > > > > > > > > > > > > This patchset is to bind interconnect for each entry in blk ctrl. > > > > > > > > > > > > > > This patchset is not include DVFS DDRC feature. > > > > > > > > > > > > > > Peng Fan (7): > > > > > > > dt-bindings: soc: imx: add interconnect property for i.MX8MP media blk > > > > > > > ctrl > > > > > > > dt-bindings: soc: imx: add interconnect property for i.MX8MP hdmi blk > > > > > > > ctrl > > > > > > > dt-bindings: soc: imx: add interconnect property for i.MX8MP hsio blk > > > > > > > ctrl > > > > > > > soc: imx: add icc paths for i.MX8MP media blk ctrl > > > > > > > soc: imx: add icc paths for i.MX8MP hsio/hdmi blk ctrl > > > > > > > arm64: dts: imx8mp: add interconnects for media blk ctrl > > > > > > > arm64: dts: imx8mp: add interconnect for hsio blk ctrl > > > > > > > > > > > > > > .../soc/imx/fsl,imx8mp-hdmi-blk-ctrl.yaml | 9 +++++ > > > > > > > .../soc/imx/fsl,imx8mp-hsio-blk-ctrl.yaml | 10 +++++ > > > > > > > .../soc/imx/fsl,imx8mp-media-blk-ctrl.yaml | 14 +++++++ > > > > > > > arch/arm64/boot/dts/freescale/imx8mp.dtsi | 18 +++++++++ > > > > > > > drivers/soc/imx/imx8m-blk-ctrl.c | 39 +++++++++++++++++++ > > > > > > > drivers/soc/imx/imx8mp-blk-ctrl.c | 35 +++++++++++++++++ > > > > > > > 6 files changed, 125 insertions(+) > > > > > > > > > > > > > > -- > > > > > > > 2.25.1 > > > > > > > > > > > > > > > > > > > Hi Peng, > > > > > > > > > > > > I built origin/master from commit 041bc24d867a today for an imx8mp > > > > > > board and am running into errors that appear to be introduced by this > > > > > > series: > > > > > > [ 15.177372] platform 381f0040.usb-phy: deferred probe pending > > > > > > [ 15.183155] platform 382f0040.usb-phy: deferred probe pending > > > > > > [ 15.188928] platform 33800000.pcie: deferred probe pending > > > > > > [ 15.194439] platform 32ec0000.blk-ctrl: deferred probe pending > > > > > > [ 15.200287] platform 38330000.blk-ctrl: deferred probe pending > > > > > > [ 15.206129] platform 32f10000.blk-ctrl: deferred probe pending > > > > > > [ 15.211974] platform 32f10100.usb: deferred probe pending > > > > > > [ 15.217382] platform 32f10108.usb: deferred probe pending > > > > > > [ 15.222791] platform cpufreq-dt: deferred probe pending > > > > > > # cat /sys/kernel/debug/devices_deferred > > > > > > 381f0040.usb-phy platform: supplier 32f10000.blk-ctrl not ready > > > > > > 382f0040.usb-phy platform: supplier 32f10000.blk-ctrl not ready > > > > > > 33800000.pcie platform: supplier 32f10000.blk-ctrl not ready > > > > > > 32ec0000.blk-ctrl imx8m-blk-ctrl: failed to get noc entries > > > > > > 38330000.blk-ctrl imx8m-blk-ctrl: failed to get noc entries > > > > > > 32f10000.blk-ctrl imx8mp-blk-ctrl: failed to get noc entries > > > > > > 32f10100.usb platform: supplier 32f10000.blk-ctrl not ready > > > > > > 32f10108.usb platform: supplier 32f10000.blk-ctrl not ready > > > > > > cpufreq-dt > > > > > > > > > > > > Is there a driver I'm perhaps missing that is needed now or are there > > > > > > some patches that come from a different unmerged tree needed? > > > > > > > > > > Do you have these enabled ? > > > > > > > > > > CONFIG_INTERCONNECT_IMX8MM=y > > > > > CONFIG_INTERCONNECT_IMX8MN=y > > > > > CONFIG_INTERCONNECT_IMX8MQ=y > > > > > CONFIG_INTERCONNECT_IMX8MP=y > > > > > > > > Marek, > > > > > > > > Yes, I have those as well as CONFIG_ARCH_NXP which appears new for 6.1 enabled. > > > > > > > > Best Regards, > > > > > > > > Tim > > > > > > I see this issue on origin/master 1440f5760228 using > > > arch/arm64/configs/defconfig. > > > > > > It seems to me that the imx8m*_blk_ctrl_probe will all defer now until > > > perhaps all the drivers using interconnects can probe, such as > > > g1/lcdif etc? > > > > > > Some added debugging shows me: > > > [ 14.951371] of_icc_bulk_get path lcdif-rd err=-517 > > > [ 14.956205] devm_of_icc_bulk_get ret=-517 > > > [ 14.960562] imx8m_blk_ctrl_probe failed -517 > > > [ 14.967191] of_icc_bulk_get path g1 err=-517 > > > [ 14.971487] devm_of_icc_bulk_get ret=-517 > > > [ 14.975614] imx8m_blk_ctrl_probe failed -517 > > > [ 14.982200] of_icc_bulk_get path usb1 err=-517 > > > [ 14.986680] devm_of_icc_bulk_get ret=-517 > > > [ 14.990709] imx8mp_blk_ctrl_probe 0:usb1 > > > [ 14.994641] imx8mp_blk_ctrl_probe 1:usb2 > > > [ 15.002086] platform 381f0040.usb-phy: deferred probe pending > > > [ 15.007875] platform 382f0040.usb-phy: deferred probe pending > > > [ 15.013636] platform 32f00000.pcie-phy: deferred probe pending > > > [ 15.019480] platform 33800000.pcie: deferred probe pending > > > [ 15.024975] platform 32ec0000.blk-ctrl: deferred probe pending > > > [ 15.030819] platform 38330000.blk-ctrl: deferred probe pending > > > [ 15.036662] platform 32f10000.blk-ctrl: deferred probe pending > > > [ 15.042503] platform 32f10100.usb: deferred probe pending > > > [ 15.047912] platform 32f10108.usb: deferred probe pending > > > > > Do you have CONFIG_ARM_IMX_BUS_DEVFREQ enabled? This one will actually > > instantiate the interconnect devices for the interconnect drivers to > > hang onto. Once the interconnect is probed the blk-ctrl drivers should > > probe. There is no dependency into leaf peripheral devices. > > > > Regards, > > Lucas > > > > Lucas, > > That's configured as a module in arch/arm64/configs/defconfig - making > it static still does not help. I am booting a static kernel with no > modules here so there must be something else required that is > configured as a module that wasn't needed before this series? > > I haven't had much time to look into this. I'm simply using > arch/arm64/configs/defconfig and CONFIG_INITRAMFS_SOURCE set to a > rootfs I use for quick testing. If there is indeed now one or more > modules required before USB and PCIe are available I wonder if they > should be made static in arch/arm64/configs/defconfig? If not then I > don't know what the point in having the PCI and USB drivers static is. > Lucas, Sorry, I misspoke - I did not have CONFIG_ARM_IMX_BUS_DEVFREQ and that was indeed my issue. Question: Should the intention of arch/arm64/configs/defconfig be to provide static bus support for PCIe/USB which can be boot devices? Prior to the interconnect drivers (and even following those drivers for imx8mm/imx8mn) PCIe/USB are available without module support with arch/arm64/configs/defconfig but now the following would need to be changed to make PCIe/USB available with defconfig and no modules: CONFIG_INTERCONNECT_IMX8MM=y CONFIG_INTERCONNECT_IMX8MN=y CONFIG_INTERCONNECT_IMX8MQ=y CONFIG_INTERCONNECT_IMX8MP=y CONFIG_ARM_IMX_BUS_DEVFREQ=y Without this change one would need an initrd to boot off PCIe/NVMe or USB boot devices. I'm simply not clear what the intended use case is for the defconfig with regards to modules vs static drivers. Best Regards, Tim