|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
From da3febed1796f3ee81a8a623f535c2496539094e Mon Sep 17 00:00:00 2001
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
From: hubenchang0515 <hubenchang@uniontech.com>
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
Date: Mon, 21 Sep 2020 15:32:21 +0800
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
75c19b7 |
Subject: [PATCH 3/8] fix(backlight): remove DDCCI
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
MIME-Version: 1.0
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
Content-Type: text/plain; charset=UTF-8
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
Content-Transfer-Encoding: 8bit
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
DDCCI设置亮度太慢,导致了很多问题,现在删除
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
Log: 删除DDCCI
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
Bug: https://pms.uniontech.com/zentao/bug-view-48540.html
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
Change-Id: I87474b13743f68c3a39ecf33e1f3a97ab934a78c
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
Reviewed-on: http://gerrit.uniontech.com/c/dde-daemon/+/5696
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
Reviewed-by: <mailman@uniontech.com>
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
Reviewed-by: quezhiyong <quezhiyong@uniontech.com>
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
Tested-by: <mailman@uniontech.com>
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
---
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
bin/backlight_helper/ddcci/ddcci.go | 180 --------------------------
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
bin/backlight_helper/ddcci/manager.go | 96 --------------
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
bin/backlight_helper/main.go | 13 +-
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
3 files changed, 1 insertion(+), 288 deletions(-)
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
delete mode 100644 bin/backlight_helper/ddcci/ddcci.go
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
delete mode 100644 bin/backlight_helper/ddcci/manager.go
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
diff --git a/bin/backlight_helper/ddcci/ddcci.go b/bin/backlight_helper/ddcci/ddcci.go
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
deleted file mode 100644
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
index cd4a66da..00000000
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
--- a/bin/backlight_helper/ddcci/ddcci.go
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
+++ /dev/null
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
@@ -1,180 +0,0 @@
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
-package ddcci
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
-
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
-// #cgo pkg-config: ddcutil
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
-// #include <ddcutil_c_api.h>
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
-import "C"
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
-import (
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- "fmt"
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- "sync"
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- "unsafe"
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
-
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- "pkg.deepin.io/lib/utils"
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
-)
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
-
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
-type ddcci struct {
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- listPointer *C.DDCA_Display_Info_List
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- listMu sync.Mutex
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
-
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- displayMap map[string]int
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
-}
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
-
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
-const (
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- brightnessVCP = 0x10
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
-)
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
-
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
-func newDDCCI() (*ddcci, error) {
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- ddc := &ddcci{
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- displayMap: make(map[string]int),
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- }
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
-
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- status := C.ddca_set_max_tries(C.DDCA_MULTI_PART_TRIES, 5)
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- if status < C.int(0) {
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- return nil, fmt.Errorf("Error setting retries: %d", status)
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- }
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
-
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- err := ddc.RefreshDisplays()
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- if err != nil {
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- return nil, err
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- }
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
-
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- return ddc, nil
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
-}
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
-
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
-func (d *ddcci) freeList() {
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- if d.listPointer != nil {
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- C.ddca_free_display_info_list(d.listPointer)
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- d.listPointer = nil
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- }
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
-}
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
-
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
-func (d *ddcci) RefreshDisplays() error {
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- d.listMu.Lock()
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- defer d.listMu.Unlock()
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
-
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- d.freeList()
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
-
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- status := C.ddca_get_display_info_list2(C.bool(true), &d.listPointer)
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- if status != C.int(0) {
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- return fmt.Errorf("failed to get display info list: %d", status)
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- }
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
-
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- for i := 0; i < int(d.listPointer.ct); i++ {
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- err := d.initDisplay(i)
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- if err != nil {
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- logger.Warning(err)
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- }
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- }
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
-
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- return nil
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
-}
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
-
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
-func (d *ddcci) initDisplay(idx int) error {
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- item := d.getDisplayInfoByIdx(idx)
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
-
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- var handle C.DDCA_Display_Handle
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- status := C.ddca_open_display2(item.dref, C.bool(true), &handle)
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- if status != C.int(0) {
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- return fmt.Errorf("failed to open monitor: %d", status)
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- }
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
-
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- defer C.ddca_close_display(handle)
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
-
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- var val C.DDCA_Non_Table_Vcp_Value
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- status = C.ddca_get_non_table_vcp_value(handle, brightnessVCP, &val)
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- if status != C.int(0) {
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- return fmt.Errorf("failed to check DDC/CI support: %d", status)
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- }
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
-
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- edid := C.GoBytes(unsafe.Pointer(&item.edid_bytes), 128)
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- edidChecksum := getEDIDChecksum(edid)
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
-
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- d.displayMap[string(edidChecksum)] = idx
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- return nil
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
-}
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
-
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
-func (d *ddcci) SupportBrightness(edidChecksum string) bool {
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- d.listMu.Lock()
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- _, ok := d.displayMap[edidChecksum]
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- d.listMu.Unlock()
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
-
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- return ok
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
-}
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
-
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
-func (d *ddcci) GetBrightness(edidChecksum string) (brightness int, err error) {
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- d.listMu.Lock()
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- defer d.listMu.Unlock()
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
-
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- idx, ok := d.displayMap[edidChecksum]
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- if !ok {
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- err = fmt.Errorf("monitor not support DDC/CI")
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- return
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- }
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
-
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- item := d.getDisplayInfoByIdx(idx)
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
-
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- var handle C.DDCA_Display_Handle
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- status := C.ddca_open_display2(item.dref, C.bool(true), &handle)
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- if status != C.int(0) {
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- err = fmt.Errorf("failed to open monitor: %d", status)
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- return
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- }
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
-
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- defer C.ddca_close_display(handle)
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
-
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- var val C.DDCA_Non_Table_Vcp_Value
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- status = C.ddca_get_non_table_vcp_value(handle, brightnessVCP, &val)
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- if status != C.int(0) {
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- err = fmt.Errorf("failed to get brightness: %d", status)
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- return
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- }
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
-
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- brightness = int(val.sl)
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- return
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
-}
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
-
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
-func (d *ddcci) SetBrightness(edidChecksum string, percent int) error {
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- d.listMu.Lock()
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- defer d.listMu.Unlock()
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
-
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- idx, ok := d.displayMap[edidChecksum]
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- if !ok {
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- return fmt.Errorf("monitor not support DDC/CI")
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- }
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
-
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- item := d.getDisplayInfoByIdx(idx)
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
-
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- var handle C.DDCA_Display_Handle
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- status := C.ddca_open_display2(item.dref, C.bool(true), &handle)
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- if status != C.int(0) {
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- return fmt.Errorf("failed to open monitor: %d", status)
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- }
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
-
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- defer C.ddca_close_display(handle)
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
-
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- // 开启结果验证,防止返回设置成功,但实际上没有生效的情况
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- // 此方法仅对当前线程生效
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- C.ddca_enable_verify(true)
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
-
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- status = C.ddca_set_non_table_vcp_value(handle, brightnessVCP, 0, C.uchar(percent))
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- if status != C.int(0) {
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- return fmt.Errorf("failed to set brightness via DDC/CI: %d", status)
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- }
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
-
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- return nil
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
-}
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
-
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
-func (d *ddcci) getDisplayInfoByIdx(idx int) *C.DDCA_Display_Info {
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- start := unsafe.Pointer(uintptr(unsafe.Pointer(d.listPointer)) + uintptr(C.sizeof_DDCA_Display_Info_List))
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- size := uintptr(C.sizeof_DDCA_Display_Info)
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
-
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- return (*C.DDCA_Display_Info)(unsafe.Pointer(uintptr(start) + size*uintptr(idx)))
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
-}
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
-
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
-func getEDIDChecksum(edid []byte) string {
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- if len(edid) < 128 {
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- return ""
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- }
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
-
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- id, _ := utils.SumStrMd5(string(edid[:128]))
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- return id
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
-}
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
diff --git a/bin/backlight_helper/ddcci/manager.go b/bin/backlight_helper/ddcci/manager.go
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
deleted file mode 100644
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
index e87083d2..00000000
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
--- a/bin/backlight_helper/ddcci/manager.go
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
+++ /dev/null
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
@@ -1,96 +0,0 @@
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
-package ddcci
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
-
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
-import (
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- "fmt"
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- "runtime"
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- "strings"
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- "sync"
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
-
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- dbus "github.com/godbus/dbus"
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- "pkg.deepin.io/lib/dbusutil"
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- "pkg.deepin.io/lib/log"
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
-)
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
-
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
-const (
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- DbusPath = "/com/deepin/daemon/helper/Backlight/DDCCI"
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- dbusInterface = "com.deepin.daemon.helper.Backlight.DDCCI"
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
-)
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
-
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
-var logger = log.NewLogger("backlight_helper/ddcci")
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
-
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
-type Manager struct {
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- ddcci *ddcci
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- PropsMu sync.RWMutex
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
-
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- methods *struct { //nolint
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- CheckSupport func() `in:"edidChecksum" out:"support"`
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- GetBrightness func() `in:"edidChecksum" out:"value"`
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- SetBrightness func() `in:"edidChecksum,value"`
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- RefreshDisplays func()
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- }
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
-}
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
-
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
-func NewManager() (*Manager, error) {
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- m := &Manager{}
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
-
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- // 在 arm 和 mips 架构下,调用 i2c 的接口会导致待机后无法唤醒,
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- // 所以不在 arm 和 mips 架构下使用 DDC/CI 功能。
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- if !strings.HasPrefix(runtime.GOARCH, "arm") && !strings.HasPrefix(runtime.GOARCH, "mips") {
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- var err error
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- m.ddcci, err = newDDCCI()
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- if err != nil {
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- return nil, fmt.Errorf("failed to init ddc/ci: %s", err)
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- }
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- }
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
-
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- return m, nil
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
-}
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
-
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
-func (*Manager) GetInterfaceName() string {
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- return dbusInterface
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
-}
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
-
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
-func (m *Manager) CheckSupport(edidChecksum string) (bool, *dbus.Error) {
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- if m.ddcci == nil {
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- return false, nil
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- }
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
-
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- return m.ddcci.SupportBrightness(edidChecksum), nil
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
-}
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
-
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
-func (m *Manager) GetBrightness(edidChecksum string) (int32, *dbus.Error) {
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- if m.ddcci == nil {
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- return 0, nil
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- }
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
-
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- if !m.ddcci.SupportBrightness(edidChecksum) {
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- err := fmt.Errorf("not support ddc/ci: %s", edidChecksum)
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- return 0, dbusutil.ToError(err)
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- }
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
-
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- brightness, err := m.ddcci.GetBrightness(edidChecksum)
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- return int32(brightness), dbusutil.ToError(err)
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
-}
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
-
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
-func (m *Manager) SetBrightness(edidChecksum string, value int32) *dbus.Error {
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- if m.ddcci == nil {
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- return nil
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- }
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
-
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- if !m.ddcci.SupportBrightness(edidChecksum) {
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- err := fmt.Errorf("not support ddc/ci: %s", edidChecksum)
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- return dbusutil.ToError(err)
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- }
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
-
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- err := m.ddcci.SetBrightness(edidChecksum, int(value))
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- return dbusutil.ToError(err)
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
-}
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
-
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
-func (m *Manager) RefreshDisplays() *dbus.Error {
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- if m.ddcci == nil {
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- return nil
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- }
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
-
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- err := m.ddcci.RefreshDisplays()
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- return dbusutil.ToError(err)
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
-}
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
diff --git a/bin/backlight_helper/main.go b/bin/backlight_helper/main.go
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
index c8e6e7e1..84f13805 100644
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
--- a/bin/backlight_helper/main.go
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
+++ b/bin/backlight_helper/main.go
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
@@ -27,7 +27,6 @@ import (
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
"strings"
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
dbus "github.com/godbus/dbus"
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- "pkg.deepin.io/dde/daemon/bin/backlight_helper/ddcci"
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
"pkg.deepin.io/lib/dbusutil"
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
"pkg.deepin.io/lib/log"
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
)
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
@@ -45,7 +44,7 @@ const (
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
type Manager struct {
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
service *dbusutil.Service
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- methods *struct { //nolint
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
+ methods *struct { //nolint
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
SetBrightness func() `in:"type,name,value"`
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
}
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
}
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
@@ -111,16 +110,6 @@ func main() {
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
logger.Fatal("failed to export:", err)
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
}
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- ddcciManager, err := ddcci.NewManager()
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- if err != nil {
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- logger.Warning(err)
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- } else {
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- err = service.Export(ddcci.DbusPath, ddcciManager)
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- if err != nil {
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- logger.Warning("failed to export:", err)
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- }
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
- }
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
-
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
err = service.RequestName(dbusServiceName)
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
if err != nil {
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
logger.Fatal("failed to request name:", err)
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
--
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
2.26.2
|
|
![](https://seccdn.libravatar.org/avatar/a65d7cf45e7593529e5084ec07e58f4116485386ddb9d13dfb3dceb970559734?s=16&d=retro) |
79f4da1 |
|