qmk_firmware

QMK firmware for my keyboards (Corne, Sweep Ferris) and trackball (Ploopy Adept)
Log | Files | Refs | Submodules | LICENSE

djinn.h (816B)


      1 // Copyright 2018-2023 Nick Brassel (@tzarc)
      2 // SPDX-License-Identifier: GPL-2.0-or-later
      3 #pragma once
      4 #include "quantum.h"
      5 #include "qp.h"
      6 
      7 //----------------------------------------------------------
      8 // General stuff
      9 
     10 extern painter_device_t lcd;
     11 
     12 void matrix_wait_for_interrupt(void);
     13 
     14 void        usbpd_update(void);
     15 const char* usbpd_str(usbpd_allowance_t allowance);
     16 
     17 //----------------------------------------------------------
     18 // Runtime data sync -- keyboard
     19 
     20 #pragma pack(push)
     21 #pragma pack(1)
     22 typedef struct kb_runtime_config {
     23     usbpd_allowance_t current_setting : 2;
     24 } kb_runtime_config;
     25 #pragma pack(pop)
     26 
     27 extern kb_runtime_config kb_state;
     28 
     29 void kb_state_update(void);
     30 void kb_state_sync(void);
     31 void kb_state_sync_slave(uint8_t m2s_size, const void* m2s_buffer, uint8_t s2m_size, void* s2m_buffer);