Received: by 2002:a05:7412:8521:b0:e2:908c:2ebd with SMTP id t33csp1174539rdf; Sat, 4 Nov 2023 09:07:48 -0700 (PDT) X-Google-Smtp-Source: AGHT+IHjwEEX1sGPtAqF4g0Qr3RHqYcKDKUa98Gl0r0djw5zJomrxhcWqd/tmdgeqBIKXsvy690L X-Received: by 2002:a05:6e02:156a:b0:357:9f55:ec41 with SMTP id k10-20020a056e02156a00b003579f55ec41mr30310656ilu.31.1699114068587; Sat, 04 Nov 2023 09:07:48 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1699114068; cv=none; d=google.com; s=arc-20160816; b=IZce9rLnxd2zbawvrYXBRUetkoti8RHHs/ipbZFeAns4BaHhAg+KIu9saHXBxq2MJP 4dMzp2zIoJXEiKWub9t5uqn/ljds4oieq+OqUQvniJKv0oFgqKsRsrcf0b4hbtLSSw8P 27aOVuI0i4rTI+7aeswwEfdoX4gr++6lrZaEQTcWGv/8d0u/m5lckw6+8hJJ4LsSVp97 Xg7W5Lz9uM0HnEWKJgLE5WxrQJKmoI9NriShjt0J4NN45XBXNV9JRdG1cDhR4CqJqX8c tank2PLVQcNwRBvXwsy2IhbyRrqFonDzouR9SK3M/KZ+rtXdJ9MQem7b8Fsr6/CH4E6f Weuw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:in-reply-to:content-disposition:mime-version :references:message-id:subject:cc:to:from:date:sender:dkim-signature; bh=mIrZkNLfFQmJrTMlm06l8GQfR/oHbKA4CpRXcFL+3h8=; fh=lL3bM48457N2iC1us4e/dfVdauCFSpWgALvfTER9Wx4=; b=rPxjeBbBkcMKeEavKT5MOcu5IkDscmeqhU0nJgWZPxUuWn9TezHeXXbOglqzQp+QAr jFY9krj5Co+VWEpS5flR/4CocLZyYyjQsy6Vyw36ZJ0Y1Fgau4/AG3Ezht8bUwXAnYJG Djnhnti4HlxL+qL7AU+91JusdcyfE6dW8js2FEMGTx2YhxPkV8vDySs29e4zKL1QjmeH nUfK9m3uJfjDONhFkncT0VoTdsYW+3gV0DksE+CXrEOJ8wNTc+1Bhy6TJk3Y56cjhZCl TTyNx6BUaKpp+r9lnSI5mhYdKvkCFgVUAwyblUsp9vdkTSLL40t0BPnUAx3T/QVHuNIf uxfQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@equiv.tech header.s=mx header.b="XaYWc/ge"; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.38 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=equiv.tech Return-Path: Received: from fry.vger.email (fry.vger.email. [23.128.96.38]) by mx.google.com with ESMTPS id s201-20020a632cd2000000b005b21d089aabsi3651237pgs.519.2023.11.04.09.07.47 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 04 Nov 2023 09:07:48 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.38 as permitted sender) client-ip=23.128.96.38; Authentication-Results: mx.google.com; dkim=pass header.i=@equiv.tech header.s=mx header.b="XaYWc/ge"; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.38 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=equiv.tech Received: from out1.vger.email (depot.vger.email [IPv6:2620:137:e000::3:0]) by fry.vger.email (Postfix) with ESMTP id 843D880937B5; Sat, 4 Nov 2023 09:07:45 -0700 (PDT) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.10 at fry.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230461AbjKDQHg (ORCPT + 99 others); Sat, 4 Nov 2023 12:07:36 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:60874 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229491AbjKDQHd (ORCPT ); Sat, 4 Nov 2023 12:07:33 -0400 Received: from rs227.mailgun.us (rs227.mailgun.us [209.61.151.227]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id B6D9819D for ; Sat, 4 Nov 2023 09:07:29 -0700 (PDT) DKIM-Signature: a=rsa-sha256; v=1; c=relaxed/relaxed; d=equiv.tech; q=dns/txt; s=mx; t=1699114045; x=1699121245; h=In-Reply-To: Content-Type: MIME-Version: References: Message-ID: Subject: Subject: Cc: To: To: From: From: Date: Sender: Sender; bh=mIrZkNLfFQmJrTMlm06l8GQfR/oHbKA4CpRXcFL+3h8=; b=XaYWc/ge1C4usMfgvX+x+elx3Jk7bi4oHSVs/yd//nhLGsxr2YNo8qB6edec13W6dHiK8ziI5Ba1kIfOtOf5AZn3ZZQ0MmeuHIjT55ViLVbz6i+8QIBxxg1inIavAUz9PrueEhM0gPaBXKnYTCFv563GHEKnz02TdjoaiGV8UX6oUjyomc+GL+Kq9Itnl7gncHP6Rz8kLxrSdwc2c/VOBt4HG1uiov5ZQsdPz3aFJsEespRj/2GFHHi2PPivzSezxVt/UJuYYeFftrWcaA3SAnay6zSpsX3PMB/PBmwR0qDfBWc6rSN3zpt6IY8XmpH476Ff+z84Faj/E9U9k2DTQw== X-Mailgun-Sending-Ip: 209.61.151.227 X-Mailgun-Sid: WyI4ZWI3MiIsImxpbnV4LWtlcm5lbEB2Z2VyLmtlcm5lbC5vcmciLCI5M2Q1YWIiXQ== Received: from mail.equiv.tech (equiv.tech [142.93.28.83]) by fd04f8955ffa with SMTP id 65466c3d647274ac901a5fe3 (version=TLS1.2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256); Sat, 04 Nov 2023 16:07:25 GMT Sender: james@equiv.tech Date: Sat, 4 Nov 2023 09:07:24 -0700 From: James Seo To: Guenter Roeck Cc: Jean Delvare , Lukasz Stelmach , Armin Wolf , linux-hwmon@vger.kernel.org, linux-kernel@vger.kernel.org Subject: Re: [RFC] hwmon: (hp-wmi-sensors) Fix failure to load on EliteDesk 800 G6 Message-ID: References: <20231103181931.677796-1-james@equiv.tech> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline In-Reply-To: X-Spam-Status: No, score=-0.9 required=5.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI, SPF_HELO_NONE,SPF_PASS,T_SCC_BODY_TEXT_LINE,URIBL_BLOCKED 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]); Sat, 04 Nov 2023 09:07:45 -0700 (PDT) On Fri, Nov 03, 2023 at 12:36:49PM -0700, Guenter Roeck wrote: > On 11/3/23 11:19, James Seo wrote: >> +static bool is_raw_wmi_string(const acpi_object_type property_map[], int prop) >> +{ >> + const char *board_name; >> + >> + if (property_map != hp_wmi_platform_events_property_map || >> + prop != HP_WMI_PLATFORM_EVENTS_PROPERTY_NAME) >> + return false; >> + >> + board_name = dmi_get_system_info(DMI_BOARD_NAME); >> + if (!board_name) >> + return false; >> + >> + return !strcmp(board_name, HP_WMI_BOARD_NAME_ELITEDESK_800_G6); > > Would it be possible to use a dmi table and dmi_check_system() ? > That would make it easier to add more platforms later on if needed. > > Thanks, > Guenter > Hi Guenter, Sure, I can do something like this: #define HP_WMI_WSTR_INFO(name, wids) { \ .matches = { \ DMI_EXACT_MATCH(DMI_BOARD_VENDOR, "Hewlett-Packard"), \ DMI_EXACT_MATCH(DMI_BOARD_NAME, (name)), \ }, \ .driver_data = (void *)(wids), \ } struct hp_wmi_wstr_id { const acpi_object_type *property_map; int prop; }; static const struct hp_wmi_wstr_id elitedesk_800_g6_wstr_ids[] = { { .property_map = hp_wmi_platform_events_property_map, .prop = HP_WMI_PLATFORM_EVENTS_PROPERTY_NAME, }, { }, }; static const struct dmi_system_id hp_wmi_dmi_wstr_table[] = { HP_WMI_WSTR_INFO("870C", elitedesk_800_g6_wstr_ids), { }, }; static bool is_raw_wmi_string(const acpi_object_type property_map[], int prop) { const struct hp_wmi_wstr_id *wstr_id; const struct dmi_system_id *id; id = dmi_first_match(hp_wmi_dmi_wstr_table); if (!id) return false; wstr_id = id->driver_data; for (; wstr_id->property_map; wstr_id++) if (property_map == wstr_id->property_map && prop == wstr_id->prop) return true; return false; } Out of curiosity, how would you feel about just adding full raw WMI string support now? It wouldn't take much more work and for various small reasons it's starting to look like a better idea to me. James