blob: 51341f3ee25cb4438a3ce11573509ead8f21d9ec (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
|
# 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:~#
|