Some reasons you might want to use this programming interface include:

Prototyping in an environment that's not crash-prone; stray pointers in userspace won't normally bring down any Linux system.

Developing simple protocols used to talk to microcontrollers acting as SPI slaves, which you may need to change quite often.

Of course there are drivers that can never be written in userspace, because
they need to access kernel interfaces (such as IRQ handlers or other layers
of the driver stack) that are not accessible to userspace.

after you save the changes, reboot your beaglebone black
Make sure it is enabled
You should now have two spidev-files in the folder /dev/

ls -al /dev/spidev1.*

You should also be able to see the pingroups:

cat /sys/kernel/debug/pinctrl/44e10800.pinmux/pingroups

SPI1 D0 Output and D1 Input

NOTE: an option is available to swap the MISO/MOSI pins using the device tree entry. to enable the pin swap change the feature section by adding “ti,pindir-d0-out-d1-in" property and changing the default pin mux for the two data pins

(if dtc complains about the -@, you need to get a newer version of dtc. See this adafruit link for a script that will retrieve and compile a suitable version of dtc)

Then, copy the file into /lib/firmware/:

cp BB-SPI0-01-00A0.dtbo /lib/firmware/

Then enable the device tree overlay:

echo BB-SPI0-01 > /sys/devices/bone_capemgr.*/slots

Plug in your BBB to a host computer using the mini usb data cable.
Go to My Computer>BeagleBone Getting Started> and open uEnv.txt Copy and paste this command into the .txt file. Make sure to save your changes. (Ctrl+s)

optargs=quiet drm.debug=7 capemgr.enable_partno=BB-SPI0-01

after you save the changes, reboot your beaglebone black

Make sure it is enabled
You should now have two spidev-files in the folder /dev/

ls -al /dev/spidev0.*

You should also be able to see the pingroups:

cat /sys/kernel/debug/pinctrl/44e10800.pinmux/pingroups

You can also try to run a loopback test with beaglebone. Here is an example with loopback on SPI1 bus:

1. Short pins 29 and 30 on the P9 connector (power supply side on the board).