Skip to content

Instantly share code, notes, and snippets.

@vaishnavachath
Created May 22, 2020 18:01
Show Gist options
  • Save vaishnavachath/cba52eede4067daa2ce317d14b285482 to your computer and use it in GitHub Desktop.
Save vaishnavachath/cba52eede4067daa2ce317d14b285482 to your computer and use it in GitHub Desktop.
debian@beaglebone:~/test$ git clone https://github.com/vaishnav98/mikrobus.git
Cloning into 'mikrobus'...
remote: Enumerating objects: 33, done.
remote: Counting objects: 100% (33/33), done.
remote: Compressing objects: 100% (26/26), done.
remote: Total 33 (delta 15), reused 16 (delta 6), pack-reused 0
Unpacking objects: 100% (33/33), done.
debian@beaglebone:~/test$ cd mikrobus/
debian@beaglebone:~/test/mikrobus$ make all
make -C /lib/modules/5.7.0-rc5-bone4/build M=/home/debian/test/mikrobus modules
make[1]: Entering directory '/usr/src/linux-headers-5.7.0-rc5-bone4'
CC [M] /home/debian/test/mikrobus/mikrobus_core.o
CC [M] /home/debian/test/mikrobus/mikrobus_manifest.o
/home/debian/test/mikrobus/mikrobus_manifest.c:133:31: warning: ‘mikrobus_property_get’ defined but not used [-Wunused-function]
static struct property_entry *mikrobus_property_get(struct click_board_info *info, u8 prop_id)
^~~~~~~~~~~~~~~~~~~~~
LD [M] /home/debian/test/mikrobus/mikrobus.o
CC [M] /home/debian/test/mikrobus/mikrobus_port.o
/home/debian/test/mikrobus/mikrobus_port.c: In function ‘mikrobus_port_probe’:
/home/debian/test/mikrobus/mikrobus_port.c:105:39: warning: unused variable ‘spi_master_np’ [-Wunused-variable]
struct device_node *i2c_adap_np, *spi_master_np;
^~~~~~~~~~~~~
MODPOST 2 modules
CC [M] /home/debian/test/mikrobus/mikrobus.mod.o
LD [M] /home/debian/test/mikrobus/mikrobus.ko
CC [M] /home/debian/test/mikrobus/mikrobus_port.mod.o
LD [M] /home/debian/test/mikrobus/mikrobus_port.ko
make[1]: Leaving directory '/usr/src/linux-headers-5.7.0-rc5-bone4'
debian@beaglebone:~/test/mikrobus$ sudo insmod mikrobus.ko
debian@beaglebone:~/test/mikrobus$ cd ../
debian@beaglebone:~/test$ git clone https://github.com/vaishnav98/manifesto.git
Cloning into 'manifesto'...
cd mremote: Enumerating objects: 124, done.
remote: Counting objects: 100% (124/124), done.
remote: Compressing objects: 100% (86/86), done.
nremote: Total 368 (delta 69), reused 79 (delta 37), pack-reused 244
Receiving objects: 100% (368/368), 81.49 KiB | 336.00 KiB/s, done.
Resolving deltas: 100% (233/233), done.
idebian@beaglebone:~/test$ cd manifesto/
debian@beaglebone:~/test/manifesto$ git checkout mikrobus
Branch 'mikrobus' set up to track remote branch 'mikrobus' from 'origin'.
Switched to a new branch 'mikrobus'
debian@beaglebone:~/test/manifesto$ ./install.sh
debian@beaglebone:~/test/manifesto$ sudo su
root@beaglebone:/home/debian/test/manifesto# printf "%b" '\x01\x00\x00\x59\x32\x17' > /sys/bus/mikrobus/add_port
root@beaglebone:/home/debian/test/manifesto# cat manifests/eth.mnfb > /sys/class/mikrobus-port/mikrobus-0/new_dev
ice
root@beaglebone:/home/debian/test/manifesto# dmesg | tail -n15
[ 349.638509] usb 2-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[ 349.638516] usb 2-1: Product: Android
[ 349.638523] usb 2-1: Manufacturer: Android
[ 349.638529] usb 2-1: SerialNumber: 0975c5590805
[ 349.763000] usbcore: registered new interface driver cdc_ether
[ 349.795570] rndis_host 2-1:1.0 usb2: register 'rndis_host' at usb-musb-hdrc.1-1, RNDIS device, 7e:e1:5f:41:ad:c2
[ 349.819460] usbcore: registered new interface driver rndis_host
[ 349.933036] 8021q: 802.1Q VLAN Support v1.8
[ 537.897335] mikrobus: loading out-of-tree module taints kernel.
[ 729.471621] mikrobus_manifest: eth click manifest parsed with 1 device(s)
[ 729.471647] mikrobus: registering device : enc28j60
[ 729.479149] enc28j60 spi0.0: Ethernet driver 1.02 loaded
[ 729.534322] enc28j60 spi0.0 eth0: link down
[ 729.534360] enc28j60 spi0.0 eth0: multicast mode
[ 729.534967] enc28j60 spi0.0 eth0: multicast mode
root@beaglebone:/home/debian/test/manifesto# echo 0 > /sys/class/mikrobus-port/mikrobus-0/delete_device
root@beaglebone:/home/debian/test/manifesto# dmesg | tail -n15
[ 349.638516] usb 2-1: Product: Android
[ 349.638523] usb 2-1: Manufacturer: Android
[ 349.638529] usb 2-1: SerialNumber: 0975c5590805
[ 349.763000] usbcore: registered new interface driver cdc_ether
[ 349.795570] rndis_host 2-1:1.0 usb2: register 'rndis_host' at usb-musb-hdrc.1-1, RNDIS device, 7e:e1:5f:41:ad:c2
[ 349.819460] usbcore: registered new interface driver rndis_host
[ 349.933036] 8021q: 802.1Q VLAN Support v1.8
[ 537.897335] mikrobus: loading out-of-tree module taints kernel.
[ 729.471621] mikrobus_manifest: eth click manifest parsed with 1 device(s)
[ 729.471647] mikrobus: registering device : enc28j60
[ 729.479149] enc28j60 spi0.0: Ethernet driver 1.02 loaded
[ 729.534322] enc28j60 spi0.0 eth0: link down
[ 729.534360] enc28j60 spi0.0 eth0: multicast mode
[ 729.534967] enc28j60 spi0.0 eth0: multicast mode
[ 753.649368] mikrobus: removing device : enc28j60
root@beaglebone:/home/debian/test/manifesto# cat manifests/eth.mnfb > /sys/class/mikrobus-port/mikrobus-0/new_dev
ice
root@beaglebone:/home/debian/test/manifesto# ls /sys/class/mikrobus-port/mikrobus-0/
delete_device eth-enc28j60/ name new_device power/ subsystem/ uevent
root@beaglebone:/home/debian/test/manifesto# ls /sys/class/mikrobus-port/mikrobus-0/eth-enc28j60/
driver/ modalias power/ subsystem/
driver_override net/ statistics/ uevent
root@beaglebone:/home/debian/test/manifesto# ls /sys/class/mikrobus-port/mikrobus-0/eth-enc28j60/net/eth0/
addr_assign_type carrier_up_count gro_flush_timeout netdev_group queues/
address device/ ifalias operstate speed
addr_len dev_id ifindex phys_port_id statistics/
broadcast dev_port iflink phys_port_name subsystem/
carrier dormant link_mode phys_switch_id tx_queue_len
carrier_changes duplex mtu power/ type
carrier_down_count flags name_assign_type proto_down uevent
root@beaglebone:/home/debian/test/manifesto# ls /sys/class/mikrobus-port/mikrobus-0/eth-enc28j60/net/eth0/
@vaishnavachath
Copy link
Author

root@beaglebone:/home/debian/test/manifesto# cat manifests/mpu9dof.mnfb > /sys/class/mikrobus-port/mikrobus-0/new
_device

root@beaglebone:/home/debian/test/manifesto#
root@beaglebone:/home/debian/test/manifesto# dmesg | tail -n10
[ 898.170740] enc28j60 spi0.0: Ethernet driver 1.02 loaded
[ 898.182952] enc28j60 spi0.0: chip not found
[ 898.183023] enc28j60: probe of spi0.0 failed with error -5
[ 906.614513] mikrobus: removing device : enc28j60
[ 930.796738] mikrobus_manifest: mpu9dof click manifest parsed with 1 device(s)
[ 930.796757] mikrobus: registering device : mpu9150
[ 930.848922] inv-mpu6050-i2c 1-0068: mounting matrix not found: using identity...
[ 930.848962] inv-mpu6050-i2c 1-0068: supply vdd not found, using dummy regulator
[ 930.849056] inv-mpu6050-i2c 1-0068: supply vddio not found, using dummy regulator
[ 930.984614] inv-mpu6050-i2c 1-0068: whoami mismatch got 0x71 (MPU9250)expected 0x68 (MPU9150)
root@beaglebone:/home/debian/test/manifesto# ls /sys/class/mikrobus-port/mikrobus-0/
delete_device name power/ uevent
mpu9dof-mpu9150/ new_device subsystem/
root@beaglebone:/home/debian/test/manifesto# ls /sys/class/mikrobus-port/mikrobus-0/mpu9dof-mpu9150/
driver/ iio:device1/ modalias name power/ subsystem/ trigger0/ uevent
root@beaglebone:/home/debian/test/manifesto# ls /sys/class/mikrobus-port/mikrobus-0/mpu9dof-mpu9150/iio:device1/
buffer/ in_anglvel_scale in_magn_z_raw
current_timestamp_clock in_anglvel_scale_available in_magn_z_scale
dev in_anglvel_x_calibbias in_temp_offset
in_accel_matrix in_anglvel_x_raw in_temp_raw
in_accel_mount_matrix in_anglvel_y_calibbias in_temp_scale
in_accel_scale in_anglvel_y_raw name
in_accel_scale_available in_anglvel_z_calibbias power/
in_accel_x_calibbias in_anglvel_z_raw sampling_frequency
in_accel_x_raw in_gyro_matrix sampling_frequency_available
in_accel_y_calibbias in_magn_mount_matrix scan_elements/
in_accel_y_raw in_magn_x_raw subsystem/
in_accel_z_calibbias in_magn_x_scale trigger/
in_accel_z_raw in_magn_y_raw uevent
in_anglvel_mount_matrix in_magn_y_scale

@vaishnavachath
Copy link
Author

root@beaglebone:/home/debian/test/manifesto# cat manifests/microsd.mnfb > /sys/class/mikrobus-port/mikrobus-0/new
_device
root@beaglebone:/home/debian/test/manifesto# dmesg | tail -n10
[ 1014.531079] mikrobus: removing device : mpu9150
[ 1045.601712] omap_hsmmc 48060000.mmc: error -110 requesting status
[ 1048.874138] mikrobus_manifest: microsd click manifest parsed with 1 device(s)
[ 1048.874152] mikrobus: registering device : mmc_spi
[ 1048.880106] mmc_spi spi0.0: ASSUMING 3.2-3.4 V slot power
[ 1048.905702] mmc_spi spi0.0: SD/MMC host mmc1, no WP, no poweroff
[ 1049.088764] mmc1: host does not support reading read-only switch, assuming write-enable
[ 1049.088796] mmc1: new SDHC card on SPI
[ 1049.098631] mmcblk1: mmc1:0000 SC16G 14.8 GiB
[ 1049.107768] mmcblk1: p1
root@beaglebone:/home/debian/test/manifesto# ls /sys/class/mikrobus-port/mikrobus-0/
delete_device name power/ uevent
microsd-mmc_spi/ new_device subsystem/
root@beaglebone:/home/debian/test/manifesto# ls /sys/class/mikrobus-port/mikrobus-0/microsd-mmc_spi/
driver/ mmc_host/ power/ subsystem/
driver_override modalias statistics/ uevent
root@beaglebone:/home/debian/test/manifesto# ls /sys/class/mikrobus-port/mikrobus-0/microsd-mmc_spi/mmc_host/mmc1/

device/ mmc1:0000/ power/ subsystem/ uevent
root@beaglebone:/home/debian/test/manifesto# ls /sys/class/mikrobus-port/mikrobus-0/microsd-mmc_spi/mmc_host/mmc1/

@vaishnavachath
Copy link
Author

root@beaglebone:/home/debian/test/manifesto# echo 0 > /sys/class/mikrobus-port/mikrobus-0/delete_device
root@beaglebone:/home/debian/test/manifesto# cat manifests/rtc6.mnfb > /sys/class/mikrobus-port/mikrobus-0/new_d
evice
root@beaglebone:/home/debian/test/manifesto# dmesg | tail -n10
[ 1048.905702] mmc_spi spi0.0: SD/MMC host mmc1, no WP, no poweroff
[ 1049.088764] mmc1: host does not support reading read-only switch, assuming write-enable
[ 1049.088796] mmc1: new SDHC card on SPI
[ 1049.098631] mmcblk1: mmc1:0000 SC16G 14.8 GiB
[ 1049.107768] mmcblk1: p1
[ 1115.053160] mikrobus: removing device : mmc_spi
[ 1115.053395] mmc1: SPI card removed
[ 1272.034717] mikrobus_manifest: rtc6 click manifest parsed with 1 device(s)
[ 1272.034737] mikrobus: registering device : mcp7941x
[ 1272.045689] rtc-ds1307 1-006f: registered as rtc1
root@beaglebone:/home/debian/test/manifesto# ls /sys/class/mikrobus-port/mikrobus-0/
delete_device name new_device power/ rtc6-mcp7941x/ subsystem/ uevent
root@beaglebone:/home/debian/test/manifesto# ls /sys/class/mikrobus-port/mikrobus-0/rtc6-mcp7941x/
driver/ modalias nvram rtc/ uevent
ds1307_nvram0/ name power/ subsystem/
root@beaglebone:/home/debian/test/manifesto# ls /sys/class/mikrobus-port/mikrobus-0/rtc6-mcp7941x/rtc/rtc1/
date device/ max_user_freq power/ subsystem/ uevent
dev hctosys name since_epoch time
root@beaglebone:/home/debian/test/manifesto# cat /sys/class/mikrobus-port/mikrobus-0/rtc6-mcp7941x/rtc/rtc1/time
18:03:59
root@beaglebone:/home/debian/test/manifesto# cat /sys/class/mikrobus-port/mikrobus-0/rtc6-mcp7941x/rtc/rtc1/date
2020-05-22

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment