Received: by 2002:a05:7412:b101:b0:e2:908c:2ebd with SMTP id az1csp2822714rdb; Wed, 15 Nov 2023 11:29:00 -0800 (PST) X-Google-Smtp-Source: AGHT+IFoCx1kxT+U3ZgqDGAI4PEjI671na48PMhJK/axBuECjnpY3W+gvpX42xCMxgallIAe24vJ X-Received: by 2002:a17:902:74c1:b0:1cc:6906:c016 with SMTP id f1-20020a17090274c100b001cc6906c016mr98672plt.9.1700076539725; Wed, 15 Nov 2023 11:28:59 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1700076539; cv=none; d=google.com; s=arc-20160816; b=RLZ5CddC0QH8vok1DAZ6wU4t+qZhuCmMzii3haU9UZunokwhdp30l7/dkQmbE0rep9 oqccd5evR8sfQ2+Y8ao/7GgaHG2w2P4/R/tPTyvusOadR51g5l0d6+xP9G8PvoGrtM3t K//Q6tQeSjK1cIMnEAkSN6haBG4yBLDXOxveSS33P6wp2SWl0WZxMZ3oFAgWVguDqyN1 AXflQNBXYSrEopiZCkNqs0AbCN4y697tC45a3aTMNRvex5ylhBEHk46y84i9nToNsezN tvObwCBKmLbCam6t0LWC6Rrtl3ob5bO3T0FMEhSkGfsmk/fd9jVhZMs+LsLOK0x2vHT3 fjzw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:cc:to:subject :message-id:date:from:in-reply-to:references:mime-version :dkim-signature; bh=6X29YxgOJSekJMMYnxMuAiE4h71bPpKLkyOGCG+ZdDw=; fh=N6Xuj766RQ+hgF9lX9Xz6dqqxKu+qiVqlcICCRj0KlU=; b=OsMPhuBPCfrodaYEwe+AJge6SXmEnlrRkCg4l1YVOgbCMKlZXeI5e9ppCPb9WBz6e/ O4Ys+S+QI+3Uz8oxWqQ42eX4EbyOQNKsdQGQ2AbusYa2JKSewSigXoLXMc1VxXQfDFWf rxtA/FKkVEmpWkw9zvU63dinLvVtVE/5BqFeqjPmnb7BB3ijA1jZNy+8rrAcI0ayZh3u sxZH6PC9toLIvbFHU5O6C9WKZ11cvxzYoJ1RFMlPdxF69FFe1cXB1RTBSh9bl92Fzl3B AKJQet+3UjWZGrGi6hSJSHUgrGKK7hufa4T022Az0KC+DEYvteVJJwNmKm6K9JSShVaK goJw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=k20201202 header.b=Or31r+GD; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:8 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Return-Path: Received: from fry.vger.email (fry.vger.email. [2620:137:e000::3:8]) by mx.google.com with ESMTPS id e1-20020a170902b78100b001cc67fd5170si9842012pls.638.2023.11.15.11.28.59 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 15 Nov 2023 11:28:59 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:8 as permitted sender) client-ip=2620:137:e000::3:8; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=k20201202 header.b=Or31r+GD; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:8 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: from out1.vger.email (depot.vger.email [IPv6:2620:137:e000::3:0]) by fry.vger.email (Postfix) with ESMTP id EB7CC80A1E14; Wed, 15 Nov 2023 11:28:53 -0800 (PST) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.11 at fry.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S233866AbjKOT2b (ORCPT + 99 others); Wed, 15 Nov 2023 14:28:31 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:51744 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S233646AbjKOT2a (ORCPT ); Wed, 15 Nov 2023 14:28:30 -0500 Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 859559E for ; Wed, 15 Nov 2023 11:28:27 -0800 (PST) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 323DFC433CB; Wed, 15 Nov 2023 19:28:27 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1700076507; bh=6X29YxgOJSekJMMYnxMuAiE4h71bPpKLkyOGCG+ZdDw=; h=References:In-Reply-To:From:Date:Subject:To:Cc:From; b=Or31r+GDQxBg0Kl8952bupTT20NKuDwPAAhds0bRUOCSZpFXveuXNiRPeMF9U4ZFC AvZlT63J2FDw7+KmeblxmRPR4g5Vzt0k5NC4KfM41F7s7MjmEPfuSQ+P4J7ydI9oVD RJiksoxrLz7lCCBhDKMXsqog4bhDw0xNI9zPLaN1G/e6lKLuBptX7qINXIZDokxuWt WplEtsGC5+kLHE64Dvk+Anp0N+yInACzDd1UP7BuR52jRkPU6rnnE3t9i9qMr9smHu 4SU5hizO3uCkiFzud6h13enoHxr6HU1OvKZM8mdcDPdJqWAWQU2dfZcIq3tmPAasfy JwiL2+5acw0qg== Received: by mail-lf1-f53.google.com with SMTP id 2adb3069b0e04-507adc3381cso9569949e87.3; Wed, 15 Nov 2023 11:28:27 -0800 (PST) X-Gm-Message-State: AOJu0YxYLkeGNB1MwJsOGObG0WBrmDTdIlugbfB7vOm83DeDvdDJBPDE 3A1MpMmL6gLNGveBIzHLZql28/I95G9499v3Wg== X-Received: by 2002:ac2:54b9:0:b0:500:d4d9:25b5 with SMTP id w25-20020ac254b9000000b00500d4d925b5mr9071774lfk.56.1700076505201; Wed, 15 Nov 2023 11:28:25 -0800 (PST) MIME-Version: 1.0 References: <20231109100606.1245545-1-wenst@chromium.org> <859ac058-c50a-4eb8-99b6-3011ef4e7529@collabora.com> In-Reply-To: From: Rob Herring Date: Wed, 15 Nov 2023 13:28:12 -0600 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: [RFC PATCH v2 0/7] of: Introduce hardware prober driver To: Doug Anderson Cc: AngeloGioacchino Del Regno , Chen-Yu Tsai , Frank Rowand , Krzysztof Kozlowski , Conor Dooley , Matthias Brugger , Hsin-Yi Wang , Dmitry Torokhov , andriy.shevchenko@linux.intel.com, Jiri Kosina , linus.walleij@linaro.org, broonie@kernel.org, gregkh@linuxfoundation.org, hdegoede@redhat.com, james.clark@arm.com, james@equiv.tech, keescook@chromium.org, petr.tesarik.ext@huawei.com, rafael@kernel.org, tglx@linutronix.de, Jeff LaBundy , linux-input@vger.kernel.org, devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-mediatek@lists.infradead.org, linux-kernel@vger.kernel.org, Johan Hovold Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Spam-Status: No, score=-1.3 required=5.0 tests=DKIMWL_WL_HIGH,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,MAILING_LIST_MULTI, SPF_HELO_NONE,SPF_PASS,T_SCC_BODY_TEXT_LINE autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on fry.vger.email Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.6.4 (fry.vger.email [0.0.0.0]); Wed, 15 Nov 2023 11:28:54 -0800 (PST) On Fri, Nov 10, 2023 at 6:12=E2=80=AFPM Doug Anderson wrote: > > Hi, > > On Thu, Nov 9, 2023 at 5:52=E2=80=AFAM Rob Herring w= rote: > > > > > > End of background from Doug's cover letter. > > > > > > I think that using "status" is not a good idea, I find that confusing= . > > > > "status" is what defines a device's state in terms of enabled, > > present, available. That's exactly what we're expressing here. > > > > Now, I do not think we should be mixing the device class (e.g. > > touchscreen) into status. I said this on v1, but apparently that was > > not listened to. > > Interesting. I must have missed the "don't mix device class into > status" part. Do you have a link to your post about that? Maybe > there's other stuff I missed... Having the device class stuck at the > end there was at least part of my last post [1] which gathered no > response. https://lore.kernel.org/all/CAL_JsqKK0tjeXNv=3Da8L3k0AjhCa15XOq1tPWqVod9myc= sKXJHg@mail.gmail.com/ "I would not combine the 2 things. Knowing the class/type of the device may be useful independent of your problem." > I think one of the reasons that I felt we needed to mux the device > class into status was that it was going to make the code a lot less > fragile. Everything I've seen indicates that you don't want us to > create a "HW prober" node that could be used to provide relevant > phandles for different classes of devices, so the "HW prober" code > needs to either search through the whole device tree for a status of > "failed-needs-probe" or needs to contain per-board, hardcoded, > fully-qualified paths. > > I don't think we want to include hardcoded, fully-qualified paths in > the code. That would mean that if someone changed a node name > somewhere in the path to one of the devices that we're dealing with > then it would break. Right, nothing should depend on the full path. That's not an ABI just like the device path in sysfs is not (despite what Android HALs do). > So if we're searching the whole device tree for "failed-needs-probe" > then we need to figure out which devices are related to each other. If > a given board has second sources for MIPI panels, touchscreens, and > trackpads then we need to know which of the "failed-needs-probe" > devices are trackpads, which are touchscreens, and which are MIPI > panels. Do you have any suggestions for how we should do that? Maybe > it was in some other thread that I missed? I guess we could have a > board-specific table mapping (compatible + node name + reg) to a > class, but that feels awkward. Node name is supposed to correspond to device class, so why not use that (no path or unit-address.) and nothing else (well, besides "status")? Rob