Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751777AbdIAJTN (ORCPT ); Fri, 1 Sep 2017 05:19:13 -0400 Received: from mga14.intel.com ([192.55.52.115]:1565 "EHLO mga14.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751720AbdIAJTK (ORCPT ); Fri, 1 Sep 2017 05:19:10 -0400 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.41,457,1498546800"; d="scan'208";a="1168191119" Date: Fri, 1 Sep 2017 12:19:04 +0300 From: Mika Westerberg To: Andy Shevchenko Cc: Hans de Goede , "Rafael J. Wysocki" , Darren Hart , Andy Shevchenko , Platform Driver , "linux-kernel@vger.kernel.org" , "linux-acpi@vger.kernel.org" Subject: Re: [PATCH] platform/x86: intel_cht_int33fe: Work around BIOS bug on some devices Message-ID: <20170901091904.GV2598@lahna.fi.intel.com> References: <20170814201425.20991-1-hdegoede@redhat.com> <06a1d48c-9f75-4aab-107d-f71ce8ebbb26@redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: Organization: Intel Finland Oy - BIC 0357606-4 - Westendinkatu 7, 02160 Espoo User-Agent: Mutt/1.8.3 (2017-05-23) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1674 Lines: 43 On Thu, Aug 31, 2017 at 07:04:46PM +0300, Andy Shevchenko wrote: > On Mon, Aug 14, 2017 at 11:52 PM, Hans de Goede wrote: > > On 14-08-17 22:45, Andy Shevchenko wrote: > >> On Mon, Aug 14, 2017 at 11:14 PM, Hans de Goede > >> wrote: > > >>> +int cht_int33fe_check_for_max17047(struct device *dev, void *data) > >>> +{ > >>> + const char *name = dev_name(dev); > >>> + struct i2c_client **max17047 = data; > >>> + > >>> + if (name && strcmp(name, "i2c-MAX17047:00") == 0) { > >> > >> > >> Can we stop using bad practice of comparing against _instance_? > >> If device is suppose to be single in the system, wouldn't _HID be enough? > > > Yes _HID would be enough, but that takes some extra code with little > > gain IMHO, we are effectively checking the HID here as that is where > > the device-name comes from. > > > > Anyways if you strongly prefer a HID check I can do a v2 doing that > > either way let me know. > > Currently we have the following modules where ACPI instance is used in: > > drivers/acpi/acpi_lpss.c > drivers/input/touchscreen/goodix.c > drivers/platform/x86/silead_dmi.c > drivers/power/supply/axp288_charger.c > > and plenty under sound/soc/intel. > > I do not care right now about sound/soc/intel stuff, while everywhere > else would be better to avoid this. > > Mika, Rafael, what're yours opinions regarding to use ACPI instances > in the drivers? Since the instance name is generated by the ACPI core and in theory could change, I agree this is pretty fragile. Using _HID/_UID should be the preferred way. However, it is not always possible so we end up doing hacks like this.