1# 驱动子系统扩展外设管理模块Changelog
2## cl.usbddk.1 USB_DDK/HID_DDK错误码定义变更
3
4**访问级别**
5
6公开接口。
7
8**变更原因**
9
10扩展外设管理模块已有的错误码可能有如下两种情况导致开发者体验不佳:
11
12  1.存在错误码未定义的现象,当返回未定义的错误码时,无有效处理指导;
13
14  2.存在定义了错误码,但没有返回该错误码的场景,需要废除;
15
16因此需要对涉及到的错误码进行整改。
17
18**变更影响**
19
20该变更为不兼容变更。
21
22可能的影响:
23
24  1.对于存量错误码的定义进行了规范化调整,需要对错误码重新校验。
25
26  2.已经存在但未定义的错误码,可以新增相关错误码校验,以及处理措施。
27
28USB错误码
29
30| 变更前 | 变更后 |
31| ------ | ------ |
32| USB_DDK_SUCCESS = 0 | 未变更 |
33| USB_DDK_FAILED = -1 | 废弃 |
34| USB_DDK_INVALID_PARAMETER = -2 | USB_DDK_INVALID_PARAMETER = 401 |
35| USB_DDK_MEMORY_ERROR = -3 | USB_DDK_MEMORY_ERROR = 27400001 |
36| USB_DDK_INVALID_OPERATION = -4 | USB_DDK_INVALID_OPERATION = 27400002 |
37| USB_DDK_NULL_PTR = -5 | 废弃 |
38| USB_DDK_DEVICE_BUSY = -6 | 废弃 |
39| USB_DDK_TIMEOUT = -7 | USB_DDK_TIMEOUT = 27400004 |
40| USB_DDK_NO_PERM = 201 | 新增 |
41| USB_DDK_IO_FAILED = 27400003 | 新增 |
42
43HID错误码
44
45| 变更前 | 变更后 |
46| ------ | ------ |
47| HID_DDK_SUCCESS = 0 | 未变更 |
48| HID_DDK_NO_PERM = -6 | HID_DDK_NO_PERM = 201 |
49| HID_DDK_INVALID_PARAMETER = -2 | HID_DDK_INVALID_PARAMETER = 401 |
50| HID_DDK_FAILURE = -1 | HID_DDK_FAILURE = 27300001 |
51| HID_DDK_NULL_PTR = -4 | HID_DDK_NULL_PTR = 27300002 |
52| HID_DDK_INVALID_OPERATION = -3 | HID_DDK_INVALID_OPERATION = 27300003 |
53| HID_DDK_TIMEOUT = -5 | HID_DDK_TIMEOUT = 27300004 |
54
55**起始 API Level**
56
5710
58
59**变更发生的版本**
60
61从OpenHarmonySDK 5.0.0.52开始。
62
63**变更的接口/组件**
64
65drivers/external_device_manager66
67**适配指导**
68
69开发人员无需做额外适配,如果有对特定错误码进行校验的话,请查看最新的错误码定义;
70
71推荐校验错误码时对枚举的宏定义进行校验,而不是对定义的枚举值校验;
72
73例如校验HID的权限错误码:
74
75  ```C++
76  //...
77  int32_t ret;
78  ret = OH_Hid_CreateDevice(hidDevice, hidEventProperties);
79  if (ret == HID_DDK_NO_PERM) {
80      //权限配置错误的处理措施
81  }
82  ```
83