#!/bin/bash # This script load/unload opennsl kernel modules ### BEGIN INIT INFO # Provides: load-opennsl-modules # Required-Start: # Required-Stop: # Should-Start: # Should-Stop: # Default-Start: S # Default-Stop: 0 6 # Short-Description: Load OpenNSL kernel modules ### END INIT INFO function create_devices() { rm -f /dev/linux-knet-cb rm -f /dev/linux-bcm-knet rm -f /dev/linux-bcm-bde rm -f /dev/linux-kernel-bde mknod /dev/linux-knet-cb c 121 0 mknod /dev/linux-bcm-knet c 122 0 mknod /dev/linux-bcm-bde c 126 0 mknod /dev/linux-kernel-bde c 127 0 } # linux-kernel-bde debug=4 ==> Verbose level debug # dma_debug=1 ==> Enable DMA debug # linux-bcm-knet debug=0x5020 ==> Enable KNET Warning(0x1000), # Events(0x20) and Instance(0x4000) # level logs function load_kernel_modules() { modprobe linux-kernel-bde dmasize=32M maxpayload=128 debug=4 dma_debug=1 modprobe linux-user-bde modprobe linux-bcm-knet use_rx_skb=1 rx_buffer_size=9238 debug=0x5020 modprobe linux-knet-cb } function remove_kernel_modules() { rmmod linux-knet-cb rmmod linux-bcm-knet rmmod linux-user-bde rmmod linux-kernel-bde } case "$1" in start) echo -n "Load OpenNSL kernel modules... " create_devices load_kernel_modules echo "done." ;; stop) echo -n "Unload OpenNSL kernel modules... " remove_kernel_modules echo "done." ;; force-reload|restart) echo "Not supported" ;; *) echo "Usage: /etc/init.d/opennsl-modules.init {start|stop}" exit 1 ;; esac exit 0