clearfog: kernel: rework spidev handling for OCM

This is all about how to get spidev to export a SPI device to userspace.
We switched to a udev-style control last fall, but one upstream patch
which was supposed to provide auto-driver-bind in response to a udev
rule which sets the `driver_override` attribute has not been merged yet.
See [1] for reasons why it might not get merged, ever.

Adjust the userspace to bind a driver from within udev.

[1] https://www.spinics.net/lists/linux-spi/msg16384.html

Change-Id: I26f839ece7881baf56b8f0705623024e117a3a02
diff --git a/board/czechlight/clearfog/overlay/usr/lib/udev/rules.d/40-spi-lumentum-ocm.rules b/board/czechlight/clearfog/overlay/usr/lib/udev/rules.d/40-spi-lumentum-ocm.rules
index 0a6b2f5..206c375 100644
--- a/board/czechlight/clearfog/overlay/usr/lib/udev/rules.d/40-spi-lumentum-ocm.rules
+++ b/board/czechlight/clearfog/overlay/usr/lib/udev/rules.d/40-spi-lumentum-ocm.rules
@@ -1 +1,2 @@
-ACTION=="add|change", SUBSYSTEM=="spi", ENV{MODALIAS}=="spi:lumentum-ocm", ATTR{driver_override}+="spidev"
+# cannot use ATTR{driver_override}+="spidev" because it apparently only runs after the PROGRAM
+ACTION=="add|change", SUBSYSTEM=="spi", ENV{MODALIAS}=="spi:lumentum-ocm", PROGRAM+="/bin/sh -c 'echo spidev > %S%p/driver_override && echo %k > %S%p/subsystem/drivers/spidev/bind'"