From 8826e20f043cc86cdb05c31485eaf299af10e900 Mon Sep 17 00:00:00 2001 From: shilong Date: Tue, 23 Jul 2024 12:25:59 +0000 Subject: [PATCH 1/5] =?UTF-8?q?=E8=93=9D=E9=BB=84=E5=B7=AE=E5=BC=82?= =?UTF-8?q?=E4=BB=A3=E7=A0=81=E5=9B=9E=E9=80=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: shilong --- framework/model/input/driver/hdf_hid_adapter.c | 2 +- framework/model/input/driver/hdf_hid_adapter.h | 1 - framework/model/input/driver/hdf_input_device_manager.c | 1 - 3 files changed, 1 insertion(+), 3 deletions(-) diff --git a/framework/model/input/driver/hdf_hid_adapter.c b/framework/model/input/driver/hdf_hid_adapter.c index 26171509f..cd96df37b 100644 --- a/framework/model/input/driver/hdf_hid_adapter.c +++ b/framework/model/input/driver/hdf_hid_adapter.c @@ -226,7 +226,7 @@ static void DoRegisterInputDev(InputDevice* inputDev) } } -void CacheHid(InputDevice* inputDev) +static void CacheHid(InputDevice* inputDev) { HDF_LOGI("%s: Cache hid device", __func__); int32_t i = 0; diff --git a/framework/model/input/driver/hdf_hid_adapter.h b/framework/model/input/driver/hdf_hid_adapter.h index 2b4a5af2c..d054a5a20 100644 --- a/framework/model/input/driver/hdf_hid_adapter.h +++ b/framework/model/input/driver/hdf_hid_adapter.h @@ -96,5 +96,4 @@ void SendInfoToHdf(HidInfo *info); void* HidRegisterHdfInputDev(HidInfo *info); void HidUnregisterHdfInputDev(const void *inputDev); void HidReportEvent(const void *inputDev, uint32_t type, uint32_t code, int32_t value); -void CacheHid(InputDevice* inputDev); #endif diff --git a/framework/model/input/driver/hdf_input_device_manager.c b/framework/model/input/driver/hdf_input_device_manager.c index e1ed41540..078b41b1a 100644 --- a/framework/model/input/driver/hdf_input_device_manager.c +++ b/framework/model/input/driver/hdf_input_device_manager.c @@ -13,7 +13,6 @@ #include "hdf_device_object.h" #include "hdf_log.h" #include "osal_mem.h" -#include "hdf_hid_adapter.h" #define NODE_MODE 0660 #define SERVICE_NAME_LEN 24 -- Gitee From 164c926021fd39d7f8d73413c4b12c1894056dd6 Mon Sep 17 00:00:00 2001 From: shilong Date: Wed, 24 Jul 2024 02:10:52 +0000 Subject: [PATCH 2/5] =?UTF-8?q?=E8=B6=85=E5=A4=A7=E5=87=BD=E6=95=B0?= =?UTF-8?q?=E6=95=B4=E6=94=B9=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: shilong --- framework/model/input/driver/hdf_touch.c | 55 ++++++++++-------------- 1 file changed, 23 insertions(+), 32 deletions(-) diff --git a/framework/model/input/driver/hdf_touch.c b/framework/model/input/driver/hdf_touch.c index 52aec409c..93e416c8b 100644 --- a/framework/model/input/driver/hdf_touch.c +++ b/framework/model/input/driver/hdf_touch.c @@ -237,12 +237,31 @@ static int32_t Gt1xRequestIo(ChipDevice *chipDev) } #endif +static int32_t HandleSeqArray(SeqArray obj, ChipDevice *chipDev) +{ + int32_t i; + int32_t ret = memcpy_s(&obj, sizeof(SeqArray), &chipDev->chipCfg->pwrSeq.pwrOn, sizeof(SeqArray)); + if (ret != EOK) { + HDF_LOGE("%s: memcpy_s failed", __func__); + return HDF_FAILURE; + } + if ((obj.buf == NULL) || (obj.count == 0)) { + HDF_LOGE("%s: obj config is invalid", __func__); + return HDF_FAILURE; + } + for (i = 0; i < obj.count / PWR_CELL_LEN; i++) { + ret = HandleResetEvent(chipDev, obj.buf, PWR_CELL_LEN); + CHECK_RETURN_VALUE(ret); + obj.buf = obj.buf + PWR_CELL_LEN; + } + return HDF_SUCCESS; +} + static int32_t SetTiming(ChipDevice *chipDev, bool enable) { #if defined(CONFIG_ARCH_MESON) return HDF_SUCCESS; #endif - int32_t i; int32_t ret; uint32_t rstPinAddr; uint32_t rstPinValue; @@ -268,37 +287,9 @@ static int32_t SetTiming(ChipDevice *chipDev, bool enable) __func__, rstPinAddr, rstPinValue, intPinAddr, intPinValue); HDF_LOGE("%s: enable = %d", __func__, enable); - if (enable) { - ret = memcpy_s(&pwrOnTiming, sizeof(SeqArray), &chipDev->chipCfg->pwrSeq.pwrOn, sizeof(SeqArray)); - if (ret != EOK) { - HDF_LOGE("%s: memcpy_s failed", __func__); - return HDF_FAILURE; - } - if ((pwrOnTiming.buf == NULL) || (pwrOnTiming.count == 0)) { - HDF_LOGE("%s: pwrOnTiming config is invalid", __func__); - return HDF_FAILURE; - } - for (i = 0; i < pwrOnTiming.count / PWR_CELL_LEN; i++) { - ret = HandleResetEvent(chipDev, pwrOnTiming.buf, PWR_CELL_LEN); - CHECK_RETURN_VALUE(ret); - pwrOnTiming.buf = pwrOnTiming.buf + PWR_CELL_LEN; - } - } else { - ret = memcpy_s(&pwroffTiming, sizeof(SeqArray), &chipDev->chipCfg->pwrSeq.pwrOff, sizeof(SeqArray)); - if (ret != EOK) { - HDF_LOGE("%s: memcpy_s failed", __func__); - return HDF_FAILURE; - } - if ((pwroffTiming.buf == NULL) || (pwroffTiming.count == 0)) { - HDF_LOGE("%s: pwroffTiming config is invalid", __func__); - return HDF_FAILURE; - } - for (i = 0; i < pwroffTiming.count / PWR_CELL_LEN; i++) { - ret = HandlePowerEvent(chipDev, pwroffTiming.buf, PWR_CELL_LEN); - CHECK_RETURN_VALUE(ret); - pwroffTiming.buf = pwroffTiming.buf + PWR_CELL_LEN; - } - } + SeqArray obj = enable ? pwrOnTiming : pwroffTiming; + ret = HandleSeqArray(obj, chipDev); + CHECK_RETURN_VALUE(ret); #if defined(CONFIG_ARCH_ROCKCHIP) ret = SetResetStatus(driver); -- Gitee From 550b41ae52019ad82d6beb2604ba6c39c6e57a8d Mon Sep 17 00:00:00 2001 From: shilong Date: Wed, 24 Jul 2024 03:52:13 +0000 Subject: [PATCH 3/5] =?UTF-8?q?=E8=B6=85=E5=A4=A7=E5=87=BD=E6=95=B0?= =?UTF-8?q?=E6=95=B4=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: shilong --- framework/model/input/driver/hdf_touch.c | 15 +++++++++------ framework/model/input/driver/hdf_touch.h | 2 ++ 2 files changed, 11 insertions(+), 6 deletions(-) diff --git a/framework/model/input/driver/hdf_touch.c b/framework/model/input/driver/hdf_touch.c index 93e416c8b..81a3a0d62 100644 --- a/framework/model/input/driver/hdf_touch.c +++ b/framework/model/input/driver/hdf_touch.c @@ -237,10 +237,10 @@ static int32_t Gt1xRequestIo(ChipDevice *chipDev) } #endif -static int32_t HandleSeqArray(SeqArray obj, ChipDevice *chipDev) +static int32_t HandleSeqArray(SeqArray obj, SeqArray src, PowerEventHandler eventHandler) { int32_t i; - int32_t ret = memcpy_s(&obj, sizeof(SeqArray), &chipDev->chipCfg->pwrSeq.pwrOn, sizeof(SeqArray)); + int32_t ret = memcpy_s(&obj, sizeof(SeqArray), src, sizeof(SeqArray)); if (ret != EOK) { HDF_LOGE("%s: memcpy_s failed", __func__); return HDF_FAILURE; @@ -250,7 +250,7 @@ static int32_t HandleSeqArray(SeqArray obj, ChipDevice *chipDev) return HDF_FAILURE; } for (i = 0; i < obj.count / PWR_CELL_LEN; i++) { - ret = HandleResetEvent(chipDev, obj.buf, PWR_CELL_LEN); + ret = eventHandler(chipDev, obj.buf, PWR_CELL_LEN); CHECK_RETURN_VALUE(ret); obj.buf = obj.buf + PWR_CELL_LEN; } @@ -267,8 +267,9 @@ static int32_t SetTiming(ChipDevice *chipDev, bool enable) uint32_t rstPinValue; uint32_t intPinAddr; uint32_t intPinValue; + PowerEventHandler eventHandler; SeqArray pwrOnTiming = {0}; - SeqArray pwroffTiming = {0}; + SeqArray pwrOffTiming = {0}; TouchDriver *driver = chipDev->driver; rstPinAddr = driver->boardCfg->pins.rstPinReg[0]; @@ -287,8 +288,10 @@ static int32_t SetTiming(ChipDevice *chipDev, bool enable) __func__, rstPinAddr, rstPinValue, intPinAddr, intPinValue); HDF_LOGE("%s: enable = %d", __func__, enable); - SeqArray obj = enable ? pwrOnTiming : pwroffTiming; - ret = HandleSeqArray(obj, chipDev); + SeqArray obj = enable ? pwrOnTiming : pwrOffTiming; + SeqArray src = enable ? &chipDev->chipCfg->pwrSeq.pwrOn : &chipDev->chipCfg->pwrSeq.pwrOff; + eventHandler = enable ? HandleResetEvent : HandlePowerEvent; + ret = HandleSeqArray(obj, src, eventHandler); CHECK_RETURN_VALUE(ret); #if defined(CONFIG_ARCH_ROCKCHIP) diff --git a/framework/model/input/driver/hdf_touch.h b/framework/model/input/driver/hdf_touch.h index 248273d43..19b19d173 100644 --- a/framework/model/input/driver/hdf_touch.h +++ b/framework/model/input/driver/hdf_touch.h @@ -109,4 +109,6 @@ typedef struct { int32_t RegisterTouchChipDevice(ChipDevice *chipDev); +typedef int32_t (*PowerEventHandler)(ChipDevice *chipDev, uint32_t *buf, uint32_t len); + #endif -- Gitee From 6afbae2e5a0a098b6a266dcf113adb68a60c52c4 Mon Sep 17 00:00:00 2001 From: shilong Date: Wed, 24 Jul 2024 03:56:41 +0000 Subject: [PATCH 4/5] =?UTF-8?q?=E8=B6=85=E5=A4=A7=E5=87=BD=E6=95=B0?= =?UTF-8?q?=E6=95=B4=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: shilong --- framework/model/input/driver/hdf_touch.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/framework/model/input/driver/hdf_touch.c b/framework/model/input/driver/hdf_touch.c index 81a3a0d62..730b82e86 100644 --- a/framework/model/input/driver/hdf_touch.c +++ b/framework/model/input/driver/hdf_touch.c @@ -237,10 +237,10 @@ static int32_t Gt1xRequestIo(ChipDevice *chipDev) } #endif -static int32_t HandleSeqArray(SeqArray obj, SeqArray src, PowerEventHandler eventHandler) +static int32_t HandleSeqArray(SeqArray *obj, SeqArray *src, PowerEventHandler eventHandler) { int32_t i; - int32_t ret = memcpy_s(&obj, sizeof(SeqArray), src, sizeof(SeqArray)); + int32_t ret = memcpy_s(obj, sizeof(SeqArray), src, sizeof(SeqArray)); if (ret != EOK) { HDF_LOGE("%s: memcpy_s failed", __func__); return HDF_FAILURE; @@ -288,8 +288,8 @@ static int32_t SetTiming(ChipDevice *chipDev, bool enable) __func__, rstPinAddr, rstPinValue, intPinAddr, intPinValue); HDF_LOGE("%s: enable = %d", __func__, enable); - SeqArray obj = enable ? pwrOnTiming : pwrOffTiming; - SeqArray src = enable ? &chipDev->chipCfg->pwrSeq.pwrOn : &chipDev->chipCfg->pwrSeq.pwrOff; + SeqArray *obj = enable ? &pwrOnTiming : &pwrOffTiming; + SeqArray *src = enable ? &chipDev->chipCfg->pwrSeq.pwrOn : &chipDev->chipCfg->pwrSeq.pwrOff; eventHandler = enable ? HandleResetEvent : HandlePowerEvent; ret = HandleSeqArray(obj, src, eventHandler); CHECK_RETURN_VALUE(ret); -- Gitee From e8526e4337aed90ecb2f1f12fa60833811138827 Mon Sep 17 00:00:00 2001 From: shilong Date: Wed, 24 Jul 2024 06:24:46 +0000 Subject: [PATCH 5/5] =?UTF-8?q?=E6=8A=A5=E9=94=99=E6=95=B4=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: shilong --- framework/model/input/driver/hdf_touch.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/framework/model/input/driver/hdf_touch.c b/framework/model/input/driver/hdf_touch.c index 730b82e86..8dff10cf6 100644 --- a/framework/model/input/driver/hdf_touch.c +++ b/framework/model/input/driver/hdf_touch.c @@ -245,14 +245,14 @@ static int32_t HandleSeqArray(SeqArray *obj, SeqArray *src, PowerEventHandler ev HDF_LOGE("%s: memcpy_s failed", __func__); return HDF_FAILURE; } - if ((obj.buf == NULL) || (obj.count == 0)) { + if ((obj->buf == NULL) || (obj->count == 0)) { HDF_LOGE("%s: obj config is invalid", __func__); return HDF_FAILURE; } - for (i = 0; i < obj.count / PWR_CELL_LEN; i++) { - ret = eventHandler(chipDev, obj.buf, PWR_CELL_LEN); + for (i = 0; i < obj->count / PWR_CELL_LEN; i++) { + ret = eventHandler(chipDev, obj->buf, PWR_CELL_LEN); CHECK_RETURN_VALUE(ret); - obj.buf = obj.buf + PWR_CELL_LEN; + obj->buf = obj->buf + PWR_CELL_LEN; } return HDF_SUCCESS; } -- Gitee