mirror of
https://github.com/sle118/squeezelite-esp32.git
synced 2026-04-10 21:17:32 +03:00
chore: checkpoint current IDF 5.5 remediation state
This commit is contained in:
@@ -13,6 +13,7 @@
|
||||
#include "freertos/FreeRTOS.h"
|
||||
#include "freertos/task.h"
|
||||
#include "driver/gpio.h"
|
||||
#include "esp_rom_gpio.h"
|
||||
#include <esp_log.h>
|
||||
|
||||
#include "gds.h"
|
||||
@@ -160,7 +161,7 @@ static bool Init( struct GDS_Device* Device ) {
|
||||
NullCheck( Device->Framebuffer, return false );
|
||||
|
||||
if (Private->ReadyPin >= 0) {
|
||||
gpio_pad_select_gpio( Private->ReadyPin );
|
||||
esp_rom_gpio_pad_select_gpio( Private->ReadyPin );
|
||||
gpio_set_pull_mode( Private->ReadyPin, GPIO_PULLUP_ONLY);
|
||||
gpio_set_direction( Private->ReadyPin, GPIO_MODE_INPUT );
|
||||
}
|
||||
@@ -251,4 +252,4 @@ struct GDS_Device* SSD1675_Detect(sys_display_config* Driver, struct GDS_Device*
|
||||
ESP_LOGI(TAG, "SSD1675 driver with ready GPIO %d", Private->ReadyPin);
|
||||
|
||||
return Device;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -71,7 +71,7 @@ void GDS_FontDrawString( struct GDS_Device* Display, int x, int y, const char* T
|
||||
void GDS_FontDrawAnchoredString( struct GDS_Device* Display, TextAnchor Anchor, const char* Text, int Color );
|
||||
void GDS_FontGetAnchoredStringCoords( struct GDS_Device* Display, int* OutX, int* OutY, TextAnchor Anchor, const char* Text );
|
||||
|
||||
struct GDS_FontDef * Font_droid_sans_fallback_11x13;
|
||||
extern struct GDS_FontDef * Font_droid_sans_fallback_11x13;
|
||||
// const struct GDS_FontDef * Font_droid_sans_fallback_15x17;
|
||||
// const struct GDS_FontDef * Font_droid_sans_fallback_24x28;
|
||||
|
||||
@@ -86,8 +86,8 @@ struct GDS_FontDef * Font_droid_sans_fallback_11x13;
|
||||
// const struct GDS_FontDef * Font_Tarable7Seg_16x32;
|
||||
// const struct GDS_FontDef * Font_Tarable7Seg_32x64;
|
||||
|
||||
struct GDS_FontDef * Font_line_1;
|
||||
struct GDS_FontDef * Font_line_2;
|
||||
extern struct GDS_FontDef * Font_line_1;
|
||||
extern struct GDS_FontDef * Font_line_2;
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
|
||||
@@ -67,6 +67,7 @@ static void displayer_task(void *args);
|
||||
static void display_sleep(void);
|
||||
|
||||
struct GDS_Device *display;
|
||||
bool (*display_bus)(void *from, enum display_bus_cmd_e cmd) = NULL;
|
||||
extern GDS_DetectFunc SSD1306_Detect, SSD132x_Detect, SH1106_Detect, SSD1675_Detect, SSD1322_Detect, SSD1351_Detect, ST77xx_Detect, ILI9341_Detect;
|
||||
GDS_DetectFunc *drivers[] = { SH1106_Detect, SSD1306_Detect, SSD132x_Detect, SSD1675_Detect, SSD1322_Detect, SSD1351_Detect, ST77xx_Detect, ILI9341_Detect, NULL };
|
||||
|
||||
@@ -245,8 +246,9 @@ static void displayer_task(void *args) {
|
||||
// when we have duration but no space, display remaining time
|
||||
if (displayer.duration.value && !displayer.duration.visible) elapsed = displayer.duration.value - elapsed;
|
||||
|
||||
if (elapsed < 3600) sprintf(_line, "%u:%02u", elapsed / 60, elapsed % 60);
|
||||
else sprintf(_line, "%u:%02u:%02u", (elapsed / 3600) % 100, (elapsed % 3600) / 60, elapsed % 60);
|
||||
if (elapsed < 3600) sprintf(_line, "%lu:%02lu", (unsigned long) (elapsed / 60), (unsigned long) (elapsed % 60));
|
||||
else sprintf(_line, "%lu:%02lu:%02lu", (unsigned long) ((elapsed / 3600) % 100),
|
||||
(unsigned long) ((elapsed % 3600) / 60), (unsigned long) (elapsed % 60));
|
||||
|
||||
// concatenate if we have room for elapsed / duration
|
||||
if (displayer.duration.visible) {
|
||||
@@ -408,9 +410,12 @@ void displayer_timer(enum displayer_time_e mode, int elapsed, int duration) {
|
||||
displayer.duration.visible = true;
|
||||
displayer.duration.value = duration / 1000;
|
||||
|
||||
if (displayer.duration.value > 3600) sprintf(displayer.duration.string, "%u:%02u:%02u", (displayer.duration.value / 3600) % 10,
|
||||
(displayer.duration.value % 3600) / 60, displayer.duration.value % 60);
|
||||
else sprintf(displayer.duration.string, "%u:%02u", displayer.duration.value / 60, displayer.duration.value % 60);
|
||||
if (displayer.duration.value > 3600) sprintf(displayer.duration.string, "%lu:%02lu:%02lu",
|
||||
(unsigned long) ((displayer.duration.value / 3600) % 10),
|
||||
(unsigned long) ((displayer.duration.value % 3600) / 60),
|
||||
(unsigned long) (displayer.duration.value % 60));
|
||||
else sprintf(displayer.duration.string, "%lu:%02lu", (unsigned long) (displayer.duration.value / 60),
|
||||
(unsigned long) (displayer.duration.value % 60));
|
||||
|
||||
char *buf;
|
||||
asprintf(&buf, "%s %s/%s", displayer.header, displayer.duration.string, displayer.duration.string);
|
||||
|
||||
@@ -31,7 +31,7 @@ enum displayer_cmd_e { DISPLAYER_SHUTDOWN, DISPLAYER_ACTIVATE, DISPLAYER_SUSPEN
|
||||
enum displayer_time_e { DISPLAYER_ELAPSED, DISPLAYER_REMAINING };
|
||||
|
||||
enum display_bus_cmd_e { DISPLAY_BUS_TAKE, DISPLAY_BUS_GIVE };
|
||||
bool (*display_bus)(void *from, enum display_bus_cmd_e cmd);
|
||||
extern bool (*display_bus)(void *from, enum display_bus_cmd_e cmd);
|
||||
|
||||
void displayer_scroll(char *string, int speed, int pause);
|
||||
void displayer_control(enum displayer_cmd_e cmd, ...);
|
||||
|
||||
Reference in New Issue
Block a user