This is an automated email from the git hooks/post-receive script.

git pushed a commit to branch master
in repository enlightenment.

View the commit online.

commit 92db607af20eec210560fb17c194fa717f2ed198
Author: Carsten Haitzler <ras...@rasterman.com>
AuthorDate: Wed Dec 18 14:37:36 2024 +0000

    ddc support - add support for 2 new init funcs in libddcutil
---
 src/bin/system/e_system_ddc.c | 32 ++++++++++++++++++++++++++++++++
 1 file changed, 32 insertions(+)

diff --git a/src/bin/system/e_system_ddc.c b/src/bin/system/e_system_ddc.c
index f06ea2c93..60417bfb9 100644
--- a/src/bin/system/e_system_ddc.c
+++ b/src/bin/system/e_system_ddc.c
@@ -30,6 +30,26 @@ typedef void * DDCA_Display_Ref;
 typedef void * DDCA_Display_Handle;
 typedef uint8_t DDCA_Vcp_Feature_Code;
 
+typedef enum
+{
+  DDCA_INIT_OPTIONS_NONE,
+  DDCA_INIT_OPTIONS_DISABLE_CONFIG_FILE,
+  DDCA_INIT_OPTIONS_CLIENT_OPENED_SYSLOG,
+  DDCA_INIT_OPTIONS_ENABLE_INIT_MSGS
+} DDCA_Init_Options;
+
+typedef enum
+{
+  DDCA_SYSLOG_NOT_SET = -1,
+  DDCA_SYSLOG_NEVER   =  0,
+  DDCA_SYSLOG_ERROR   =  3,
+  DDCA_SYSLOG_WARNING =  6,
+  DDCA_SYSLOG_NOTICE  =  9,
+  DDCA_SYSLOG_INFO    = 12,
+  DDCA_SYSLOG_VERBOSE = 15,
+  DDCA_SYSLOG_DEBUG   = 18,
+} DDCA_Syslog_Level;
+
 typedef enum
 {
    DDCA_IO_I2C,
@@ -184,6 +204,10 @@ typedef struct
 // ddc lib handle and func symbols
 static void *ddc_lib = NULL;
 struct {
+   DDCA_Status (*ddca_init)
+     (const char *libopts, DDCA_Syslog_Level syslog_level, DDCA_Init_Options opts);
+   DDCA_Status (*ddca_init2)
+     (const char *libopts, DDCA_Syslog_Level syslog_level_arg, DDCA_Init_Options opts, char ***infomsg_loc);
    DDCA_Status (*ddca_get_display_info_list2)
      (bool include_invalid_displays, DDCA_Display_Info_List **dlist_loc);
    void (*ddca_free_display_info_list)
@@ -322,6 +346,8 @@ _ddc_init(void)
       ddc_func._x = dlsym(ddc_lib, #_x); \
       if (!ddc_func._x) return EINA_FALSE; \
    } while (0)
+   SYM(ddca_init);
+   SYM(ddca_init2);
    SYM(ddca_get_display_info_list2);
    SYM(ddca_free_display_info_list);
    SYM(ddca_open_display2);
@@ -341,6 +367,12 @@ _ddc_init(void)
    if (system("modprobe i2c-dev") == 0)
      usleep(500 * 1000); // and wait for the module to come up... 200ms
 
+   // init lib with init funcs - newest tried first
+   if (ddc_func.ddca_init2)
+     ddc_func.ddca_init2("", DDCA_SYSLOG_WARNING, DDCA_INIT_OPTIONS_NONE, NULL);
+   else if (ddc_func.ddca_init)
+     ddc_func.ddca_init("", DDCA_SYSLOG_WARNING, DDCA_INIT_OPTIONS_NONE);
+
    if (!_ddc_probe()) return EINA_FALSE;
 
    // try improve performance by limiting sleeps in ddcutil

-- 
To stop receiving notification emails like this one, please contact
the administrator of this repository.

Reply via email to