Received: by 2002:ac0:bc90:0:0:0:0:0 with SMTP id a16csp3418123img; Mon, 25 Mar 2019 09:52:59 -0700 (PDT) X-Google-Smtp-Source: APXvYqxRpdkysR9U2L1snNdEFUodJ4miaWDhi4Pco9BjMH7Jl2+W3Pmzjubs/sN95Gt3+CbFfCo0 X-Received: by 2002:a62:1197:: with SMTP id 23mr24830458pfr.210.1553532779293; Mon, 25 Mar 2019 09:52:59 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1553532779; cv=none; d=google.com; s=arc-20160816; b=tgIv/2kkCBycBzh5gp7JZqGl0COv1QlrzQcVmtR5jGArAAl/8ekpQ76Rr5SC9vvSIT 3Mgxsk6gybGeHqjO28VNf1ow1Z3JloJnIiSTCuJDqIZgJW58gemvofb70FVMIbHK0Lg3 miThv5zftP+MTprKGNL6U5LsFL7yHCNg40PwQfF7+YfomzdEEkGQOh8JPn7CIfS1dzeE CtOYGH/WLCiStCf4dH8EbnhjanVYoLW2m4+8aoEi6BWf6RJvpyXWr+vY6QuwHqttJnTZ vneLYO29bPGzeJBkjDdWIS/z8xBYPCTbUdpoiFgGFlw6F4fUXaQcnjqyUAdlF1ssyV8f q6mQ== 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 :content-language:in-reply-to:mime-version:user-agent:date :message-id:from:references:cc:to:subject; bh=SPzhVISKwjy5Snd+c6K3Nz+7MYJlsJ7OqKAkmCqlS74=; b=mX//IlgwitZ/VNdacj3Bk/XtLf5UuXl1nUEEljjzQ9QaTs3ZrqMdbinSM4fpdj/OGq WnjdWjfb8UkTKXHQT+15jhid4KbKqAQQ7hy5MaGXdl4wD0nc9u9GjQmVfBGeKqqomesZ VKmxD9MjEVyZOoiB6KCe3k/Fp91tIKdzOvlBpWt32jkyZpBWESNhqKeKUHBNFJ2Pv6eu cPz9r9Gtb/3JR4UZnXwf6Ezft2v8b03E1nGu9RenV7uYCq5ftvjMVGT4w3yTHw80AVtT 5CiS+3FNglwVtOhzgiyzXhZCRHgrtQUFv4BRr1sz8LCPtgBxHB0KWx1DGNV28YREbnFi z92w== 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; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=codethink.co.uk Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id v4si10883509pgj.138.2019.03.25.09.52.44; Mon, 25 Mar 2019 09:52:59 -0700 (PDT) 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; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=codethink.co.uk Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1729493AbfCYQwJ (ORCPT + 99 others); Mon, 25 Mar 2019 12:52:09 -0400 Received: from imap1.codethink.co.uk ([176.9.8.82]:38094 "EHLO imap1.codethink.co.uk" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1725788AbfCYQwJ (ORCPT ); Mon, 25 Mar 2019 12:52:09 -0400 Received: from [167.98.27.226] (helo=[10.35.5.150]) by imap1.codethink.co.uk with esmtpsa (Exim 4.84_2 #1 (Debian)) id 1h8SpS-0000O4-KH; Mon, 25 Mar 2019 16:52:06 +0000 Subject: Re: [PATCH v2] Documentation: acpi: Add an example for PRP0001 To: Andy Shevchenko Cc: rjw@rjwysocki.net, lenb@kernel.org, linux-acpi@vger.kernel.org, linux-kernel@vger.kernel.org, mika.westerberg@linux.intel.com References: <20190325151210.23226-1-thomas.preston@codethink.co.uk> <20190325153032.GG9224@smile.fi.intel.com> <3ae33d42-1175-bdbe-036b-1df5edc6a802@codethink.co.uk> <20190325163423.GJ9224@smile.fi.intel.com> From: Thomas Preston Message-ID: <2ccd44f4-5f5b-60db-d002-3f33dfcdd321@codethink.co.uk> Date: Mon, 25 Mar 2019 16:52:05 +0000 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.5.1 MIME-Version: 1.0 In-Reply-To: <20190325163423.GJ9224@smile.fi.intel.com> Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: en-GB Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 25/03/2019 16:34, Andy Shevchenko wrote: > On Mon, Mar 25, 2019 at 03:58:13PM +0000, Thomas Preston wrote: >> On 25/03/2019 15:30, Andy Shevchenko wrote: >>> On Mon, Mar 25, 2019 at 03:12:10PM +0000, Thomas Preston wrote: >>>> Add an example for the magic PRP0001 device ID which allows matching >>>> ACPI devices against drivers using OF Device Tree compatible property. >>> >>>> It wasn't clear to me that PRP0001 could be used in _CID. >>> >>> Yes, but it's not necessary to have it if we have defined a _HID. >>> >>> In that case PRP0001 is a temporary stub until corresponding driver >>> incorporates an official _HID. >>> >>> On the contrary, when there is no official _HID available, PRP0001 can be used >>> instead directly as a _HID and no _CID is needed. >>> >> >> In that case, how do we uniquely identify devices in sysfs? > > By their class, etc. > > Identifying devices based in instance name is bad idea to start with. > >> We have a >> case where sound/soc/soc-core.c generates an i2c codec name i2c-TDA7802:00. >> It is useful to identify that device by part name, rather than some indexed >> generic PRP device i2c-PRP0001:04. I can achieve this with: > > If TDA7802 is *official* _HID dedicated for that codec by vendor, add it to the > driver... > >> _HID("TDA7802") > >> _CID("PRP0001") >> ... >> compatible = "st,tda7802" // driver I want to load using OF DT > > ...and these lines become unneeded. > > The only case when both are needed is a time between one gets a case and actual > ID appears in the upstream driver. Effectively means product developing stage. > > P.S. Yes, I know that sometimes the platform/BIOS vendors abuse specification > and ACPI ID registry and made up IDs, in that case we need to support them as a > "de facto" quirks. > > And yes, ASoC subsystem in ACPI case abuses Linux device hierarchy by matching > by instance instead of matching by let say fwnode. It should be fixed there, > not in ACPI table. > Okay this is all really useful information. Thank you. >> >>> I would really recommend to look at the examples in meta-acpi repository. There >>> are cases like described above. >>> >>> This one is good enough, though see below. >>> >> >> I will drop the superfluous _CID - I think the example is still useful >> to have. Even if we don't illustrate my special case for _HID/_CID. > > Yes, I agree with that. > I will remove _CID weirdness, and resend. I will deal with my special case elsewhere. Thanks again