>From what I've found, the "no children" error refers to a pruss entry in 
the device tree that looks like this:
fragment@1 {
          target = <&pruss>;
          __overlay__ {
                        status = "okay";
                        pinctrl-names = "default";
                        pinctrl-0 = <&your_pru_pins>;
          };
};


This used to work just fine, but now it needs to have one or more entries 
below pinctrl-0 describing your pins, like this:
fragment@1 {
          target = <&pruss>;
          __overlay__ {
                        status = "okay";
                        pinctrl-names = "default";
                        pinctrl-0 = <&your_pru_pins>;
                        my_pins{
                               pin-names = "name1", "name2" ... ;
                               gpios     = <&gpioX PN 0
                                            &gpioY PN 0
                                            ... >;
                       };
                       # possibly more like above
          };
};

depending on which gpio groups and PNs(pin numbers) you'd like the pruss to 
be associated with.

I am not sure how you specify that you don't want ANY pins though, unless 
you would then just not have the pinctrl entries above and only the status 
= "okay" line.  That is probably it, since this is how the 
"enable-uio-pruss" device tree file I have seems to work and gets no "no 
children" errors.  At any rate, this does
work on 4.9, and would likely work on 4.4 or maybe even 4.1.  I believe the 
code that produces this "no children" error is looking for entries like 
this in the device tree if you say you want some kind of pinctrl.  I did 
see the patch that needs to be commented out if you want your old device 
tree files to work, but I can't remember where it is.  I'm sure someone can 
point right to it.

On Tuesday, April 5, 2016 at 9:22:20 AM UTC-4, frank brewer wrote:
>
> I saw others also had this problem at 4.1.x kernel as well, but seems like 
> it is fixed with a patch. However I still get this problem, could you 
> please help me?
>
>
> debian@arm:~/test$ sudo ./testLED
> prussdrv_open() failed
>
>
>
> debian@arm:~/test$ dmesg | grep -i pru
> [  209.806504] bone_capemgr bone_capemgr: part_number 'EBB-PRU-Example', 
> version 'N/A'
> [  209.806653] bone_capemgr bone_capemgr: slot #4: 'Override Board 
> Name,00A0,Override Manuf,EBB-PRU-Example'
> [  209.812435] bone_capemgr bone_capemgr: slot #4: dtbo 
> 'EBB-PRU-Example-00A0.dtbo' loaded; overlay id #0
> [  209.857210] pruss_uio 4a300000.pruss: No children
>
> debian@arm:~/test$ lsb_release -irc
> Distributor ID: Debian
> Release:        8.4
> Codename:       jessie
>
> debian@arm:~/test$ uname -or
> 4.1.20-bone-rt-r20 GNU/Linux
>
> debian@arm:~/chp13/ledButton$ cat $SLOTS
>  0: PF----  -1
>  1: PF----  -1
>  2: PF----  -1
>  3: PF----  -1
>  4: P-O-L-   0 Override Board Name,00A0,Override Manuf,EBB-PRU-Example
>
> debian@arm:~/chp13/ledButton$ lsmod
> Module                  Size  Used by
> uio_pruss               4582  0
>
>
>
>
>

-- 
For more options, visit http://beagleboard.org/discuss
--- 
You received this message because you are subscribed to the Google Groups 
"BeagleBoard" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/beagleboard/ed1e43b9-ce6a-40ad-beb5-4b64d133c7ce%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to