# CDS9K Linux Kernel Drivers This repo houses Linux kernel drivers for the CDS9K FPGA/CPLD. This is a semi-fictional piece of hardware I'm developing for classroom/demo sessions on various aspects of Linux kernel driver development - it's not on any real boards, it's just a teaching tool. I do have a VHDL implementation which I will include once the IP blocks are more stable. ## Drivers for IP blocks ### `cds9k-fan` FIXME ### `cds9k-led` FIXME ### `cds9k-gpio` FIXME ### `cds9k-reset` FIXME ## Misc drivers There is currently one misc driver in this repo too: `simple-reset-consumer`. On probe, this driver takes a single reset from the device-tree and asks it to reset. This is the quickest way I had for hackily debugging the effect of a reset driver such as cds9k-reset, as there doesn't appear to be any sysfs or debugfs nodes exposed for reset controllers in general. If you include a segment in your device tree like: some_reset_consumer { compatible = "david,simple-reset-consumer"; resets = <&some_reset>; status = "okay"; }; Then firing the resets looks like: root@de10-nano:~# rmmod simple-reset-consumer root@de10-nano:~# modprobe simple-reset-consumer [ 995.241046] simple-reset-consumer some_reset_consumer: firing reset root@de10-nano:~#