From patchwork Thu May 21 13:54:23 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Umang Jain X-Patchwork-Id: 3832 Return-Path: Received: from o1.f.az.sendgrid.net (o1.f.az.sendgrid.net [208.117.55.132]) by lancelot.ideasonboard.com (Postfix) with ESMTPS id 1558A60DF9 for ; Thu, 21 May 2020 15:54:24 +0200 (CEST) Authentication-Results: lancelot.ideasonboard.com; dkim=pass (1024-bit key; unprotected) header.d=uajain.com header.i=@uajain.com header.b="B0gffZJ8"; dkim-atps=neutral DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=uajain.com; h=from:subject:mime-version:to:cc:content-transfer-encoding: content-type; s=s1; bh=up9Q9kYZ/I/4qPoea+rTE64SwQjg/fDvybKbFeXvBcQ=; b=B0gffZJ8Y6y314lOL868LVQPyW0DGSKhxUFOp89+OR3aggJUDaP8FqYqLXuSK5kDEh1D G0tvRyaS/XNtVF4prK9ZwpvKX5268u4QCHbt1QBfEMNyo6yo7TiaW3vklEC1VFnEMRsqkm Cjj57fapUJRwgLe9B+4Oc2f7gJfXykBCY= Received: by filter0081p3las1.sendgrid.net with SMTP id filter0081p3las1-30901-5EC6880F-4 2020-05-21 13:54:23.137313881 +0000 UTC m=+491545.190242642 Received: from mail.uajain.com (unknown) by ismtpd0005p1hnd1.sendgrid.net (SG) with ESMTP id GYmVt2u0SMqrwf0xZ69Inw for ; Thu, 21 May 2020 13:54:22.614 +0000 (UTC) From: Umang Jain Date: Thu, 21 May 2020 13:54:23 +0000 (UTC) Message-Id: <20200521135416.13685-1-email@uajain.com> Mime-Version: 1.0 X-SG-EID: 1Q40EQ7YGir8a9gjSIAdTjhngY657NMk9ckeo4dbHZDiOpywc/L3L9rFqlwE4KPc1PzzgVzhjC45/EOdGbf2jvNhM3HA9z+BZqq/G5BYWepe4M9m08kvua3XfwZrWVNtbuh1Ys2KqRpzKN/kp/MU6ypV3IThcB0ON/BcDOfrLUulhdvWAEjiD9AzLRHroOX8KEYGkMC/vY2/UVkA34eH2d0Vg0JhlWBCUAJkxx3aLiikntMtt/X0RaiJ8n9ogGvL To: libcamera-devel@lists.libcamera.org Subject: [libcamera-devel] [PATCH v3 0/5] Introduce UVC hotplugging support X-BeenThere: libcamera-devel@lists.libcamera.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 21 May 2020 13:54:27 -0000 Hi all, This version addressed the reviews flowed in for v2 with few more documentation fixes and self-explanatory commit messages. This patch series also adds couple of todos to the codebase. I am hoping that we can land this initial version and address those todos separately as we go along. I prefer to own this patch series' functional area hence, I will try to squash those todos along moving forwards. Please advise if there is something wrong with that. Umang Jain (5): libcamera: camera_manager: Refactor device enumeration into separate function libcamera: device_enumerator: Emit a signal when a new devices are added libcamera: camera_manager: Introduce signals when a camera is added/removed qcam: main_window: Introduce initial hotplug support tests: Introduce hotplug hot-unplug unit test include/libcamera/camera_manager.h | 6 +- .../libcamera/internal/device_enumerator.h | 4 + src/libcamera/camera_manager.cpp | 55 +++++-- src/libcamera/device_enumerator.cpp | 13 ++ src/libcamera/pipeline_handler.cpp | 2 +- src/qcam/main_window.cpp | 83 ++++++++++ src/qcam/main_window.h | 6 + test/hotplug-cameras.cpp | 153 ++++++++++++++++++ test/meson.build | 1 + 9 files changed, 312 insertions(+), 11 deletions(-) create mode 100644 test/hotplug-cameras.cpp