Received: by 2002:a6b:fb09:0:0:0:0:0 with SMTP id h9csp782441iog; Fri, 24 Jun 2022 14:07:31 -0700 (PDT) X-Google-Smtp-Source: AGRyM1sYDLgnnbssVcrr1UJBx1yoqEDlbLG0HnA8qAYj1foSGNER/YRDy2zo2YVpH7gD/3/kwfrP X-Received: by 2002:a05:6a00:1a08:b0:510:a1db:1a91 with SMTP id g8-20020a056a001a0800b00510a1db1a91mr1032860pfv.69.1656104851502; Fri, 24 Jun 2022 14:07:31 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1656104851; cv=none; d=google.com; s=arc-20160816; b=uh8VxRvY91YVBM55OjWfjcKlfYiRwZ8FJ4dyt10ZSn7XatHcg2qDLr5b3purcuwIR9 h7prClGhokCF6q0EtFS3nsx4KgBlfrOTlosN/iAVnnvXzdL8PTXruemnah2f+cWTrQv7 27uB/AehyavlnByHM05OySJjDZ+o0+rJHyI2ZSo7NdwP8ftOp8k9iVLIwzMAPFwbBRqv BhTpjbD5dc5ExR/gjdsZOSNMYsEPGniG9KJ/kTNuPQ7Ag+Ha2kw3RJVfQdW6rwsaqUSS +nuofrNh3bjvisc8RWnX+bANavb85FXtXKG2NgXW/AWSPYxkArNsu78BNdX1GexHXXgR ntPg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :message-id:date:subject:cc:to:from:dkim-signature; bh=UIgY3FeoHMf+aDlAZ/zhoODzy0zddGpMaimt54u9oe0=; b=wgn8M11H3RMBvoL0J8o+Z8fAH6GwZ/OYymKbv+Nf3HFn+9YqDyCviQDZcIhtFLJE0y tbbuzatVxr6ZY/FWoLYV7FgGCIYDKv65DSIXKSP03/mfjAEFrwiS7/3weiS5LxE1jaHR 0RQVrTKZHk2XoaymAJErjiAoz/OmGOfsGHavkjRiGhKefzMDY+Gy4D3VIF4Oa9F8XLhS jFr046E4cfzw7JxxDqfuqQ57LtGJOLqoNg8dV4iAgXyTWUG/4IGAGfvmHgI7KhvyC1GE dwkQ05Ikb/8SL2jJtvCbeF7o4N6ChIDA2RUtNT6/g03hK21l/t3/Cc0op+8Qhd0X4L3l FJHQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20210112 header.b="cB6/aNC0"; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id j2-20020a17090adc8200b001ed1fde749fsi3855218pjv.92.2022.06.24.14.07.18; Fri, 24 Jun 2022 14:07:31 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@gmail.com header.s=20210112 header.b="cB6/aNC0"; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230402AbiFXU6P (ORCPT + 99 others); Fri, 24 Jun 2022 16:58:15 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:60188 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230232AbiFXU6O (ORCPT ); Fri, 24 Jun 2022 16:58:14 -0400 Received: from mail-ej1-x62a.google.com (mail-ej1-x62a.google.com [IPv6:2a00:1450:4864:20::62a]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id C36D31A3BB; Fri, 24 Jun 2022 13:58:09 -0700 (PDT) Received: by mail-ej1-x62a.google.com with SMTP id t5so7115678eje.1; Fri, 24 Jun 2022 13:58:09 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=UIgY3FeoHMf+aDlAZ/zhoODzy0zddGpMaimt54u9oe0=; b=cB6/aNC07c5ZUrnCKh6xVfURtO23mkpV1NWKPLkDa0FncdfL9QMGLTdG+szuj+f+04 6n10dcl14mMvmJwBuVGsTHS45SsA9JLiVQuiQ9z54LCYf67P2MVBV4wYpH1r9BTJR1yY oiXuyzP9zi09Jqr9yNzxTDmOkJwkq9UU0Zu8EDW7NWF5Eg42Pjaizgo4vj7biykQsUfB 5OaJr98VDUCGKp1777Bqk1a6V/ppakGoCG8FZZ29c1kaDACSyuXhY5DR0QCUfZEbqtCh o7fwEdBHMeYN9JZ7mwEaVJbJXFZABEcTopAWCKOCwoZ2yri/oHvo52S3hSHFa6iBUdx/ DPfQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=UIgY3FeoHMf+aDlAZ/zhoODzy0zddGpMaimt54u9oe0=; b=Imogtfjt42jyLC3hlGLAddjTtMleWRaZtgGvYxJUwjYgDQMfOxFUCfXwXX3iM9s9wS 0xz8Fn+zvc6oUPW9s5mrHFZz0kmrhUAmsK76e9G4Kx/AFhBl/IHpbkkyzLpeqj0Seta2 31M2F3yeSE+rmVlt2lo2f2NXJKPP355yPnIl6427fbBnYEkjqg20rChGpVTylO79Hb7r 1YYzrvGYDIv0ppdfbRfLstdRir9p50rQqDqjOZi8qfLwsLgmJrNEojer4BsmgcqyZqcV AsxAbCNz0nhSCDXATffMKxD2HmAUvt+JHj7o2zpGCD4IxSpd9Czwsf+1+qE9nMNSI9JP EOEA== X-Gm-Message-State: AJIora8uJ10H4sDoja45ZSTrg5PDm92frzncwC2O9KRe9JwnL8OickNs gYBx54QXWoJECT3u/T5oA44= X-Received: by 2002:a17:906:14d:b0:711:ff36:b1af with SMTP id 13-20020a170906014d00b00711ff36b1afmr928612ejh.422.1656104287800; Fri, 24 Jun 2022 13:58:07 -0700 (PDT) Received: from xws.localdomain ([37.120.217.162]) by smtp.gmail.com with ESMTPSA id i5-20020a1709061e4500b006feb6dee4absm1672666ejj.137.2022.06.24.13.58.06 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 24 Jun 2022 13:58:07 -0700 (PDT) From: Maximilian Luz To: Hans de Goede Cc: Mark Gross , platform-driver-x86@vger.kernel.org, linux-kernel@vger.kernel.org, Maximilian Luz Subject: [PATCH 0/3] platform/surface: Move Surface Aggregator client hubs to their own modules Date: Fri, 24 Jun 2022 22:57:57 +0200 Message-Id: <20220624205800.1355621-1-luzmaximilian@gmail.com> X-Mailer: git-send-email 2.36.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Status: No, score=-2.1 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,FREEMAIL_FROM, RCVD_IN_DNSWL_NONE,SPF_HELO_NONE,SPF_PASS,T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org This series moves the Surface Aggregator client device hubs from the Surface Aggregator registry to their own modules. While, at the moment, client device hubs are exclusively instantiated by the registry platform hub driver, this will change in the future. In particular, with the introduction of DT/OF support, which is required for the Surface Pro X. Therefore, this series also slightly restructures the functions used for software-node-based device instantiation, essentially acting as preparation for that. In addition, this series follows-up "platform/surface: aggregator: Add support for client hot-removal" and further removes some code duplication by consolidating more parts of the hub drivers. While at it, also ensure proper handling of firmware node lifetimes and update the copyright year of various files. Maximilian Luz (3): platform/surface: aggregator: Move device registry helper functions to core module platform/surface: aggregator: Move subsystem hub drivers to their own module platform/surface: Update copyright year of various drivers MAINTAINERS | 6 + drivers/platform/surface/Kconfig | 35 +- drivers/platform/surface/Makefile | 1 + drivers/platform/surface/aggregator/Kconfig | 2 +- drivers/platform/surface/aggregator/Makefile | 2 +- drivers/platform/surface/aggregator/bus.c | 151 +++++- drivers/platform/surface/aggregator/bus.h | 2 +- .../platform/surface/aggregator/controller.c | 2 +- .../platform/surface/aggregator/controller.h | 2 +- drivers/platform/surface/aggregator/core.c | 2 +- .../platform/surface/aggregator/ssh_msgb.h | 2 +- .../surface/aggregator/ssh_packet_layer.c | 2 +- .../surface/aggregator/ssh_packet_layer.h | 2 +- .../platform/surface/aggregator/ssh_parser.c | 2 +- .../platform/surface/aggregator/ssh_parser.h | 2 +- .../surface/aggregator/ssh_request_layer.c | 2 +- .../surface/aggregator/ssh_request_layer.h | 2 +- drivers/platform/surface/aggregator/trace.h | 2 +- .../platform/surface/surface_acpi_notify.c | 2 +- .../surface/surface_aggregator_cdev.c | 2 +- .../platform/surface/surface_aggregator_hub.c | 371 +++++++++++++++ .../surface/surface_aggregator_registry.c | 446 +----------------- drivers/platform/surface/surface_dtx.c | 2 +- drivers/platform/surface/surface_gpe.c | 2 +- drivers/platform/surface/surface_hotplug.c | 2 +- .../surface/surface_platform_profile.c | 2 +- include/linux/surface_aggregator/device.h | 52 ++ 27 files changed, 618 insertions(+), 484 deletions(-) create mode 100644 drivers/platform/surface/surface_aggregator_hub.c -- 2.36.1