summaryrefslogtreecommitdiff
path: root/HACKING
diff options
context:
space:
mode:
authorUwe Hermann <uwe@hermann-uwe.de>2019-03-15 00:57:31 +0100
committerUwe Hermann <uwe@hermann-uwe.de>2019-03-15 00:57:31 +0100
commit2b46b01c72c06683b3130647affe92c425d573b5 (patch)
tree4f7539032266b8cd5a14937e2941be9bf380e3c5 /HACKING
parentd6d8a8a440ea2a81e6ddde33d16bc84d01cdb432 (diff)
downloadlibsigrokdecode-2b46b01c72c06683b3130647affe92c425d573b5.tar.gz
libsigrokdecode-2b46b01c72c06683b3130647affe92c425d573b5.zip
HACKING: Document current tags and their intention/usage.
Diffstat (limited to 'HACKING')
-rw-r--r--HACKING41
1 files changed, 41 insertions, 0 deletions
diff --git a/HACKING b/HACKING
index 30cd1fe..a4698a6 100644
--- a/HACKING
+++ b/HACKING
@@ -176,6 +176,47 @@ Protocol decoder guidelines
Not recommended:
'FIND_ADDRESS', 'Get Temperature', 'start'
+ - Protocol decoder tags:
+
+ - Every decoder must have a "tags" list (>= 1 items, alphabetically sorted).
+
+ - All tag names start with a capital letter. Subsequent words of the name
+ are not capitalized, e.g. "Retro computing", "Debug/trace".
+
+ - All tag names should use singular form ("Sensor", not "Sensors").
+
+ Common tags:
+
+ - Analog/digital: Decoders related A/D conversion, e.g. ADCs and DACs.
+ - Audio: Decoders related to audio protocols, e.g. I²S, S/PDIF.
+ - Automotive: Decoders related to automotive protocols, e.g. CAN, FlexRay.
+ - Clock/timing: Decoders related to time keeping, timing, and clocks/RTCs.
+ - Debug/trace: Decoders related to microcontroller/CPU debugging, tracing,
+ programming/flashing protocols, e.g. SWD, JTAG, AVR ISP, ARM ETMv3.
+ - Display: Decoders related to display technologies, e.g. DVI, HDMI,
+ TFT, OLED, LCD, HD44780, EDID, and various LED protocols.
+ - Embedded/industrial: Decoders related to protocols used in embedded
+ systems, industrial systems, or automation (e.g. SPI, Modbus, Profibus).
+ - Encoding: Decoders related to generic encoding / line coding systems,
+ e.g. Manchester, Miller, Gray code, OOK, and similar.
+ - IC: Decoders for specific (families of) ICs (i.e. not IC-independent,
+ generic protocols like UART, SPI, CAN, or USB).
+ - IR: Decoders related to infrared (e.g. remote control) protocols.
+ - Lighting: Decoders related to lighting technologies, e.g. DALI, DMX512.
+ - Memory: Decoders related to memories (e.g. NOR/NAND flash, EEPROM,
+ SDRAM, SRAM, various other volatile or non-volatile memories).
+ - Networking: Decoders related to (wired) networking technologies.
+ - PC: Decoders related to protocols used in personal computers (desktop,
+ workstation, laptop, server). This is not meant to be restricted to
+ "IBM PC" or "x86/Intel", Apple/Commodore/Atari/SPARC etc. are fine too.
+ - RFID: Decoders related to RFID protocols, e.g. EM4100, T55xx.
+ - Retro computing: Decoders related to retro computing, e.g. MCS-48, Z80.
+ - Security/crypto: Decoders related to security or cryptography.
+ - Sensor: Decoders for sensors or all kinds, e.g. temperature or humidity.
+ - Util: Random utility/helper decoders.
+ - Wireless/RF: Decoders related to various wireless/RF technologies, e.g.
+ Bluetooth, BLE, Wifi, or 2.4GHz/433MHz custom protocols.
+
Testsuite
---------