Received: by 2002:a05:7412:b995:b0:f9:9502:5bb8 with SMTP id it21csp349758rdb; Thu, 21 Dec 2023 10:51:55 -0800 (PST) X-Google-Smtp-Source: AGHT+IF7vQdeLB7cExw7AHYsweP8ftb8GYUTqMZXyzpae20DDL7XbaVPm1mfVc3h5nWKVwxrxW6S X-Received: by 2002:a17:902:7787:b0:1d3:45b7:bc11 with SMTP id o7-20020a170902778700b001d345b7bc11mr71384pll.48.1703184715208; Thu, 21 Dec 2023 10:51:55 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1703184715; cv=none; d=google.com; s=arc-20160816; b=z53uoMWIXIx9olDv8QwfEr2qmPQsNzEyzycWsLAtUMtbtovPDfJbUQNfgabMzVyGI8 4TjNfvcE5luAw2bdWizpF8ZOKRiFDTCRVYGuwGAgWbAoV5a99dWW3Daw1dddVdaFsp0x DvuhBanQLNLlGW0oeUtBQru2qt/TbDxZCFMuVEC7wiIRIwvZH9Rve2GzAEd0sS0GPLqd XOWl/Ku1O/TaqKOMwwCFbuBK1O23lOCtPKPrGHZdbrIL4Wu4/uh2eVOy/44GWK0B4R0I wvFxUdLgtx81iIgccFISLH+8fIhguLntGEZ8n3rES5bhvMgRBugxMn1jEdK/BvvlkViG elIA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=content-transfer-encoding:mime-version:list-unsubscribe :list-subscribe:list-id:precedence:message-id:date:subject:cc:to :from:dkim-signature; bh=cTMwLfQA7I1tcp2MKhomeGoTKIOw/eHpzCKqi24ItnA=; fh=Xyj/mxkXy9KiSI3RKAV3RyVpKflz2Dge7KUcG6XMkUM=; b=Ydm+FYWB7tgcGkbkfmVLuq1fLqCyEyF5RURoFJqJ8QCu1GgM5vx5MFNZslB8n3oRck mZeY9RqZ+NMpE/LKtAfLHtdwdNenE1En31p17Z2zXyyu/iyW/ITlAaKexSHvyhXL9xpF 2+pn0bCLmJ5RSCW237N3DHNklJqboYJOXU+I80NFe7VGZHgcLTURe6PSm0KpFnQo+3Ec NS0+FiVE9Hnwk73SRMe9BH/TE83RGWLY4JxcbIKOPNzL0z2N066goHspwiH2EQH5xUU3 h3l9LgSFODalTqgchVR/OL39vcz0jZyvPVxQkAmiCLUHxDsvyrXJNtqsRHARkPApnB3H WtnA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20230601 header.b=RM3+xrwO; spf=pass (google.com: domain of linux-kernel+bounces-8956-linux.lists.archive=gmail.com@vger.kernel.org designates 139.178.88.99 as permitted sender) smtp.mailfrom="linux-kernel+bounces-8956-linux.lists.archive=gmail.com@vger.kernel.org"; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from sv.mirrors.kernel.org (sv.mirrors.kernel.org. [139.178.88.99]) by mx.google.com with ESMTPS id d6-20020a170902654600b001d3304a49cfsi1164996pln.496.2023.12.21.10.51.54 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 21 Dec 2023 10:51:55 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel+bounces-8956-linux.lists.archive=gmail.com@vger.kernel.org designates 139.178.88.99 as permitted sender) client-ip=139.178.88.99; Authentication-Results: mx.google.com; dkim=pass header.i=@gmail.com header.s=20230601 header.b=RM3+xrwO; spf=pass (google.com: domain of linux-kernel+bounces-8956-linux.lists.archive=gmail.com@vger.kernel.org designates 139.178.88.99 as permitted sender) smtp.mailfrom="linux-kernel+bounces-8956-linux.lists.archive=gmail.com@vger.kernel.org"; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: from smtp.subspace.kernel.org (wormhole.subspace.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by sv.mirrors.kernel.org (Postfix) with ESMTPS id D38EF282389 for ; Thu, 21 Dec 2023 18:51:54 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id B4D1364ABD; Thu, 21 Dec 2023 18:51:49 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="RM3+xrwO" X-Original-To: linux-kernel@vger.kernel.org Received: from mail-wm1-f54.google.com (mail-wm1-f54.google.com [209.85.128.54]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 74D124B13D for ; Thu, 21 Dec 2023 18:51:47 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Received: by mail-wm1-f54.google.com with SMTP id 5b1f17b1804b1-40c236624edso11456185e9.1 for ; Thu, 21 Dec 2023 10:51:47 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1703184706; x=1703789506; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=cTMwLfQA7I1tcp2MKhomeGoTKIOw/eHpzCKqi24ItnA=; b=RM3+xrwOGBTyfWLlkzfuoDTk6kng+4FLaErG8hUuJSC64/dR4P9r9lfj6YRQbDT/Ap N03+FRws3DnbTzT263LMG9f2Kd9rAdtetzwsOo/aL7sSBj+RllkErSLrHA4XeCimc7Ox L245EODLmO4NYcHqBfKo12JDXfKuZNcS99Eb0bCZahxbEEvrkHn5CU9FBOuIrN+dGrhP kXnaZJwQz+/t9tgEurM9guvS62KEusPre9gxYLoVYsfdJrhayDAk3zU35dJPWQxGzVxz ONX06imKTsQEHPrk7LHKDWZxKrFuwXgfc7BQtpBOiq9WoAtIatOoqnvpTBMDoW88TP/i 6FLQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1703184706; x=1703789506; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=cTMwLfQA7I1tcp2MKhomeGoTKIOw/eHpzCKqi24ItnA=; b=g8wcuajplM9Vg7FL2eUbDzldY2RcV22Z+FmwWPIqHoQ2NZV8VOaPIhcg8IBeGYLgln lmRktcltzWBKa2BBAp2DmoN1eHNMQXlpNEIU0F8+cY4BHxk8+cPwCoGaVlTz2PlRRyn+ PRmCHzdiSLJfA1vLzaAzmAanQ8Ufg13JTZSKWwsx+eQ/hudn5qDxLHAKa8MB0uPzlPsR NkknsGa7VB5c/bmTTV7HmOABjWkSvqHKhQHNx6BK15YvcoNwaXKVrFXjzTcA5yyJdEg3 gccp2jTjqd1aXRC92iT/yA/EX9A3zpAjlfE4OvgMBCPQPDiCewEH78r25eWtdVDehzm+ NXjQ== X-Gm-Message-State: AOJu0Yw9fsk7rr0QbVSliFxVgKJpC78FVHwN00CS+N8e55OWfu4oEeeT ijcXnuSLl/G7HCmS6OtaH9OjDU4NfZmV X-Received: by 2002:a05:600c:2289:b0:40d:4153:5f1f with SMTP id 9-20020a05600c228900b0040d41535f1fmr89073wmf.159.1703184705458; Thu, 21 Dec 2023 10:51:45 -0800 (PST) Received: from localhost.localdomain (31-10-153-16.cgn.dynamic.upc.ch. [31.10.153.16]) by smtp.gmail.com with ESMTPSA id e17-20020a5d5311000000b0033672cfca96sm2585632wrv.89.2023.12.21.10.51.43 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 21 Dec 2023 10:51:44 -0800 (PST) From: Aleksandrs Vinarskis To: Lee Jones , Andy Shevchenko , Aleksandrs Vinarskis , linux-kernel@vger.kernel.org Cc: Hans de Goede Subject: [PATCH v4 0/2] Fix LPSS clock divider for XPS 9530 Date: Thu, 21 Dec 2023 19:51:40 +0100 Message-Id: <20231221185142.9224-1-alex.vinarskis@gmail.com> X-Mailer: git-send-email 2.40.1 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Dell XPS 9530 (2023) uses spi-pxa2xx with clock-divider enabled from intel-lpss with the ratio of 1:32767 (Dell's firmware bug). This caps SPI controller's speed at very low value of 3051Hz, which makes the interface practically unusable. Since either spi-pxa2xx or intel-lpss should have clock divider enabled, not both, and SPI controller can have higher speed than requested by the device, it is preffered to disable intel-lpss clock-divider, and let SPI controller handle it. Fixing this issue directly in Dell firmware by setting lpss divider to 1:1 would've been the ideal solution, but is unlikely to ever happen. Particular driver already implements customized solution for handling buggy ACPI tables for select Microsoft devices. This patch series converts it to a more generic quirk table, and adds a new quirk QUIRK_CLOCK_DIVIDER_UNITY which forces clock divider to be set to 1:1. In the future, devices with similar bug (if any) can be easily added to the same pci id lookup table. Changes since v3: - Altered "{ PCI.." style of quirk table - Added CC to Hans de Goede Changes since v2: - Added missing periods, moved variable declaration - Altered "}, {" style of quirk table - Confirmed to compile for 32-bit without warnings Changes since v1: - Applied suggestions by Andy Shevchenko Aleksandrs Vinarskis (2): mfd: intel-lpss: Switch to generalized quirk table mfd: intel-lpss: Introduce QUIRK_CLOCK_DIVIDER_UNITY for XPS 9530 drivers/mfd/intel-lpss-pci.c | 28 ++++++++++++++++++++-------- drivers/mfd/intel-lpss.c | 9 ++++++++- drivers/mfd/intel-lpss.h | 14 +++++++++++++- 3 files changed, 41 insertions(+), 10 deletions(-) -- 2.40.1