From nobody Thu Oct 9 20:24:38 2025 Received: from mail-ed1-f53.google.com (mail-ed1-f53.google.com [209.85.208.53]) (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 44A8F1A9B24 for ; Mon, 16 Jun 2025 09:45:59 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.208.53 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1750067161; cv=none; b=MQbmjj84oFJAx9NouT8aFNiqIsIVsQ680T2lgWBxSytjNiaQtt3JJFZC33/Dc7UZg1dL5rj26CWyKyYWA0w7+GQdfCjgZA8TBHIwBybgtnDon+DvneqMNyzYe4/cH/ix028ZFC8OKwpB9ynHO7IpQANOGFPJrG/jU6bBati8t2c= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1750067161; c=relaxed/simple; bh=OuFHBPiSDnHElYnOnjmGAqSP02DaggUPcI3IBLQcgxo=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=A5V6VSWe9ohMKdGlxcXlrf8Il0DGB9GAeyzJkwCAYDMzyboJVpFYdr9oFZDaoSlqEcDnaaAzulhqsrya9AkLrwc9qLMjEiKoZwDcIVJuRttOPafgI63jAPkO5NAEv05mAh8B7Az0nnbDEYQ4nCAS2gnGJmyI6lGw7wROAN/D8ak= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none 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=KKY2kJ1g; arc=none smtp.client-ip=209.85.208.53 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none 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="KKY2kJ1g" Received: by mail-ed1-f53.google.com with SMTP id 4fb4d7f45d1cf-606b6dbe316so9112248a12.3 for ; Mon, 16 Jun 2025 02:45:59 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=fairphone.com; s=fair; t=1750067157; x=1750671957; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=YviJvB3mEmC6/KWy4TJGLCulrpnF3rGNjKlkw3ObS4E=; b=KKY2kJ1g477V2aDopHXzOBX1g0Wr+zGKwVmr/Okczw8j9JzQ5x7HYV2cq6h9bHVctq 0P2o31ltbSwQBfB8Y4J/Ro9w4NsFwlbjHngRm0RUV0CQ/aooT1Lzk4PUNFjdaDZ0GN9r ftsHm8EbMV449i0taD3ClQQd74SG1+fDoENZHejQmtX17/kxQhZrbuoYeqCbD3jxBtpS A8EH7YnIYDuLapnQndYwx0u/7sWA3+1ngemlwxHKowY0Vm7SYrk/BG+B6FENPkgk4LYD HOLsxhuuM2x47f48QRI/yCk8S1Mmslw+qhzinKxlX1lKhcUQTQ1nUUn3Gqj32cSxMJby GXrw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1750067157; x=1750671957; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=YviJvB3mEmC6/KWy4TJGLCulrpnF3rGNjKlkw3ObS4E=; b=fkD+/qm5SKzHC4YQxwUpTZqcs+YRuQAlqqms0Z1+37TA25jlWfa8sVPhhT+bQJmplR 6nxwisHhHUHBxJI58MDh2gQIlPqQ+lqwvKCgO3eke8/W9SZ0Srehzm5wpbvb+A5Tjc3O dx5sBtmNQodyOHp5Hs05GP7rKlpZDzRIbTvCAvcD8BK1RfryOMKADMvdndZkzIle87aS J7zOwHpZSjpz835eopFG5NTFMBhUA/f9vnV6s3tnFpFf1y1nVYsgptrXZQ+vkFsm6Nry WSloROi6N37JrkAfLerdWqFfaiNiXh9eS29cBMlXTFY4ffzf2L2F7cMzjKGdcRB/sF2P UW+Q== X-Forwarded-Encrypted: i=1; AJvYcCVSmtm9JxCxYq1YPx8H17Wp8wTxQ3OgL3dKw/0teupnw6gRG8jd2aAIDZcCNH12hHcRtt26btJrtoIBMOE=@vger.kernel.org X-Gm-Message-State: AOJu0YyDYjl/efRQhnCA4MZYjPC8uObkHUgDMhX3R43jT5NfLZmi3F6e RxrUH/QPQtiJ+QvkzZKI1C++NnE0gS/ZRqPixqGqVqIkqYL2j5CsIaFBLkdWtPpXzC0= X-Gm-Gg: ASbGnctYTR619/dCtxJbJO9nosYf+BFTzV04dT88ncapFToIv3KlwttObx5bNzwm0QR rrXy/ngUp4JoP/7j5FKu+uu6JkTpKK6io2QDbduGOfQwobw6Qv5jowVCHJyXh2+8ClMGstyhr0y P0U+Gw3yhUY1WYW2/TyWpk2wruIM+b7eh0DDvi4c6tGt2d8RWrEmEUXRHqq33yRoO4E7hFUPM5Y BfqkAKsHcS42eUUw2dGw3a9VMnfrGCnrLnqxyvn4/bZyHVuozui0cKX1oH8PDWcNCLhOU8aFbj8 P/ZDDin21WiNcd3L6ufv9W0LLZ+ZDc76cxTAHO+OhfCB7DClNj2m/YHtKlBVqbxXlhjd1SDc6sq A9Nw7z3PJcPqnhel5vUJ6BsEVADx1r18xZkD4zQzdJOM= X-Google-Smtp-Source: AGHT+IFBvUYtkCndZW1QzfC5qAwo46v0T9wQgNbc8jLt4Uif3oBrNGyHRoJQOBcXYgi0oCzQrIclYw== X-Received: by 2002:a17:907:1c0c:b0:ade:1863:6ff2 with SMTP id a640c23a62f3a-adfad5c9158mr790453566b.52.1750067157607; Mon, 16 Jun 2025 02:45:57 -0700 (PDT) Received: from otso.local (144-178-202-138.static.ef-service.nl. [144.178.202.138]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-adec81c0421sm613375666b.46.2025.06.16.02.45.56 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 16 Jun 2025 02:45:57 -0700 (PDT) From: Luca Weiss Date: Mon, 16 Jun 2025 11:45:11 +0200 Subject: [PATCH 1/2] dt-bindings: phy: qcom,snps-eusb2-repeater: Remove default tuning values 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: <20250616-eusb2-repeater-tuning-v1-1-9457ff0fbf75@fairphone.com> References: <20250616-eusb2-repeater-tuning-v1-0-9457ff0fbf75@fairphone.com> In-Reply-To: <20250616-eusb2-repeater-tuning-v1-0-9457ff0fbf75@fairphone.com> To: Vinod Koul , Kishon Vijay Abraham I , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Abel Vesa , Konrad Dybcio Cc: linux-arm-msm@vger.kernel.org, linux-phy@lists.infradead.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, Luca Weiss X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=ed25519-sha256; t=1750067155; l=1248; i=luca.weiss@fairphone.com; s=20250611; h=from:subject:message-id; bh=OuFHBPiSDnHElYnOnjmGAqSP02DaggUPcI3IBLQcgxo=; b=/lx21CCyQJsnPnwSwibTX0OuPV2RXmhvYrgVwxk7E6o5tH/+ZPfJ8KQWyk+ryg1uGi12QFX0x QQJMaToq3B+CMaAcZ7HaCJEL+YpaHqDu7P9lHab2Mwuuz5XVdjjg/ZL X-Developer-Key: i=luca.weiss@fairphone.com; a=ed25519; pk=O1aw+AAust5lEmgrNJ1Bs7PTY0fEsJm+mdkjExA69q8= The reset default tuning value depends on the PMIC, so remove them from the doc since they're not accurate for all PMICs. Signed-off-by: Luca Weiss --- Documentation/devicetree/bindings/phy/qcom,snps-eusb2-repeater.yaml | 3 --- 1 file changed, 3 deletions(-) diff --git a/Documentation/devicetree/bindings/phy/qcom,snps-eusb2-repeater= .yaml b/Documentation/devicetree/bindings/phy/qcom,snps-eusb2-repeater.yaml index d16a543a784887eabc69faae2233057c4554be31..27f064a71c9fb8cb60e8333fb28= 5f0510a4af94f 100644 --- a/Documentation/devicetree/bindings/phy/qcom,snps-eusb2-repeater.yaml +++ b/Documentation/devicetree/bindings/phy/qcom,snps-eusb2-repeater.yaml @@ -39,21 +39,18 @@ properties: description: High-Speed disconnect threshold minimum: 0 maximum: 7 - default: 0 =20 qcom,tune-usb2-amplitude: $ref: /schemas/types.yaml#/definitions/uint8 description: High-Speed transmit amplitude minimum: 0 maximum: 15 - default: 8 =20 qcom,tune-usb2-preem: $ref: /schemas/types.yaml#/definitions/uint8 description: High-Speed TX pre-emphasis tuning minimum: 0 maximum: 7 - default: 5 =20 required: - compatible --=20 2.49.0 From nobody Thu Oct 9 20:24:38 2025 Received: from mail-ej1-f50.google.com (mail-ej1-f50.google.com [209.85.218.50]) (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 82EDA2749CD for ; Mon, 16 Jun 2025 09:46:00 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.218.50 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1750067163; cv=none; b=CgniQ1+4b1otmHWZFalUKFNDO+SrsK1hAAGEQ52J68c3/QMrjCHm5lqzYu5bMl1ImTYGLmrRdfsIuFHWGEbuUVYbF9loFuo7ArzX5YOqiF0yUaN2CLwXJ4oKXf4iSS964ylCDpJ58AxosNtWxARF8fW8QuCnr3Ync40u2YjFPMo= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1750067163; c=relaxed/simple; bh=6T1KeQBp4rmWNlU1Qma86j+ASrbxg9OQGXA7EMGSZJk=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=MLKqL08rGvE0elLyxe1lfxHYq0KApPkdsj33uLNl1+DTtX6aUbTyWUxsRFULAK53OUQEktkizGd34JksVW631pfd+Yl6DrxYeMNGBt03PLeNzFuiC/IP/2W85WeCTkHXbGyrvMshqXgrnD65zb1hJKBhTMJiGHvYKUDvt5vIoMA= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none 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=zQfKLUlk; arc=none smtp.client-ip=209.85.218.50 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none 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="zQfKLUlk" Received: by mail-ej1-f50.google.com with SMTP id a640c23a62f3a-adb2bb25105so736794766b.0 for ; Mon, 16 Jun 2025 02:46:00 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=fairphone.com; s=fair; t=1750067159; x=1750671959; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=fypXrdQ7WoRwh8UJszw0sll00HUPmzGyG59Nh8kl2GM=; b=zQfKLUlkNN5DKj4gBxt1uNYPDobGy/4yMCPFn26fE6qrX4uB7U3yxuAJo1XocZhwCL jilixlh0a7Nr8qs4Nky+l8n013H/IN2pF+X1YQ1lrsiuF5My4pwxH/V14/Pk2YVbBU2c v1B5usjlVeNc8RGfyQ/gyovhj5/7dUC/1hnPS0IvaS438cMBfUJNdGmbGcGN/JPVd6iv vG8wHT6ynsso+T0l2L1C/8ogtkdeSJg0GaeDFWWKkKWr+gk3/LrzWl7RbLs6TlbKPhWP PTtrW1y+dWdgVSlydb8Jk6oirJpSzg18/0eF4QS5/ECnUNNNPaH1GK3uYix3LKJ3cU7p bYDg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1750067159; x=1750671959; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=fypXrdQ7WoRwh8UJszw0sll00HUPmzGyG59Nh8kl2GM=; b=CspGzujQJLStAryUjfmm8gRlupecigMK/Gg1vUJVjoZYGbxgijI1kMhSlUvYfmhG8g cZ5AV/SoPdHBZo2sG4n1eoVJsJ9gAiV2nMuZdXfWRKYvWtldz6ScsejJ2ZVCBnQryViY hXqHF/qo05hmCAZAJaBfVVSma4KAtkKOwcYqxxIOhZxPJmTC4vUykRiQ+huBy/CvPh/U uW01X1KqflU/PRBpjBshe+7soOpYEngH1Nmpyd8tGGGTbXFEv89X4jIHRMnCDSiOHKLK 0btAABmiDw9Gx0YxwaTLtEK35RJNbaBH1odJmcLdexB2WIt1pOZC+SP8dpsr1pQc1i4F LuoA== X-Forwarded-Encrypted: i=1; AJvYcCWhAL4LGuMTFjVEzFmU+vkXLjLCi3Ko0X4oQ6RzCGUCa1dDrxsceCTekvmkHuSd7LVTwsDjmolqy9xrtao=@vger.kernel.org X-Gm-Message-State: AOJu0YzkuogR/WJ49n76z+XZKivv4nzrBm7lURy4M/f8AugRAmi6++bf I/W6VsPbYr7tEye3CTsWyohKQi9/zyr1Kojtbjf+lS2p4Lfb1k6JlKV6P0ucPdyyIcQ= X-Gm-Gg: ASbGncttKrpK6YfPhaO4ZsFb3ABq8IcxUBfwX6tWnRdTg/GXPdLSYFhMacOomdPoQzr S0MlXlA/9BaQZ2uQEcE1AmWLhm81WjVYFTQ3/4cZAV4SSZviEDh11gTrNlH1Zq3avlwMiAL/3or 5KpDC2HyCbsDJUurK0ea7aKHwoP6zI16jY7uhtPOBtLLrmTpL3SBiAqbymLXLoiAGbn7Sm+rtdg 34qKbiryw7m028sXqjJkdSo+bRp7+TdankkbecAWEjDshCjboGpt90QoFdOZg/E5l3w/eoZ6YSt fKCfhHtvCC5MJVsBVc12LcSqoRSX7//Y01DrdUgKUGAz/P303eVb6hyKpvB4HjEvqoDlaMVIbE3 y7f6E4Ym4FGMGgE+1Vah98htUPVt3fiu8 X-Google-Smtp-Source: AGHT+IH9yV+hi/QlJGsqmSHikLojP9cUsj2hSbxVbBPox1DLoeCzVp+CeeeJmxb2GiJh3vMM1AVqZA== X-Received: by 2002:a17:907:3f87:b0:ad8:9f50:d8c1 with SMTP id a640c23a62f3a-adfad416340mr869336566b.31.1750067158741; Mon, 16 Jun 2025 02:45:58 -0700 (PDT) Received: from otso.local (144-178-202-138.static.ef-service.nl. [144.178.202.138]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-adec81c0421sm613375666b.46.2025.06.16.02.45.57 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 16 Jun 2025 02:45:58 -0700 (PDT) From: Luca Weiss Date: Mon, 16 Jun 2025 11:45:12 +0200 Subject: [PATCH 2/2] phy: qualcomm: phy-qcom-eusb2-repeater: Don't zero-out registers 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: <20250616-eusb2-repeater-tuning-v1-2-9457ff0fbf75@fairphone.com> References: <20250616-eusb2-repeater-tuning-v1-0-9457ff0fbf75@fairphone.com> In-Reply-To: <20250616-eusb2-repeater-tuning-v1-0-9457ff0fbf75@fairphone.com> To: Vinod Koul , Kishon Vijay Abraham I , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Abel Vesa , Konrad Dybcio Cc: linux-arm-msm@vger.kernel.org, linux-phy@lists.infradead.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, Luca Weiss X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=ed25519-sha256; t=1750067155; l=4908; i=luca.weiss@fairphone.com; s=20250611; h=from:subject:message-id; bh=6T1KeQBp4rmWNlU1Qma86j+ASrbxg9OQGXA7EMGSZJk=; b=rSPmTAxMUHhEb664e4u0Vys8cvPW4tmbyb/rV6Zv+yEfeN+6fhIgjJlGo3IOUtIJSOPFY43+M 9wib0mmb16hCx5gSBR+CP/KR5UxeDUTgSInZD0AujDEsaLY7hZnJydV X-Developer-Key: i=luca.weiss@fairphone.com; a=ed25519; pk=O1aw+AAust5lEmgrNJ1Bs7PTY0fEsJm+mdkjExA69q8= Zeroing out registers does not happen in the downstream kernel, and will "tune" the repeater in surely unexpected ways since most registers don't have a reset value of 0x0. Stop doing that and instead just set the registers that are in the init sequence (though long term I don't think there's actually PMIC-specific init sequences, there's board specific tuning, but that's a story for another day). Fixes: 99a517a582fc ("phy: qualcomm: phy-qcom-eusb2-repeater: Zero out unto= uched tuning regs") Signed-off-by: Luca Weiss Reviewed-by: Konrad Dybcio Reviewed-by: Neil Armstrong --- drivers/phy/qualcomm/phy-qcom-eusb2-repeater.c | 63 +++++++++++++---------= ---- 1 file changed, 32 insertions(+), 31 deletions(-) diff --git a/drivers/phy/qualcomm/phy-qcom-eusb2-repeater.c b/drivers/phy/q= ualcomm/phy-qcom-eusb2-repeater.c index 6bd1b3c75c779d2db2744703262e132cc439f76e..a246c897fedb2edfd376ac5fdc0= 423607f8c562b 100644 --- a/drivers/phy/qualcomm/phy-qcom-eusb2-repeater.c +++ b/drivers/phy/qualcomm/phy-qcom-eusb2-repeater.c @@ -61,8 +61,13 @@ enum eusb2_reg_layout { LAYOUT_SIZE, }; =20 +struct eusb2_repeater_init_tbl_reg { + u8 reg; + u8 value; +}; + struct eusb2_repeater_cfg { - const u32 *init_tbl; + const struct eusb2_repeater_init_tbl_reg *init_tbl; int init_tbl_num; const char * const *vreg_list; int num_vregs; @@ -82,16 +87,16 @@ static const char * const pm8550b_vreg_l[] =3D { "vdd18", "vdd3", }; =20 -static const u32 pm8550b_init_tbl[NUM_TUNE_FIELDS] =3D { - [TUNE_IUSB2] =3D 0x8, - [TUNE_SQUELCH_U] =3D 0x3, - [TUNE_USB2_PREEM] =3D 0x5, +static const struct eusb2_repeater_init_tbl_reg pm8550b_init_tbl[] =3D { + { TUNE_IUSB2, 0x8 }, + { TUNE_SQUELCH_U, 0x3 }, + { TUNE_USB2_PREEM, 0x5 }, }; =20 -static const u32 smb2360_init_tbl[NUM_TUNE_FIELDS] =3D { - [TUNE_IUSB2] =3D 0x5, - [TUNE_SQUELCH_U] =3D 0x3, - [TUNE_USB2_PREEM] =3D 0x2, +static const struct eusb2_repeater_init_tbl_reg smb2360_init_tbl[] =3D { + { TUNE_IUSB2, 0x5 }, + { TUNE_SQUELCH_U, 0x3 }, + { TUNE_USB2_PREEM, 0x2 }, }; =20 static const struct eusb2_repeater_cfg pm8550b_eusb2_cfg =3D { @@ -129,17 +134,10 @@ static int eusb2_repeater_init(struct phy *phy) struct eusb2_repeater *rptr =3D phy_get_drvdata(phy); struct device_node *np =3D rptr->dev->of_node; struct regmap *regmap =3D rptr->regmap; - const u32 *init_tbl =3D rptr->cfg->init_tbl; - u8 tune_usb2_preem =3D init_tbl[TUNE_USB2_PREEM]; - u8 tune_hsdisc =3D init_tbl[TUNE_HSDISC]; - u8 tune_iusb2 =3D init_tbl[TUNE_IUSB2]; u32 base =3D rptr->base; - u32 val; + u32 poll_val; int ret; - - of_property_read_u8(np, "qcom,tune-usb2-amplitude", &tune_iusb2); - of_property_read_u8(np, "qcom,tune-usb2-disc-thres", &tune_hsdisc); - of_property_read_u8(np, "qcom,tune-usb2-preem", &tune_usb2_preem); + u8 val; =20 ret =3D regulator_bulk_enable(rptr->cfg->num_vregs, rptr->vregs); if (ret) @@ -147,21 +145,24 @@ static int eusb2_repeater_init(struct phy *phy) =20 regmap_write(regmap, base + EUSB2_EN_CTL1, EUSB2_RPTR_EN); =20 - regmap_write(regmap, base + EUSB2_TUNE_EUSB_HS_COMP_CUR, init_tbl[TUNE_EU= SB_HS_COMP_CUR]); - regmap_write(regmap, base + EUSB2_TUNE_EUSB_EQU, init_tbl[TUNE_EUSB_EQU]); - regmap_write(regmap, base + EUSB2_TUNE_EUSB_SLEW, init_tbl[TUNE_EUSB_SLEW= ]); - regmap_write(regmap, base + EUSB2_TUNE_USB2_HS_COMP_CUR, init_tbl[TUNE_US= B2_HS_COMP_CUR]); - regmap_write(regmap, base + EUSB2_TUNE_USB2_EQU, init_tbl[TUNE_USB2_EQU]); - regmap_write(regmap, base + EUSB2_TUNE_USB2_SLEW, init_tbl[TUNE_USB2_SLEW= ]); - regmap_write(regmap, base + EUSB2_TUNE_SQUELCH_U, init_tbl[TUNE_SQUELCH_U= ]); - regmap_write(regmap, base + EUSB2_TUNE_RES_FSDIF, init_tbl[TUNE_RES_FSDIF= ]); - regmap_write(regmap, base + EUSB2_TUNE_USB2_CROSSOVER, init_tbl[TUNE_USB2= _CROSSOVER]); + /* Write registers from init table */ + for (int i =3D 0; i < rptr->cfg->init_tbl_num; i++) + regmap_write(regmap, base + rptr->cfg->init_tbl[i].reg, + rptr->cfg->init_tbl[i].value); =20 - regmap_write(regmap, base + EUSB2_TUNE_USB2_PREEM, tune_usb2_preem); - regmap_write(regmap, base + EUSB2_TUNE_HSDISC, tune_hsdisc); - regmap_write(regmap, base + EUSB2_TUNE_IUSB2, tune_iusb2); + /* Override registers from devicetree values */ + if (!of_property_read_u8(np, "qcom,tune-usb2-amplitude", &val)) + regmap_write(regmap, base + EUSB2_TUNE_USB2_PREEM, val); =20 - ret =3D regmap_read_poll_timeout(regmap, base + EUSB2_RPTR_STATUS, val, v= al & RPTR_OK, 10, 5); + if (!of_property_read_u8(np, "qcom,tune-usb2-disc-thres", &val)) + regmap_write(regmap, base + EUSB2_TUNE_HSDISC, val); + + if (!of_property_read_u8(np, "qcom,tune-usb2-preem", &val)) + regmap_write(regmap, base + EUSB2_TUNE_IUSB2, val); + + /* Wait for status OK */ + ret =3D regmap_read_poll_timeout(regmap, base + EUSB2_RPTR_STATUS, poll_v= al, + poll_val & RPTR_OK, 10, 5); if (ret) dev_err(rptr->dev, "initialization timed-out\n"); =20 --=20 2.49.0