First thing’s first, P9_11 is not connected to the PRUs output or input registers. Try as you may, but this pin is off limits when using the PRU. As a result of that this pin is not defined in “prugpio.h”.
If you go to the git and have a look at that library you will spot that the P9_25 is defined in said file. As a result of that you could connect the LED to the pin. However as you correctly noticed, this pin still does not appear to work and neither do any other pins on P9 even those that are defined in the magical file.
To understand why that is you need to know a bit about how the PRUs registers are connected to the GPIO (or fast IO). It is not very obvious and I personally find that the supposed “tutorials” on this matter are terrible and obscure what is actually happening with a thick layer of abstraction.
Here is a good resource to read more on that https://ofitselfso.com/BeagleNotes/BeagleboneBlackPinMuxModes.php
If I cut myself short your problem is that you haven’t configured the pinmux for your pins. If you look at the bottom of the program, you will see some pragmas. These are special instructions for the compiler that reserve the pin and set the correct pinmux. What you probably didn’t do is change it from the reservation of usr3 to your desired pin.
You can change the pinmux mannually by running the following command on the bone:
config-pin P9_25 pruout
if you wonder pruin is the other mode that makes the pin ready for input
I forget the correct syntax for the pragmas, because I use my own makefile, but if you are interested in the syntax to adjust the example for your problem I’d suggest you take a look at the cloud9 pru examples.
Personally didn’t find them helpful for learning whatsoever, but maybe it’s just me. In any case feel free to ask for clarifications.