rockchip android ----打印机支持(/dev/usb/lp0)

打印机支持 /dev/usb/lp0

内核配置
CONFIG_USB_PRINTER=y
创建节点

补丁位置/system/core

Android 7.1
diff --git a/init/devices.cpp b/init/devices.cpp
index ada1e28..22993fa 100644
--- a/init/devices.cpp
+++ b/init/devices.cpp
@@ -407,6 +407,13 @@ void DeviceHandler::HandleDeviceEvent(const Uevent& uevent) {
             int device_id = uevent.minor % 128 + 1;
             devpath = StringPrintf("/dev/bus/usb/%03d/%03d", bus_id, device_id);
         }
+    } else if (uevent.subsystem == "usbmisc") {
+        if (!uevent.device_name.empty()) {
+            devpath = "/dev/" + uevent.device_name;
+        } else {
+            // ignore other USB events
+            return;
+        }
     } else if (StartsWith(uevent.subsystem, "usb")) {
         // ignore other USB events
         return;
Android 9.0
diff --git a/init/devices.cpp b/init/devices.cpp
index 9ef416b..0128a5d 100644
--- a/init/devices.cpp
+++ b/init/devices.cpp
@@ -699,6 +699,14 @@ static void handle_generic_device_event(struct uevent *uevent)
                  make_dir(devpath, 0755);
                  snprintf(devpath, sizeof(devpath), "/dev/bus/usb/%03d/%03d", bus_id, device_id);
              }
+         } else if (!strncmp(uevent->subsystem, "usbmisc", 7)) {
+            if (!strncmp(uevent->device_name, "usb/lp", 6)) {
+                base = "/dev/usb/";
+                make_dir(base, 0755);
+            } else {
+                /* ignore other USB events */
+                return;
+            }
          } else {
              /* ignore other USB events */
              return;

在这里插入图片描述

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值