summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDrashna Jaelre <drashna@live.com>2019-06-05 17:11:34 -0700
committerFlorian Didron <fdidron@users.noreply.github.com>2019-06-06 09:11:34 +0900
commit9b248baf4399a6cbe3688a437cdbec7b267f8631 (patch)
treeee462740daa5654f35fc01d4ea6b8b36559e1b95
parentf781b36aaa88f8748d9db62f9980d8bb9bd35e9b (diff)
Moving rgb typedefs into a single location (#5978) (#69)
Because someone named the define poorly Using full relative path as handwired/promethium has a color.h file
-rw-r--r--changelog.md3
-rwxr-xr-xdrivers/avr/apa102.h2
-rw-r--r--drivers/avr/ws2812.h2
-rw-r--r--quantum/color.h22
-rw-r--r--quantum/rgblight.h2
-rw-r--r--quantum/rgblight_types.h47
6 files changed, 25 insertions, 53 deletions
diff --git a/changelog.md b/changelog.md
index c98c7fa307..3116e2d2a9 100644
--- a/changelog.md
+++ b/changelog.md
@@ -28,4 +28,5 @@
05-29-2019 - Fixing matrix_scan so it properly returns changed status
05-29-2019 - Add belgian layour for sendstring (qmk#6008)
06-03-2019 - Overhaul of AutoShift feature (qmk#6067)
-06-05-2019 - upgrade gcc-arm-none-eabi from the default 5.4.1 to 6.3.1 due to ARM runtine issues
+06-05-2019 - Move RGB typedef's into a unified location
+06-05-2019 - upgrade gcc-arm-none-eabi from the default 5.4.1 to 6.3.1 due to ARM runtine issues \ No newline at end of file
diff --git a/drivers/avr/apa102.h b/drivers/avr/apa102.h
index e7d7c3684f..5d852e0673 100755
--- a/drivers/avr/apa102.h
+++ b/drivers/avr/apa102.h
@@ -25,7 +25,7 @@
#include <avr/io.h>
#include <avr/interrupt.h>
-#include "rgblight_types.h"
+#include "color.h"
/* User Interface
diff --git a/drivers/avr/ws2812.h b/drivers/avr/ws2812.h
index ecb1dc4d18..95f540b184 100644
--- a/drivers/avr/ws2812.h
+++ b/drivers/avr/ws2812.h
@@ -28,7 +28,7 @@
//#include "ws2812_config.h"
//#include "i2cmaster.h"
-#include "rgblight_types.h"
+#include "quantum/color.h"
/* User Interface
*
diff --git a/quantum/color.h b/quantum/color.h
index 9d51d45adb..22bb083519 100644
--- a/quantum/color.h
+++ b/quantum/color.h
@@ -32,12 +32,30 @@
#pragma pack( push, 1 )
#endif
+#ifdef RGBW
+ #define LED_TYPE cRGBW
+#else
+ #define LED_TYPE RGB
+#endif
+
+// WS2812 specific layout
typedef struct PACKED
{
+ uint8_t g;
uint8_t r;
+ uint8_t b;
+} cRGB;
+
+typedef cRGB RGB;
+
+// WS2812 specific layout
+typedef struct PACKED
+{
uint8_t g;
+ uint8_t r;
uint8_t b;
-} RGB;
+ uint8_t w;
+} cRGBW;
typedef struct PACKED
{
@@ -50,6 +68,6 @@ typedef struct PACKED
#pragma pack( pop )
#endif
-RGB hsv_to_rgb( HSV hsv );
+RGB hsv_to_rgb(HSV hsv);
#endif // COLOR_H
diff --git a/quantum/rgblight.h b/quantum/rgblight.h
index 064522a2b0..cba18ae729 100644
--- a/quantum/rgblight.h
+++ b/quantum/rgblight.h
@@ -132,7 +132,7 @@ enum RGBLIGHT_EFFECT_MODE {
#ifndef RGBLIGHT_CUSTOM_DRIVER
#include "ws2812.h"
#endif
-#include "rgblight_types.h"
+#include "color.h"
#include "rgblight_list.h"
#if defined(__AVR__)
diff --git a/quantum/rgblight_types.h b/quantum/rgblight_types.h
deleted file mode 100644
index 49ef5c8ea7..0000000000
--- a/quantum/rgblight_types.h
+++ /dev/null
@@ -1,47 +0,0 @@
-/*
- * light weight WS2812 lib include
- *
- * Version 2.3 - Nev 29th 2015
- * Author: Tim (cpldcpu@gmail.com)
- *
- * Please do not change this file! All configuration is handled in "ws2812_config.h"
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#ifndef RGBLIGHT_TYPES
-#define RGBLIGHT_TYPES
-
-#ifdef __AVR__
- #include <avr/io.h>
-#endif
-
-#ifdef RGBW
- #define LED_TYPE struct cRGBW
-#else
- #define LED_TYPE struct cRGB
-#endif
-
-
-/*
- * Structure of the LED array
- *
- * cRGB: RGB for WS2812S/B/C/D, SK6812, SK6812Mini, SK6812WWA, APA104, APA106
- * cRGBW: RGBW for SK6812RGBW
- */
-
-struct cRGB { uint8_t g; uint8_t r; uint8_t b; };
-struct cRGBW { uint8_t g; uint8_t r; uint8_t b; uint8_t w;};
-
-#endif