Received: by 2002:a25:8b91:0:0:0:0:0 with SMTP id j17csp522495ybl; Tue, 28 Jan 2020 07:16:38 -0800 (PST) X-Google-Smtp-Source: APXvYqzE+iv9TL655XoG03eoM5Ewa9f4RwLa0IwqGsnBH1+t5eJKVyIRG7eYdHqBbE8rd3oRIvOy X-Received: by 2002:a05:6830:155a:: with SMTP id l26mr17061084otp.339.1580224597881; Tue, 28 Jan 2020 07:16:37 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1580224597; cv=none; d=google.com; s=arc-20160816; b=V7EHGutpI/VrNxn7hV0/EcSQ0kGjhR2/Ih8OLxVeMMHtMOxZ1Odxzp8RfeFDnJCT/4 fQm35RiQNSwTjyIWrmM/y+OkLHEQtWKevd9OBxxpN/T7iFV4I3HGDH8YwXxGO3eBRp87 Ko0+58XwaT7ltjM1+nZgLdqyAFlx4kcgkmatbc+MuTu4wetEz1BAO7ju6mSwhlOK0r2t Ejo9tRwiHGwxNgkSCD6FepqPCv/PJ6tlSJ/DgwxFkdsZkAuv2mGDOs6QU25n/QhUERZV 4mwVlQNu6N2BA8WmPJ6lO1Rf4OyenHUqOOPIgZHN2YYTtTQwk3mLiE/FzbroFd3bjQ0F zcqA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :user-agent:message-id:in-reply-to:date:references:subject:cc:to :from; bh=mCncZzbpCzyGVzB2rieGflbdWmt8noKUvK7tWPyGmTU=; b=NhAGwZ4m/7iT1rxSVwCfOW8yvPkt9vRN13+kAQK0gl1rnZ8heIfRtyKl9XMZXZxtTr P4JYT5tWJR5jgBgwvy0OUqqgU0NbwN0v/ZFR+cH6Ho33LvVOMknWJX4a/kisoZdEBEV3 27tkPknWbFdqo/EZSfH3srsKwPCAy86kEnWNYxya50jglWfxGR94MohSurHB0kqvTGr4 lRSRVnob5ZkrB3S2TySDTAKxhHRlJ01o+hRqjxV1JvuXZfXiY4elL9HfuLAgAdl6YkSB CtMJGl/MULSorkre2TnRFvoBdqOFciDsREqWD9YVxgF5BFiu3UDifmVggayWSbcdn4k8 tcFQ== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id q202si658802oic.160.2020.01.28.07.16.23; Tue, 28 Jan 2020 07:16:37 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726442AbgA1PPN convert rfc822-to-8bit (ORCPT + 99 others); Tue, 28 Jan 2020 10:15:13 -0500 Received: from unicorn.mansr.com ([81.2.72.234]:39866 "EHLO unicorn.mansr.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726063AbgA1PPN (ORCPT ); Tue, 28 Jan 2020 10:15:13 -0500 Received: by unicorn.mansr.com (Postfix, from userid 51770) id 321851B0DA; Tue, 28 Jan 2020 15:15:11 +0000 (GMT) From: =?iso-8859-1?Q?M=E5ns_Rullg=E5rd?= To: Greg Kroah-Hartman Cc: Rob Herring , Mark Rutland , linux-usb@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org Subject: Re: [RESEND][PATCH 1/2] dt-bindings: usb: add non-removable-ports hub property References: <20200124152504.23411-1-mans@mansr.com> <20200127153506.GA4589@bogus> <20200128134745.GA3048749@kroah.com> Date: Tue, 28 Jan 2020 15:15:11 +0000 In-Reply-To: <20200128134745.GA3048749@kroah.com> (Greg Kroah-Hartman's message of "Tue, 28 Jan 2020 14:47:45 +0100") Message-ID: User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.3 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8BIT Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Greg Kroah-Hartman writes: > On Mon, Jan 27, 2020 at 04:56:15PM +0000, M?ns Rullg?rd wrote: >> Rob Herring writes: >> >> > On Fri, Jan 24, 2020 at 03:25:03PM +0000, Mans Rullgard wrote: >> >> Add a non-removable-ports property that lists the hardwired downstream >> >> ports of a hub. Although hubs can provide this information, they are >> >> not always configured correctly. An alternate means of indicating this >> >> for built-in USB devices is thus useful. >> >> >> >> Signed-off-by: Mans Rullgard >> > >> > I reviewed this already, but since you didn't add my reviewed-by, I'm >> > looking at it again and having 2nd thoughts. >> > >> >> --- >> >> Documentation/devicetree/bindings/usb/usb-device.txt | 4 ++++ >> >> 1 file changed, 4 insertions(+) >> >> >> >> diff --git a/Documentation/devicetree/bindings/usb/usb-device.txt b/Documentation/devicetree/bindings/usb/usb-device.txt >> >> index 036be172b1ae..92d863cc96b6 100644 >> >> --- a/Documentation/devicetree/bindings/usb/usb-device.txt >> >> +++ b/Documentation/devicetree/bindings/usb/usb-device.txt >> >> @@ -66,6 +66,10 @@ Required properties for host-controller nodes with device nodes: >> >> - #size-cells: shall be 0 >> >> >> >> >> >> +Optional properties for hub and host-controller nodes: >> >> +- non-removable-ports: list of hardwired downstream ports >> > >> > If you have a hardwired device and need to know that, doesn't that imply >> > there's some other stuff you need to describe beyond what a standard USB >> > device has. Such as a power supply that's not Vbus from the hub. >> >> I suppose there could be, but there isn't in my actual situation. >> >> > At a minimum, I think this should be a per port property. >> >> That's what I suggested first. Greg told me to do it like this instead. > > I said that? I do not remember discussing this at all, when did that > happen? https://lore.kernel.org/lkml/20190228155241.GC12050@kroah.com/ >> > Though really, I think this should just be implied by describing the >> > device in DT. I'm not sure if there's a case for hotpluggable devices >> > described in DT. Maybe with overlays. >> >> That's also an option. Greg, what do you think? > > I have no idea, sorry, I'm totally lost here... Background: I need to differentiate between on-board and external USB devices on a few boards. Although hubs can indicate the removable status of each port, the configuration options are often limited and may not be capable of describing the actual wiring. Also, if a device is hard-wired directly to a host port, there is no way of indicating this. While I could match the full device path using per-board lists, I'd prefer a generic solution. To this end, it is necessary to add the ability for DT to supply this information. Three variants have been discussed: 1. Add a "non-removable" property to the USB device node similar to how it's done for MMC. 2. Add a "non-removable-ports" property to the hub node. Apparently ACPI can supply the information in this manner. 3. Make any USB device with a DT node implicitly non-removable. Either one will work for me. -- M?ns Rullg?rd