From 87e1ff218d01b193d84c7d2e396cded57fad3fba Mon Sep 17 00:00:00 2001
From: Joel Challis <git@zvecr.com>
Date: Tue, 14 Jun 2022 12:30:31 +0100
Subject: [PATCH] backlight|led 'on state' for DD configuration (#17383)

---
 data/mappings/info_config.json      | 4 ++++
 data/schemas/definitions.jsonschema | 6 ++++++
 data/schemas/keyboard.jsonschema    | 8 ++++++--
 3 files changed, 16 insertions(+), 2 deletions(-)

diff --git a/data/mappings/info_config.json b/data/mappings/info_config.json
index 5f0d903bd7..fcceb98025 100644
--- a/data/mappings/info_config.json
+++ b/data/mappings/info_config.json
@@ -12,6 +12,7 @@
     "AUDIO_VOICES": {"info_key": "audio.voices", "value_type": "bool"},
     "BACKLIGHT_BREATHING": {"info_key": "backlight.breathing", "value_type": "bool"},
     "BREATHING_PERIOD": {"info_key": "backlight.breathing_period", "value_type": "int"},
+    "BACKLIGHT_ON_STATE": {"info_key": "backlight.on_state", "value_type": "int"},
     "BACKLIGHT_PIN": {"info_key": "backlight.pin"},
     "BOTH_SHIFTS_TURNS_ON_CAPS_WORD": {"info_key": "caps_word.both_shifts_turns_on", "value_type": "bool"},
     "CAPS_WORD_IDLE_TIMEOUT": {"info_key": "caps_word.idle_timeout", "value_type": "int"},
@@ -35,6 +36,9 @@
     "LED_CAPS_LOCK_PIN": {"info_key": "indicators.caps_lock"},
     "LED_NUM_LOCK_PIN": {"info_key": "indicators.num_lock"},
     "LED_SCROLL_LOCK_PIN": {"info_key": "indicators.scroll_lock"},
+    "LED_COMPOSE_PIN": {"info_key": "indicators.compose"},
+    "LED_KANA_PIN": {"info_key": "indicators.kana"},
+    "LED_PIN_ON_STATE": {"info_key": "indicators.on_state", "value_type": "int"},
     "MANUFACTURER": {"info_key": "manufacturer"},
     "MATRIX_HAS_GHOST": {"info_key": "matrix_pins.ghost", "value_type": "bool"},
     "MATRIX_IO_DELAY": {"info_key": "matrix_pins.io_delay", "value_type": "int"},
diff --git a/data/schemas/definitions.jsonschema b/data/schemas/definitions.jsonschema
index 1bdfbbeb03..5a2e5ccc05 100644
--- a/data/schemas/definitions.jsonschema
+++ b/data/schemas/definitions.jsonschema
@@ -150,5 +150,11 @@
         "min": 0,
         "max": 255,
         "multipleOf": 1
+    },
+    "bit": {
+        "type": "number",
+        "min": 0,
+        "max": 1,
+        "multipleOf": 1
     }
 }
diff --git a/data/schemas/keyboard.jsonschema b/data/schemas/keyboard.jsonschema
index fd60920578..9f6721ba9d 100644
--- a/data/schemas/keyboard.jsonschema
+++ b/data/schemas/keyboard.jsonschema
@@ -45,7 +45,8 @@
                     "max": 31,
                     "multipleOf": 1
                 },
-                "pin": {"$ref": "qmk.definitions.v1#/mcu_pin"}
+                "pin": {"$ref": "qmk.definitions.v1#/mcu_pin"},
+                "on_state": {"$ref": "qmk.definitions.v1#/bit"}
             }
         },
         "bluetooth": {
@@ -119,7 +120,10 @@
             "properties": {
                 "caps_lock": {"$ref": "qmk.definitions.v1#/mcu_pin"},
                 "num_lock": {"$ref": "qmk.definitions.v1#/mcu_pin"},
-                "scroll_lock": {"$ref": "qmk.definitions.v1#/mcu_pin"}
+                "scroll_lock": {"$ref": "qmk.definitions.v1#/mcu_pin"},
+                "compose": {"$ref": "qmk.definitions.v1#/mcu_pin"},
+                "kana": {"$ref": "qmk.definitions.v1#/mcu_pin"},
+                "on_state": {"$ref": "qmk.definitions.v1#/bit"}
             }
         },
         "layout_aliases": {