-
Notifications
You must be signed in to change notification settings - Fork 8
/
Copy pathREADME
80 lines (52 loc) · 2.72 KB
/
README
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
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
Thecus N5550 Hardware Support
Copyright 2013-2020 Ian Pilcher <[email protected]>
======================================================
For RHEL/CentOS/Scientific Linux 7, see the QuickStart in the wiki:
https://github.com/ipilcher/n5550/wiki/QuickStart-for-CentOS-7
For RHEL/CentOS/Scientific Linux 6, use kernel-lt from ELRepo. The n5550 RPM
will probably need to be modified slightly to work on EL6.
Kernel Modules
--------------
n5550_ahci_leds - "Hooks" into libahci module to provide LED triggers for disk
activity. Must be loaded *before* any other modules (such as ahci) that
use libahci.
Can only be unloaded after being disabled with:
echo 0 > /sys/class/n5550_ahci_leds/enabled
Disabling will only work if no other libahci users are loaded.
n5550_board - Sets up chipset, LEDs, GPIOs, etc. Disk activity LEDs have
default triggers, so they should "just work" once both modules are
loaded.
Monitoring Daemon
-----------------
freecusd - Monitors the health of the NAS and displays state on front-panel
LCD and LEDs. Configured via /etc/freecusd.conf.
Operating System Integration
----------------------------
/usr/src/n5550/modules - Kernel module source code and makefile
/usr/lib/dracut/modules.d/99n5550 - dracut module to automatically build kernel
modules (if needed) when building initial RAM-disk. (Doing this with a
dracut module, rather than DKMS, avoids building every initial RAM-disk
twice, which takes a long time on an Atom.)
/usr/lib/dracut/dracut.conf.d/n5550.conf - dracut configuration file to ensure
required kernel modules are included in initial RAM-disk
/usr/lib/modprobe.d/n5550.conf - Ensures that n5550_ahci_leds is loaded as soon
as libahci (before any other module that uses libahci). Also configures
system fan PWM.
/usr/lib/modules-load.d/n5550.conf - Ensures it87 kernel module is loaded
/usr/lib/udev/rules.d/99-n5550.rules - Triggers load of n5550_board module once
gpio_ich module has finished loading
LCD
---
test2.c - Can be used to reset and send messages to the ATmega168 micro-
controller which manages the front-panel LCD.
Buttons
-------
I have not been able to read button presses/status from the ATmega168. However,
it is possible to read them via jumper block next to the LCD connection. These
jumpers are used by the Thecus firmware to identify the NAS model on which it is
running, and they are readable via GPIO pins on one of the PCA9532 LED dimmers
(currently GPIOs 16-19).
To do this, remove the 3 jumpers from the block and shift the button module
ribbon cable from its normal connector onto the jumper block. (After doing
this, the Thecus firmware will not be able to identify your NAS module, so the
jumpers should be replaced before booting the Thecus firmware.)