From nobody Fri Sep 25 16:04:45 2026 Received: from mail-ed2-f12.google.com (mail-ed2-f12.google.com [74.125.228.76]) (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 E14DE38A70B for ; Thu, 10 Sep 2026 15:17:43 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=74.125.228.76 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1789053467; cv=none; b=KRJvwWi5SvEms9f2fSvZp/QziipEI8c7uk8mscAJogTjXsW1SJz5PnYdL6TlM0wf+ynj+QvoxxHVcyGQZ+CavBqPdjdw2kxnHnbnsPXRkzh0MhzWvw7Z9ALdYgCTMTnowAPOoXCkgcZYhpap6+EeMrWG5KEYEYgcPTiglwHLQNk= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1789053467; c=relaxed/simple; bh=hoSswXVWLVu8GkcK34DAUODiccHHAek8ONdPjlGXrBw=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=Imp7Rr54PLCkSN4JjWQe5KtPqxQfikglHXCG3KIdVKq9s+s71j+W0Xv5l0Rcg6uep/uXuVVIra+PgTiS2eAoR5ze8S09Kk/6F+a4xKkg6h1AhnvmU1gO5mIHLqOzOqtGhGkHdg1Vf9iixgf/ZuRR8TAwq0POiXpciW+TNkTBBFs= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=fairphone.com; spf=pass smtp.mailfrom=fairphone.com; dkim=pass (2048-bit key) header.d=fairphone.com header.i=@fairphone.com header.b=yystn1Bo; arc=none smtp.client-ip=74.125.228.76 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=fairphone.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=fairphone.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=fairphone.com header.i=@fairphone.com header.b="yystn1Bo" Received: by mail-ed2-f12.google.com with SMTP id 4fb4d7f45d1cf-6a9984f9adcso2816276a12.0 for ; Thu, 10 Sep 2026 08:17:43 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=fairphone.com; s=fair; t=1789053461; x=1789658261; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :content-type:mime-version:subject:date:from:from:to:cc:subject:date :message-id:reply-to:content-type; bh=k/FP+/J1r8J6TVzr3mtFdJoEGOGhci033fWlcw7cdVw=; b=yystn1BoszbL9LZ9Q98mdeQnKp7/jeOX+xWjpF+HWvZ1PnJtBBfdzCfkY0rCEmIqc4 uIp3NlTQneMhSchzGmfgj6GAsjbYL8OdGvm2TKLeu3oYi/1IGkqZy2YRysI2lVAX3ZJq xkXlG0rO5H/NazSs63uV9qaYa/040AMF5/RGl9EqAoYwLCe7x+pbaRht6yGNNGs7f1b5 MdjyFhjO/jdLlk2oG43J4cx+57mtOqFJ7Mm11F9fAH8ZhnpMITgW/SuZZvxpk3wOoSUK k9ie8Pcrj3bfuEX2MEraZl9aAO7xjyTbhfYGFfTmKa8Ig/Er5ldRMKdDd2rkMjuKlxU4 donw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1789053461; x=1789658261; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :content-type:mime-version:subject:date:from:x-gm-gg :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to :content-type; bh=k/FP+/J1r8J6TVzr3mtFdJoEGOGhci033fWlcw7cdVw=; b=IF3YieaNlMu1ojavzVy9RSbSV2pX2YaoUmy072escNwRynBzBhutrgU7YcrVovvHFe pEfZDl7aBeRNaMlQ/GI60L8Rvc1vihin1Hd6MCGVhev7r4/W/b9Z39Jil9xBthUcZGMC 5s5T70DzU84Hsy5JHWc6F2ZkMgr3rkPF37PmMkbruVty/NL9yvwLJZfyaqIFxbhLmDDn iycxA2X4tHYhV3B8hJy+j9ZjtQ303rrbaHouqw50UCzaNt1QqVdyZeVwK3q/xQJW1wDu 3VCBWxamCBQPD3Hvs7F9t2tnP4au8s5Sg+rsRgcslW2zjxrgFwyMeXI0Ck8RjLEzNdX8 xXbA== X-Forwarded-Encrypted: i=1; AKwUvBw/3PXVGdRSog+xFE8AUX/0zqfHkdb3ZsQ2X/EOFgsarUPYAzf8LDHCI/IdZEnE1sCQUFuJguNTGNBxYvw=@vger.kernel.org X-Gm-Message-State: AFuF++nwx5wUfmAYvNRaI1OCjdKBxZCvhCSnOStTs9R0FJQI3jk5DADj KVVTEQEBXMmLRYDpGuEKhxWSnm2X2oPWkgJDrRDrC0gWOR+dbhmQZ4pbDnj3DoHxnWf9sp1Ujn8 685k4qjg= X-Gm-Gg: AYBFou1Zbx7RV8VrnnGVXoa/VzioloeG89t1d21Rr6gT6xU/BmlYJEeAZbKb/a32RWX X8DXncYNy/chdq16mbFq4TTgML0YMm1/jpUSMgKN9MtwmPTdiBIsaQ40aPNoUHZJ4GcjJ+Q9+eY 5sWyq8p+POG+4r9+r/purs6sERR5YjxaMgWCtceckjo+4w1c8zm6V+kxctXbtCQn8ioi/LMubU6 kJkf9MwlN5asjHy/iuD68/KiZDGClk2Baf1A10DI9TA4OnjIRq33IJYuap1U1KFC1bqPAt5X30z NqjwA8TH50jyu/7LJMAh5ftNPPi8XX20Wu2XxxdqcUeIc9/Gb9kERVlQjrG/PmOGfhhkK4zBE1D dzjy7UQVVJLDqe/1SPV3YoDo2RvhbDB9quQMBkVjH6GLBFiedhIc96Tk7itvJ1WxsMdcHqUil8d QrC82/1HxxpZ4O+g3Zvza0BINIOBZSubHa8K1mT6GbLn3Ev/qBGr580yZeLaVWslx8BAVsHJZm1 AfZqSZfaDojnha9RQQyFoRzdoEYg/AadcC8zbHyQD7OFq+Ug6wQ+mlE X-Received: by 2002:a05:6402:4496:b0:6a6:c4b:c92f with SMTP id 4fb4d7f45d1cf-6a99caa4ab3mr3245892a12.9.1789052059555; Thu, 10 Sep 2026 07:54:19 -0700 (PDT) Received: from [172.16.240.55] (144-178-202-142.static.ef-service.nl. [144.178.202.142]) by smtp.gmail.com with ESMTPSA id 4fb4d7f45d1cf-6a7e6c20c0fsm8849715a12.30.2026.09.10.07.54.19 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 10 Sep 2026 07:54:19 -0700 (PDT) From: Griffin Kroah-Hartman Date: Thu, 10 Sep 2026 16:54:16 +0200 Subject: [PATCH 1/3] dt-bindings: media: i2c: dw9800: Redocument DW9800K Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260910-b4-dw9800k_cleanup-v1-1-608255ea61ab@fairphone.com> References: <20260910-b4-dw9800k_cleanup-v1-0-608255ea61ab@fairphone.com> In-Reply-To: <20260910-b4-dw9800k_cleanup-v1-0-608255ea61ab@fairphone.com> To: Mauro Carvalho Chehab , Rob Herring , Krzysztof Kozlowski , Conor Dooley , =?utf-8?q?Andr=C3=A9_Apitzsch?= , Luca Weiss , Sakari Ailus , Daniel Scally , Bjorn Andersson , Konrad Dybcio Cc: linux-media@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-msm@vger.kernel.org, Griffin Kroah-Hartman X-Mailer: b4 0.15.2 X-Developer-Signature: v=1; a=ed25519-sha256; t=1789052058; l=4019; i=griffin.kroah@fairphone.com; s=20260910; h=from:subject:message-id; bh=hoSswXVWLVu8GkcK34DAUODiccHHAek8ONdPjlGXrBw=; b=mK9NBTDF9vNQff5ArJEJnZs0qmDIcE1+GHUJCkp4/mfoWcQARvlLym2h7RHwXkoU/KN+/hI0Q E+U5wCvToxDBDd8BKydh9zjhrjYkWkbWhsx77cn7VwX68fvfo8vz1PZ X-Developer-Key: i=griffin.kroah@fairphone.com; a=ed25519; pk=HlyUkuZAN9I5qlPbOHN5N9xxdQ5sT6AbPgC4TsLCxzA= The DW9800K's properties are too different to justify sharing the same bindings file as the dw9719, Create a separate bindings documentation for the Dongwoon Anatech DW9800K with it's updated properties. Signed-off-by: Griffin Kroah-Hartman --- .../bindings/media/i2c/dongwoon,dw9719.yaml | 1 - .../bindings/media/i2c/dongwoon,dw9800k.yaml | 91 ++++++++++++++++++= ++++ 2 files changed, 91 insertions(+), 1 deletion(-) diff --git a/Documentation/devicetree/bindings/media/i2c/dongwoon,dw9719.ya= ml b/Documentation/devicetree/bindings/media/i2c/dongwoon,dw9719.yaml index 8e8d62436e0d..38db0764c0f7 100644 --- a/Documentation/devicetree/bindings/media/i2c/dongwoon,dw9719.yaml +++ b/Documentation/devicetree/bindings/media/i2c/dongwoon,dw9719.yaml @@ -21,7 +21,6 @@ properties: - dongwoon,dw9718s - dongwoon,dw9719 - dongwoon,dw9761 - - dongwoon,dw9800k =20 reg: maxItems: 1 diff --git a/Documentation/devicetree/bindings/media/i2c/dongwoon,dw9800k.y= aml b/Documentation/devicetree/bindings/media/i2c/dongwoon,dw9800k.yaml new file mode 100644 index 000000000000..046c0a88bcef --- /dev/null +++ b/Documentation/devicetree/bindings/media/i2c/dongwoon,dw9800k.yaml @@ -0,0 +1,91 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/media/i2c/dongwoon,dw9800k.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Dongwoon Anatech DW9800K Bi-Direction Voice Coil Motor (Bi-VCM) Con= troller + +maintainers: + - Luca Weiss + - Griffin Kroah-Hartman + +description: + The Dongwoon DW9800K is a single 10-bit digital-to-analog converter with + +-130 mA output current sink capability, designed for linear control of + bi-directional voice coil motors (Bi-VCM) in camera lenses. This chip + provides a Smart Actuator Control (SAC) mode intended for minimizing + mechanical vibration. + +properties: + compatible: + enum: + - dongwoon,dw9800k + + reg: + maxItems: 1 + + vdd-supply: + description: VDD power supply, can range from 2.3V to 4.8V + + dongwoon,sac-mode: + description: > + Slew Rate Control mode to use: direct, LSC (Linear Slope Control) or + SAC2-SAC5 (Smart Actuator Control). + $ref: /schemas/types.yaml#/definitions/uint32 + enum: + - 0 # Direct mode + - 1 # LSC mode + - 2 # SAC2 mode (operation time# 0.48 x Tvib) + - 3 # SAC3 mode (operation time# 0.72 x Tvib) + - 4 # SAC4 mode (operation time# 1.20 x Tvib) + - 5 # SAC5 mode (operation time# 1.64 x Tvib) + default: 3 + + dongwoon,clock-presc: + description: + Indication of VCM internal clock dividing rate select, as one multip= le + factor to calculate VCM ring periodic time Tvib. + $ref: /schemas/types.yaml#/definitions/uint32 + enum: + - 0 # Dividing Rate - 2 + - 1 # Dividing Rate - 1 + - 2 # Dividing Rate - 1/2 + - 3 # Dividing Rate - 1/4 + - 4 # Dividing Rate - 8 + - 5 # Dividing Rate - 4 + default: 1 + + dongwoon,timing-control: + description: + In LSC mode (252 + value * 4) * divider value in microseconds + In SAC mode (6.3 + value * 0.1) * divider value in milliseconds + $ref: /schemas/types.yaml#/definitions/uint32 + minimum: 0x00 + maximum: 0x3f + default: 0x20 + +required: + - compatible + - reg + - vdd-supply + +additionalProperties: false + +examples: + - | + i2c { + #address-cells =3D <1>; + #size-cells =3D <0>; + + actuator@c { + compatible =3D "dongwoon,dw9800k"; + reg =3D <0x0c>; + + vdd-supply =3D <&pm8937_l17>; + + dongwoon,sac-mode =3D <4>; + dongwoon,clock-presc =3D <0>; + dongwoon,timing-control =3D <16>; + }; + }; --=20 2.55.0 From nobody Fri Sep 25 16:04:45 2026 Received: from mail-ed1-f54.google.com (mail-ed1-f54.google.com [209.85.208.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 3F4594AB1A2 for ; Thu, 10 Sep 2026 14:54:22 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.208.54 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1789052064; cv=none; b=G6KAFC9++F2vTO3sIFaDWgZHb7MdJIvKLKeLg6Qn4VLYdhJKQcFjHaR5JmWLvHGrt2rlTkGMVx4cQRg8Ntm/Y60sgyiDO9NaMMRPznPRNFDM9FvamwF9ocZdVc+KGmpPb73ZLLcmYeJ4eUM9APIlAYQMg7nN8XU4O7LXo+tRopw= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1789052064; c=relaxed/simple; bh=lRC/CSx3PhSYeBidfq8leg5D0ovjhGx9Q1X38i3kiW8=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=JU47avEWQRMKflglLxCDk6GVbT2wWN7LCfG6YYSlwmuK4v50T0M/FKaJB90SwvX++A5YRz1MvC+hdLc8AAQ0G4D21VF2DTy6XeQSowbJDOPw/fUlST6NVUZyXczuiTh7IBdQWOjFST4W3Owt6w7HK0bxgE9+osRSVVBMmXKschE= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=fairphone.com; spf=pass smtp.mailfrom=fairphone.com; dkim=pass (2048-bit key) header.d=fairphone.com header.i=@fairphone.com header.b=x1VGY+Za; arc=none smtp.client-ip=209.85.208.54 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=fairphone.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=fairphone.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=fairphone.com header.i=@fairphone.com header.b="x1VGY+Za" Received: by mail-ed1-f54.google.com with SMTP id 4fb4d7f45d1cf-6a9a4dc8afeso1399455a12.3 for ; Thu, 10 Sep 2026 07:54:21 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=fairphone.com; s=fair; t=1789052060; x=1789656860; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :content-type:mime-version:subject:date:from:from:to:cc:subject:date :message-id:reply-to:content-type; bh=yJK0XhoQ3rVBDJaGpHyeUBARRYM1Hb6GV+mqdPwfA8w=; b=x1VGY+Za1uI7Dze4+NQp8rXA3Vd7d8Q32IBUCwUufjTMkdRNxmJxTZze+/oWrsRwyx xo6lSdbxpg1zIz0qo/dsuAVDujgSvkwKCnOWtkEsNyNoVRegCHUi22/6C533RPH0fsoY VGPiJniKJeUpsZ9c80Ta+KdnS23f5sFxPok0D7IIfhGzmHMbAllbV/nKI/f2xkHyfZtY ZE3gzj6knNN28XwcGD3LIdmRhTX306BGa3ut1Ksw2JGs+k+WU81qqQMQNObzyS+PQK9N 4kuWY/1lFGkT+/FjvrXb3PtjXamrgax/OOOXFSKRQQb/v0eUDDrb1ZrmXYGJ1+6eeOdx d14A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1789052060; x=1789656860; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :content-type:mime-version:subject:date:from:x-gm-gg :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to :content-type; bh=yJK0XhoQ3rVBDJaGpHyeUBARRYM1Hb6GV+mqdPwfA8w=; b=Ot9Z9Xz/O0H/Hs2t1PGiJr8Uncwn4jAIeAV5uVk2n0qmii0qVUzUM73rTsZ2uzh90z Z6FuuEgbJafy7EJaMVcVvullWWud41SjpA2vMI5Ra52OmuIi36tuto4uwZ98a5ACSPRz NTCPXzsocs6DBO4GvRKncvZgh0cGTxC/8grnK5BFilsGnGbBs5INJmud7n6PqSlpRcJy wAD0MpPTC35xwlII0xK0wyoT3BQSzp4bau9CoPAKRI9X72+a/z2W1x43jqDieBfQRydt aeiBb/IPg7zjcxAVrjq+s+CvOFw/c9lYreYkwKPFh7YKsGGv7DlUpxNP/RVWHH1t5rdw ewsw== X-Forwarded-Encrypted: i=1; AKwUvBzB9t8SpsCiZGQybVFZPCRznYi+SpQLBNvhgMhXfTPshdeOLp03IqC00jRzlWScth083/aTqjUMONjIgeM=@vger.kernel.org X-Gm-Message-State: AFuF++lexo4pXW0fSW6NK5DExWqlvmVk77ei3ETWKPGdkPUDj41tctK9 ngOloiuOuQw2/3TiJIVtx6upAHoCneBvB+AtPL49fSdNVL8awBhz3R7K3x5dQNpN5vtUfxiYDy6 d9Evwr6Q= X-Gm-Gg: AYBFou0UA3rQ8w+yRGjR01S9B8P2HRFXo/9btbWK22by5MlYQ5oVL7Mlh3eoIjnGruA hLfclugSPYHxyID7eIyEXMEkxXbKPAxUC+T24NKqxWoeBsy6sFFhiZcGn3w58E2ams8AA6vKqX3 sYm5S9UlH+TtmMLa6wDiYmqzamhaw5Z2YFJp5cHg4EnSuLx0Vrclj5xsCNWcTLP3Ja6ceOzcKYj TfXVzYYd+Y5eoJKM4iN5xLdD+5gdV+1AMxmCc91Dj564Zw1pbm/hTawBcVdcFi1e70ntRKW60en sGvM4hR0cApTBNaG2ZYQaUlAU/z92UGvdm/JSF0pNDGp6rl5YF0pWdwCy6NnNUg8grVP/284h00 wfo9EJ7eNhJSJ3WMkHawVB94jeiYWODVRKY9pQTtlQ9LvPxBPfGH+kDWkKlkgmtbl62GVUohwnO nd0XRsukKTy/7fecSyC4UMGgVJKL7yS3FfgzTgJ26ogO6s03HrNLk6KMLvsf94h/EzdN+AVitZz x4zk2WpIs6bK/6nFq+oG6GThMteVAwjSL/sxXoXf7RhviTMTNj8i1zX X-Received: by 2002:a05:6402:a2d1:20b0:6a9:693d:31d6 with SMTP id 4fb4d7f45d1cf-6a9693d32d0mr4601111a12.22.1789052060374; Thu, 10 Sep 2026 07:54:20 -0700 (PDT) Received: from [172.16.240.55] (144-178-202-142.static.ef-service.nl. [144.178.202.142]) by smtp.gmail.com with ESMTPSA id 4fb4d7f45d1cf-6a7e6c20c0fsm8849715a12.30.2026.09.10.07.54.19 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 10 Sep 2026 07:54:19 -0700 (PDT) From: Griffin Kroah-Hartman Date: Thu, 10 Sep 2026 16:54:17 +0200 Subject: [PATCH 2/3] media: i2c: dw9719: Update DW9800K driver Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260910-b4-dw9800k_cleanup-v1-2-608255ea61ab@fairphone.com> References: <20260910-b4-dw9800k_cleanup-v1-0-608255ea61ab@fairphone.com> In-Reply-To: <20260910-b4-dw9800k_cleanup-v1-0-608255ea61ab@fairphone.com> To: Mauro Carvalho Chehab , Rob Herring , Krzysztof Kozlowski , Conor Dooley , =?utf-8?q?Andr=C3=A9_Apitzsch?= , Luca Weiss , Sakari Ailus , Daniel Scally , Bjorn Andersson , Konrad Dybcio Cc: linux-media@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-msm@vger.kernel.org, Griffin Kroah-Hartman X-Mailer: b4 0.15.2 X-Developer-Signature: v=1; a=ed25519-sha256; t=1789052058; l=3982; i=griffin.kroah@fairphone.com; s=20260910; h=from:subject:message-id; bh=lRC/CSx3PhSYeBidfq8leg5D0ovjhGx9Q1X38i3kiW8=; b=eEl6h+GabRpKMZ4cV8/YCYqRa36sZU+2uo4PFdx+M8J43m3UzJclFdLaNw7Qkp6MfDwtlNn2V ofdr14RQY0GCx22DAWeBKN9OLZZn8hD2R4afrcsjbDhgQvZqL5Zgvfc X-Developer-Key: i=griffin.kroah@fairphone.com; a=ed25519; pk=HlyUkuZAN9I5qlPbOHN5N9xxdQ5sT6AbPgC4TsLCxzA= The previous DW9800K driver code was created without access to a datasheet for the part, now that we have one we can clean up some misunderstandings and add some features for further expandability. Signed-off-by: Griffin Kroah-Hartman --- drivers/media/i2c/dw9719.c | 71 ++++++++++++++++++++++++++++++++++++++++--= ---- 1 file changed, 62 insertions(+), 9 deletions(-) diff --git a/drivers/media/i2c/dw9719.c b/drivers/media/i2c/dw9719.c index 3b7ba88fd67c..982be59b9ee1 100644 --- a/drivers/media/i2c/dw9719.c +++ b/drivers/media/i2c/dw9719.c @@ -68,9 +68,18 @@ #define DW9761_VCM_PRELOAD CCI_REG8(8) #define DW9761_DEFAULT_VCM_PRELOAD 0x73 =20 -#define DW9800K_DEFAULT_SAC 1 +#define DW9800K_ID 0xEB +#define DW9800K_DEFAULT_SAC 3 #define DW9800K_MODE_SAC_SHIFT 6 -#define DW9800K_DEFAULT_VCM_FREQ 0x10 + +#define DW9800K_RESONANCE CCI_REG8(7) + +#define DW9800K_DEFAULT_DIV 0x01 +#define DW9800K_DIV_SHIFT 6 +#define DW9800K_DIV_LOW_SHIFT 2 + +#define DW9800K_DEFAULT_SACT 0x20 + =20 #define to_dw9719_device(x) container_of(x, struct dw9719_device, sd) =20 @@ -90,6 +99,8 @@ struct dw9719_device { u32 mode_low_bits; u32 sac_mode; u32 vcm_freq; + u32 div; + u32 sac_time; =20 struct dw9719_v4l2_ctrls { struct v4l2_ctrl_handler handler; @@ -140,10 +151,6 @@ static int dw9719_power_up(struct dw9719_device *dw971= 9, bool detect) dw9719->sac_mode =3D DW9718S_DEFAULT_SAC; dw9719->vcm_freq =3D DW9718S_DEFAULT_VCM_FREQ; goto props; - case DW9800K: - dw9719->sac_mode =3D DW9800K_DEFAULT_SAC; - dw9719->vcm_freq =3D DW9800K_DEFAULT_VCM_FREQ; - goto props; default: break; } @@ -165,6 +172,12 @@ static int dw9719_power_up(struct dw9719_device *dw971= 9, bool detect) dw9719->sac_mode =3D DW9761_DEFAULT_SAC; dw9719->vcm_freq =3D DW9761_DEFAULT_VCM_FREQ; break; + case DW9800K_ID: + dw9719->sac_mode =3D DW9800K_DEFAULT_SAC; + dw9719->vcm_freq =3D DW9719_DEFAULT_VCM_FREQ; + dw9719->div =3D DW9800K_DEFAULT_DIV; + dw9719->sac_time =3D DW9800K_DEFAULT_SACT; + break; default: dev_err(dw9719->dev, "Error unknown device id 0x%02llx\n", val); @@ -185,14 +198,54 @@ static int dw9719_power_up(struct dw9719_device *dw97= 19, bool detect) /* Optional indication of VCM prescale */ device_property_read_u32(dw9719->dev, "dongwoon,vcm-prescale", &dw9719->vcm_freq); + + /* Optional indication of clock pre-scale select */ + device_property_read_u32(dw9719->dev, "dongwoon,clock-presc", + &dw9719->div); + + /* Optional indication of SAC timing */ + device_property_read_u32(dw9719->dev, "dongwoon,timing-control", + &dw9719->sac_time); } =20 switch (dw9719->model) { case DW9800K: - cci_write(dw9719->regmap, DW9719_CONTROL, DW9719_ENABLE_RINGING, &ret); + int ring, sac; + + /* + * Enable ringing for SAC3-SAC5 + * + * sac_mode reg Mode + * =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D + * 0 0X Direct + * 1 1X LSC + * 2 00 SAC2 + * 3 01 SAC3 + * 4 10 SAC4 + * 5 11 SAC5 + */ + switch (dw9719->sac_mode) { + case 0: + ring =3D 0; + sac =3D 0; + break; + case 1: + ring =3D 0; + sac =3D 2; + break; + default: + ring =3D DW9719_ENABLE_RINGING; + sac =3D dw9719->sac_mode - 2; + break; + } + cci_write(dw9719->regmap, DW9719_CONTROL, ring, &ret); + /* DIV is 3 bits split over the bottom bit in reg 6 and the top 2 bits i= n reg 7 */ cci_write(dw9719->regmap, DW9719_MODE, - dw9719->sac_mode << DW9800K_MODE_SAC_SHIFT, &ret); - cci_write(dw9719->regmap, DW9719_VCM_FREQ, dw9719->vcm_freq, &ret); + (sac << DW9800K_MODE_SAC_SHIFT) | + (dw9719->div >> DW9800K_DIV_LOW_SHIFT), &ret); + cci_write(dw9719->regmap, DW9800K_RESONANCE, + (dw9719->div << DW9800K_DIV_SHIFT) | + dw9719->sac_time, &ret); break; case DW9718S: /* Datasheet says [OCP/UVLO] should be disabled below 2.5V */ --=20 2.55.0 From nobody Fri Sep 25 16:04:45 2026 Received: from mail-ed1-f44.google.com (mail-ed1-f44.google.com [209.85.208.44]) (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 EFA1C4AB1BC for ; Thu, 10 Sep 2026 14:54:22 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.208.44 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1789052065; cv=none; b=L1HjcAA8BLWsqbq+X3d7fiFkPCXi7H8GVYwcCBRwK8xU5M/MDI7/k/ff5Al2FBipr4M6AYxsvP88VACkAK3jZB7iqc0P3303rVuP8/qlcobT2FYHXd0h/nDhl9aU9GMivu9lnP4K+sts0GSW79oRJ2EalTVvl8HAG1asmhynNsI= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1789052065; c=relaxed/simple; bh=MquNAT6A9LY0z5XBr75rwe1nLNnGi+rAfX3A8ukDpvA=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=qHXDL67LzfpV3A9iVf00nBknnWGCCzDw3zniMnXe8lK8Pg4WguPXyYDUCVNYmVGa0oyqmDF80oP9zAsgiAVD7yScpbs87rQ+qSMUIV8DEM6Sc7sGv2kCiP3wGIwUwU/46fzvqsfkP3u29iED9EBIB7Kqqifz1GTvfDedJjUUft0= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=fairphone.com; spf=pass smtp.mailfrom=fairphone.com; dkim=pass (2048-bit key) header.d=fairphone.com header.i=@fairphone.com header.b=1DI1G3Qw; arc=none smtp.client-ip=209.85.208.44 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=fairphone.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=fairphone.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=fairphone.com header.i=@fairphone.com header.b="1DI1G3Qw" Received: by mail-ed1-f44.google.com with SMTP id 4fb4d7f45d1cf-6a18e24ad25so9366076a12.1 for ; Thu, 10 Sep 2026 07:54:22 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=fairphone.com; s=fair; t=1789052061; x=1789656861; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :content-type:mime-version:subject:date:from:from:to:cc:subject:date :message-id:reply-to:content-type; bh=b4Lui4dl5qTw7CI3Pdg3YTOJV27r2TrFCzHImNPail0=; b=1DI1G3QwZ5PdR1IHjQP33Z1KgiQXN7OvvSBR9O1MqZhykb1LmG/yqxZaL1ZyEJ9zZH PDaFwJvVFFhfiUadwo3LddVdlvKgk+MsMkcZDZbdKZk2S+RQDqMO3bxxfcW+qmaa6wis 4LAy9Jw6H2xwsUK6xtQbQlwEFurAkEVkGUTpCUsmMmjhwN2mI9kNgyYlrl9a5p/L9Bc6 67OuNk6g6oNsRFtoY2AV0xOTtPCd5IHbjL9JO0xg7zYYJ1AM8guHnXlJxFdPhnGcKBV0 t2+uNE/IgnIxBodBIreYA+P5EaEdI5cA9RK5pF6g8Eqz4C3JUXUpC5eUDH4Ojw2M93X/ 5Ndg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1789052061; x=1789656861; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :content-type:mime-version:subject:date:from:x-gm-gg :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to :content-type; bh=b4Lui4dl5qTw7CI3Pdg3YTOJV27r2TrFCzHImNPail0=; b=GBuGPkxMhXvBBkV9/BClIdWff/xHduusOLrsDyt/o30DxjMT/wDYK0+GciKGCv+P/N tIiDRucIKxPqm0T0r9iPp5NDqnh5jU5wLPCSxoXl83S9g2CAEvyCIOjy8lGUfmWYLJAQ WfplFOjIIRIEYqhXSGs7ZiOF2W22b8NTiX6MWqlFmlspSm4WadqRQmd/H+05V0tavxut Y/s1QTxMprUQSFqpD9eN7EkXE/XSHPBCLmGa511zmqCbzO6Cu/OilAup0QBP552V3oDj +QR/xX3Dx84gr1qHYKDsTqFubnSU3+bhCjEsB4kWNzOMNdR3oiUmR739bkTLu3GOrjA1 MRJA== X-Forwarded-Encrypted: i=1; AKwUvBzuekLkjW4ZvZ46uI2J7rVN07YIULTUQhnBS+GcorEK32iZDjwMCUkRoCRQZURah9FtmqH7FHGQv5pE4EE=@vger.kernel.org X-Gm-Message-State: AFuF++mEFq45jXvxUhT2+FuLwlkOuWmIwezH6506g6RFmF734w4OY/nx qX8Hu8NvyZeXpbbHxlvW7ZpWxOTI+WaBq3UWlnnLeZ1HJC7PyOWWCQ1gyZWonZ4fZ7oP6V88JeM afUH/ACo= X-Gm-Gg: AYBFou1JtLdZ1wKHGWWYIZexnN+D/SrYjzL4VjIA8/ROuKweNgaryUVUQx7ppL8W4mb 8PdoHhNr0WgyXZ53szCc4o91l35ahq8gGVk1tEgFu2rcZCl/8PZe86Hr06gmH2yiQoHjSmZtfNq PPoHqr3iC9LuZ7CYMXyyzaZ/ENCyIqtGOfUAL1Mdiplug56quJp4iBPDTY+1fBtKJGzEKuO7k2C xl2TH6kMFXhRP/f4NnklTEiV1eSPJn3GXo5OHzaEJJ64dnTteVYYm+GuB6UxyrVtXVlYZYFG/wH rz7atwCiDhUT418MD1LivTkRp+2nKXiKmHOA27y0yj2XPawUMgohPF96CFe0tWod+it0n5YP4sZ Y98QwHIeLBAabmjJlGRDW9q1rhJnyFvQyhO72avuR/pUY6slCB/g1qkVHIL/A3cQtF6fZJ5dnQw N0juqRiaIQWdcACCrYfJyCPyvBh1WvO9K/COwR1HNbpJUXzXs3X0jT88uAbnDk8OTY/Jt/5Q4lp tYiIsB3tqxd5YBvdu2bF3714NoTtR1vzAheJgtQryH4W9iuHn+dm1XV1lO/PT72gY0= X-Received: by 2002:a05:6402:5003:b0:6a9:8ea3:6507 with SMTP id 4fb4d7f45d1cf-6a98ea36c7fmr4599746a12.30.1789052060890; Thu, 10 Sep 2026 07:54:20 -0700 (PDT) Received: from [172.16.240.55] (144-178-202-142.static.ef-service.nl. [144.178.202.142]) by smtp.gmail.com with ESMTPSA id 4fb4d7f45d1cf-6a7e6c20c0fsm8849715a12.30.2026.09.10.07.54.20 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 10 Sep 2026 07:54:20 -0700 (PDT) From: Griffin Kroah-Hartman Date: Thu, 10 Sep 2026 16:54:18 +0200 Subject: [PATCH 3/3] arm64: dts: qcom: qcm6490-fairphone-fp5: Fix DW9800K support Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260910-b4-dw9800k_cleanup-v1-3-608255ea61ab@fairphone.com> References: <20260910-b4-dw9800k_cleanup-v1-0-608255ea61ab@fairphone.com> In-Reply-To: <20260910-b4-dw9800k_cleanup-v1-0-608255ea61ab@fairphone.com> To: Mauro Carvalho Chehab , Rob Herring , Krzysztof Kozlowski , Conor Dooley , =?utf-8?q?Andr=C3=A9_Apitzsch?= , Luca Weiss , Sakari Ailus , Daniel Scally , Bjorn Andersson , Konrad Dybcio Cc: linux-media@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-msm@vger.kernel.org, Griffin Kroah-Hartman X-Mailer: b4 0.15.2 X-Developer-Signature: v=1; a=ed25519-sha256; t=1789052058; l=947; i=griffin.kroah@fairphone.com; s=20260910; h=from:subject:message-id; bh=MquNAT6A9LY0z5XBr75rwe1nLNnGi+rAfX3A8ukDpvA=; b=se1xMaa6rpRe1osYihYePmbAFEtpW0H4VSfKVR3ef9ziNFAgHHQJNLCgy4nJ5LuVD9CnbTt03 ezkt/cxqzV+BRQNpBmHoWcwYfF0WKNTEHjOgG67NGDWr7f2ora7BkVq X-Developer-Key: i=griffin.kroah@fairphone.com; a=ed25519; pk=HlyUkuZAN9I5qlPbOHN5N9xxdQ5sT6AbPgC4TsLCxzA= Update the node for the DW9800K to have the correct attributes. Now we correctly select SAC3 mode and other attributes with the newly updated device tree bindings. Signed-off-by: Griffin Kroah-Hartman --- arch/arm64/boot/dts/qcom/qcm6490-fairphone-fp5.dts | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/arch/arm64/boot/dts/qcom/qcm6490-fairphone-fp5.dts b/arch/arm6= 4/boot/dts/qcom/qcm6490-fairphone-fp5.dts index fa4566df0a71..cc99590afe3a 100644 --- a/arch/arm64/boot/dts/qcom/qcm6490-fairphone-fp5.dts +++ b/arch/arm64/boot/dts/qcom/qcm6490-fairphone-fp5.dts @@ -744,8 +744,9 @@ camera_imx858_dw9800k: actuator@e { reg =3D <0x0e>; vdd-supply =3D <&vreg_afvdd_2p8>; =20 - dongwoon,sac-mode =3D <1>; - dongwoon,vcm-prescale =3D <16>; + dongwoon,sac-mode =3D <3>; + dongwoon,clock-presc =3D <0>; + dongwoon,timing-control =3D <16>; }; =20 camera@29 { --=20 2.55.0