Hi, @Vijay Kumar Banerjee <vijaykumar9...@gmail.com> thanks for the dtb file. I build my file from FreeBSD master.
Prcm attaches now but still after the pruss driver...: " nexus0: <RTEMS Nexus device> ofwbus0: <Open Firmware Device Tree> on nexus0 simplebus0: <Flattened device tree simple bus> on ofwbus0 *ti_pruss0: <TI Programmable Realtime Unit Subsystem> mem 0x4a300000-0x4a37ffff irq 20,21,22,23,24,25,26,27 on simplebus0ti_pruss0: could not enable PRUSS clockdevice_attach: ti_pruss0 attach returned 6* simplebus1: <Flattened device tree simple bus> on simplebus0 *am335x_prcm0: <AM335x Power and Clock Management> mem 0x200000-0x203fff on simplebus1* *====am335x_prcm_attach====* " Is there anything else I can do besides using MODULE_DEPENDENCY, which I already use. The prcm module is also a EARLY_DRIVER_MODULE. Best, Nils On Wed, 24 Jul 2019 at 16:04, Vijay Kumar Banerjee <vijaykumar9...@gmail.com> wrote: > > > On Wed, Jul 24, 2019 at 7:03 PM Nils Hölscher <nilho...@gmail.com> wrote: > >> >> >> On Wed, 24 Jul 2019 at 15:14, Vijay Kumar Banerjee < >> vijaykumar9...@gmail.com> wrote: >> >>> >>> >>> >>> On Wed, Jul 24, 2019 at 6:36 PM Nils Hölscher <nilho...@gmail.com> >>> wrote: >>> >>>> Hi again, >>>> >>>> Hi Nils >>> >>>> I just decompiled my device tree and checked. >>>> The probe code of the prcm driver is as follows: >>>> " >>>> static int >>>> am335x_prcm_probe(device_t dev) >>>> { >>>> printk("am335x_prcm_probe\n"); >>>> >>>> if (!ofw_bus_status_okay(dev)){ >>>> printk("ofw_bus_status_not_okay\n"); >>>> return (ENXIO); >>>> } >>>> >>>> Do you get the "ofw_bus_status_not_okay" print ? >>> >> Yes. But I also see the other print. except the success one. >> >>> if (ofw_bus_is_compatible(dev, "ti,am3-prcm")) { >>>> device_set_desc(dev, "AM335x Power and Clock Management"); >>>> printk("PROBE SUCESSFULL\n"); >>>> return(BUS_PROBE_DEFAULT); >>>> } >>>> printk("ofw_bus incompatible\n"); >>>> return (ENXIO); >>>> } >>>> " >>>> So it seems the prcm part in the device tree has to be compatible to >>>> "ti,am3-prcm". >>>> The thing is the decompiled device tree states just that: >>>> " >>>> prcm@0 { >>>> compatible = "ti,am3-prcm\0simple-bus"; >>>> >>> In my device tree, it runs successfully and the decompiled compatible >>> looks like : >>> ``` >>> prcm@200000 { >>> compatible = "ti,am3-prcm"; >>> reg = < 0x200000 0x4000 >; >>> linux,phandle = < 0x4a >; >>> phandle = < 0x4a >; >>> ``` >>> >> OK, this is awkward, cause we both should have used the same sources. >> > Have you checked that your source is from the tree matching the libBSD HEAD > commit? > >> reg = <0x00 0x2000>; >>>> #address-cells = <0x01>; >>>> #size-cells = <0x01>; >>>> ranges = <0x00 0x00 0x2000>; >>>> phandle = <0x5a>; >>>> [...] >>>> " >>>> Any ideas would help, cause I am currently not able to understand this >>>> behaviour. >>>> Also without this driver even the dev_usb_bbb driver shouldn't work. >>>> However it attaches because it doesn't check for the clocks error code. >>>> >>> I remember testing this a few days ago for my fb drivers and it was >>> attaching alright, >>> if I remember correctly. If changing the dtb doesn't work for you, I >>> won't mind checking >>> again, this will give me a hint for the display issue as well. >>> >> I will keep you updated on this. >> Would you be so kind and send me your compiled device tree? >> > Please find it attached in this mail. > > Note: I have removed the devel from the cc because the attachment might be > big for the list. Please continue the discussion in the mailing list and > maybe note > it somewhere that you already received the dtb from me in private mail. > > Regards, > Vijay > >> >>>> >>> Best, >>>> Nils >>>> >>>> >>>> >>>> On Wed, 24 Jul 2019 at 14:43, Nils Hölscher <nilho...@gmail.com> wrote: >>>> >>>>> Hi, >>>>> >>>>> I just found out that the prcm driver fails to probe on the simplebus >>>>> and therefore cannot apply itself. >>>>> Seems like I am back to checking dtb. >>>>> >>>>> Best, >>>>> Nils >>>>> >>>>> On Tue, 23 Jul 2019 at 14:26, Nils Hölscher <nilho...@gmail.com> >>>>> wrote: >>>>> >>>>>> Hi, >>>>>> >>>>>> After debugging with printk, didn't get the module loading working as >>>>>> suggested by Sebastian. >>>>>> I just found out that my PRU driver can't be attached, cause the >>>>>> AM35xx clock driver isn't loaded. >>>>>> The driver can be found her: >>>>>> >>>>>> https://github.com/RTEMS/rtems-libbsd/blob/610349693dd31d8b0efd33776516b7187cc5cda2/freebsd/sys/arm/ti/am335x/am335x_prcm.c >>>>>> >>>>>> Can anyone tell me how to load this driver and obisouly before I >>>>>> initialize my BSD modules? >>>>>> >>>>>> FYI: The code line that fails is this one, cause the driver hasn't >>>>>> been initialized. >>>>>> >>>>>> https://github.com/RTEMS/rtems-libbsd/blob/610349693dd31d8b0efd33776516b7187cc5cda2/freebsd/sys/arm/ti/am335x/am335x_prcm.c#L854 >>>>>> >>>>>> Thanks, >>>>>> Nils >>>>>> >>>>> _______________________________________________ >>>> devel mailing list >>>> devel@rtems.org >>>> http://lists.rtems.org/mailman/listinfo/devel >>> >>>
_______________________________________________ devel mailing list devel@rtems.org http://lists.rtems.org/mailman/listinfo/devel