From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mx0a-0031df01.pphosted.com (mx0a-0031df01.pphosted.com [205.220.168.131]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 7C52D299AB3 for ; Thu, 17 Jul 2025 12:47:46 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=205.220.168.131 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1752756468; cv=none; b=M35ae1Sprqi1CyKvQPh69Be7WSG2NZfSDGseSsdxan453gkBeaiOs+IE2OG5X+MpgNDJCXGk0jCmnuUAZrLS2BHRkpPHMx2VgiMaosVG6k24ePrF0nkSS+8na6tzCCa8njF4qpfDWwaOqA3db8L6VDjPjDwlNfF/+XbfBhNBd4c= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1752756468; c=relaxed/simple; bh=FDOpIm3JXs32+N3twwxHsuwm2o2bXbMkn/E0Mx2MyIo=; h=From:Subject:Date:Message-Id:MIME-Version:Content-Type:To:Cc; b=hkP/+Gr7q5rgaQC75SFi+U8VLRrs0kMupHMNr1Uzr9SaxubPhnbV1oTNcgWTXqqSCPVzGP/9zSzP0lRXolIXgbFj9oXTMQVhjGcQojdmag+nhBl/FEE1ZFSH9Q7NRyu9PCnCmvLOb1WyooBHMgLS0lvFO2gBgds05zarJxJrRpM= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oss.qualcomm.com; spf=pass smtp.mailfrom=oss.qualcomm.com; dkim=pass (2048-bit key) header.d=qualcomm.com header.i=@qualcomm.com header.b=cmno7Dh0; arc=none smtp.client-ip=205.220.168.131 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oss.qualcomm.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oss.qualcomm.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=qualcomm.com header.i=@qualcomm.com header.b="cmno7Dh0" Received: from pps.filterd (m0279863.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.2/8.18.1.2) with ESMTP id 56HBsJ0U022228 for ; Thu, 17 Jul 2025 12:47:46 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=qualcomm.com; h= cc:content-transfer-encoding:content-type:date:from:message-id :mime-version:subject:to; s=qcppdkim1; bh=LeXeukrpee7b7RMH1xIU9a m+NXGPwNaWHrc/G6jR6aE=; b=cmno7Dh01q1F6as0M7g3kh2DAMeuvzKoJV4LwJ Ggy0/n/5TjfNWW12ttWn0vfQ2HPEUX1Zk5c8oG9PCAQXYcfUzUm9YF8K1M9DmYR2 WwP5iwapNNUqMBolK1oqhTBG7aSW9MsbIk02kNXeAISHB/xcMGqMutr/U+2FJhms j3BiCgYo7PUZvkQSu3E69hv0T6rUECEDXwrDuMnyWW4GivEliEzJxzNioqvg01B+ hsm++TJgjt0khK7zGhgdBJO2Jx+kiYGNlvtK1saHLwbzdoqqV14qrnqyL7Y7X/K4 MHI46ZPDlx3FADxzArTyI2xUblpEISgj8PARtjvPfPv+5p2w== Received: from mail-pj1-f72.google.com (mail-pj1-f72.google.com [209.85.216.72]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 47wqsy7k3w-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128 verify=NOT) for ; Thu, 17 Jul 2025 12:47:45 +0000 (GMT) Received: by mail-pj1-f72.google.com with SMTP id 98e67ed59e1d1-3132c8437ffso1706171a91.1 for ; Thu, 17 Jul 2025 05:47:45 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1752756465; x=1753361265; h=cc:to:content-transfer-encoding:mime-version:message-id:date :subject:from:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=LeXeukrpee7b7RMH1xIU9am+NXGPwNaWHrc/G6jR6aE=; b=cXwBv5CjAmc5x/miCcKyGt1VriHNoKkQ/S8y7uGCGkiDrduvFIg+fPJDG7E+EakheX l1HTmLIdXGQrEq3+v/M9tbPz++XDxpRDSWhe50TIz3IUQ1di4GOrjZRsIb66GwMNrAIH Qdk43RvED/8Z0mlNpCR+9/clRjdlZlYaO1w2+n+IX+2LTfHEEXls8ZdFiQON9oYVc1ar h/dQL/lD1Fhx9SgsMcrJ+Q1KXQPYYd/S2ONKBr4ezA/SDV4YtsOQ0Yw+WocYXP+20URD Zfnfa8YcXl1qIRI7+nntvM8EjvfqzpP0Vi+lEQgyHxksFCD0dBb+/ynm7heoXwvwQbUc UYtA== X-Forwarded-Encrypted: i=1; AJvYcCXPqCXue/DaOuA9Z029+MNwluPW/tgvlpJ+y/JPxontQH69il0OkfsYMNDd/6P9GzyiXiPY5Pq/FL5M@vger.kernel.org X-Gm-Message-State: AOJu0Yy/cCjGrVi1DMvXzMltdwxNZEHWdD4ixH2GZv0YAc0FEnq/QMXv mct8exZhWZGcJ5D3VHMkShnKVk7Z9drw3I3CIse9V8xc+TsKcLlNCCcYN/xlXEoA2NKo2xI3uD6 Sqtf9pmHa55yXPc9wqeVQ1h0cRh6MOZaW5E8GK5X+4YnZlSjkre9HMzww/9FI97n6 X-Gm-Gg: ASbGncsW/lVUZwI9SG3YJ3NG4BpP030kKajo46OzsNyLQ9x8s9EE2Kw2qFullJE5eNf RaGve7JUAHE2YfkRfDFGk9INHS1DiYs1PDqizxBl5GosoYxmAKHcdh8gxIs7XPKcU8fGXe712AS xHWeCau3dfGHyapSu6U/VAWUvsPuRDWU6t5EIBgUTMTzjZjF1Sm0c9RYGOnVShbcZC2Z8ulFIC8 VsjUbcsq3ZcyuUInVbVPv7RDTJ2Zz8lWfDgW1ICYkZmEkQBK7og2PUzu7uKCOhpAKWiAQGGrN4I q15t5nu8oUaxt/s4dn04A94/4rhFw4ruxEKLhDHutm0WU3+GHUcnc7GtqJ24NyKI7OpQVoDq4cG r X-Received: by 2002:a17:90b:5485:b0:311:b0ec:135b with SMTP id 98e67ed59e1d1-31c9f47c799mr9338564a91.24.1752756464328; Thu, 17 Jul 2025 05:47:44 -0700 (PDT) X-Google-Smtp-Source: AGHT+IH1wjM33GNzk4EjXIuBxBox9zlV6x0yfPGvWiojEJ5RcfRJcqMok+3UnTg5LXDIQ6jplXko8A== X-Received: by 2002:a17:90b:5485:b0:311:b0ec:135b with SMTP id 98e67ed59e1d1-31c9f47c799mr9338513a91.24.1752756463814; Thu, 17 Jul 2025 05:47:43 -0700 (PDT) Received: from hu-spratap-hyd.qualcomm.com ([202.46.22.19]) by smtp.gmail.com with ESMTPSA id 98e67ed59e1d1-31caf828a0esm1505283a91.42.2025.07.17.05.47.35 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 17 Jul 2025 05:47:43 -0700 (PDT) From: Shivendra Pratap Subject: [PATCH v11 0/8] Implement vendor resets for PSCI SYSTEM_RESET2 Date: Thu, 17 Jul 2025 18:16:46 +0530 Message-Id: <20250717-arm-psci-system_reset2-vendor-reboots-v11-0-df3e2b2183c3@oss.qualcomm.com> Precedence: bulk X-Mailing-List: devicetree@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 8bit X-B4-Tracking: v=1; b=H4sIALbweGgC/52NQQ6CMBREr2K69pNSilRX3sMQA+1HmgjF/kokh LtbiDs3xs0kM8m8NzNCb5HYaTczj6Ml6/pY0nS/Y7qt+huCNXFggoucF/wIle9gIG2BJgrYXT0 SBgEj9sZ58Fg7FwjkQSvOpawa3bDIGjw29rWJLmXsraXg/LR5x5Sv80eR8h8V8QYcsChkVqgsM 1KfHVHyeFZ37bouibGa/6LWwmS1UqJGlX9Ty2VZ3lMM8Rc6AQAA X-Change-ID: 20250709-arm-psci-system_reset2-vendor-reboots-46c80044afcf To: Bartosz Golaszewski , Bjorn Andersson , Sebastian Reichel , Rob Herring , Sudeep Holla , Souvik Chakravarty , Krzysztof Kozlowski , Conor Dooley , Andy Yan , Mark Rutland , Lorenzo Pieralisi , Arnd Bergmann , Konrad Dybcio , cros-qcom-dts-watchers@chromium.org, Vinod Koul , Catalin Marinas , Will Deacon , Florian Fainelli Cc: Dmitry Baryshkov , Mukesh Ojha , Stephen Boyd , Andre Draszik , linux-pm@vger.kernel.org, linux-kernel@vger.kernel.org, devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-arm-msm@vger.kernel.org, Elliot Berman , Shivendra Pratap , Srinivas Kandagatla , Elliot Berman , Konrad Dybcio , Konrad Dybcio X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=ed25519-sha256; t=1752756455; l=10856; i=shivendra.pratap@oss.qualcomm.com; s=20250710; h=from:subject:message-id; bh=FDOpIm3JXs32+N3twwxHsuwm2o2bXbMkn/E0Mx2MyIo=; b=4WgSjy8wsL29L/NLUmave9PdcgpmmX/vkKgVK68TaF9RzVd/pcei/CkuEsdO9ODllKtS8mSOb v+zxWjx01lqDptfebGBU2+P6xZFi3pFqTPeCHoXYkHTxBH0nHPt2nVJ X-Developer-Key: i=shivendra.pratap@oss.qualcomm.com; a=ed25519; pk=CpsuL7yZ8NReDPhGgq6Xn/SRoa59mAvzWOW0QZoo4gw= X-Proofpoint-Spam-Details-Enc: AW1haW4tMjUwNzE3MDExMiBTYWx0ZWRfX8Qo9+FHfN6ix mnYKSF0W2Wv/PccF9hJWh5IKCH1yN0AWQ6v+v4vhoZQfhAy+icPYVgFIpCx6rxoii/eEWSq9MnO wWDiEIGBp53MT0ALVEjNrk8on1KttgLb7o3uPr+pqWRhZBRORnm2nwZtcVGLoNS7eIQcfqd0raN DvbTA3BYAThHYgOPPfz6uo4XqtbAF5akRYjuEvZwW0ioMkWeTDuHUIHgkLedPnn4tv5SciZfGTV 3M5CLYFj1EYzOjRZaGZjkULPBldSgBGSP5YFiZftY10ZNePnSUK67TnIKRiuywvP+XBQjdtNKhx YrFFKA8/0K6mWzhE0RAutrFCUWf3QlG1IbcLMHUvUDmRx+Qu7Yex3Kh3pZEWuv6cSST0oqdDTMu ajKI3u5UDVcBMaLXzZpHlE0CQDPi18tH7bL/rnsDRfSPem9tkBOFjuU1SWK3bOmiNXyh0vg3 X-Proofpoint-GUID: lYHGvHpSQJMZRnubSesI4YPqH_BjEBHk X-Proofpoint-ORIG-GUID: lYHGvHpSQJMZRnubSesI4YPqH_BjEBHk X-Authority-Analysis: v=2.4 cv=McZsu4/f c=1 sm=1 tr=0 ts=6878f0f1 cx=c_pps a=RP+M6JBNLl+fLTcSJhASfg==:117 a=fChuTYTh2wq5r3m49p7fHw==:17 a=IkcTkHD0fZMA:10 a=Wb1JkmetP80A:10 a=VwQbUJbxAAAA:8 a=COk6AnOGAAAA:8 a=EUspDBNiAAAA:8 a=6CcJ-q_IyJskFRMnly8A:9 a=3ZKOabzyN94A:10 a=QEXdDO2ut3YA:10 a=iS9zxrgQBfv6-_F4QbHw:22 a=TjNXssC_j7lpFel5tvFf:22 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1099,Hydra:6.1.9,FMLib:17.12.80.40 definitions=2025-07-17_01,2025-07-17_01,2025-03-28_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 malwarescore=0 mlxlogscore=999 impostorscore=0 mlxscore=0 phishscore=0 adultscore=0 lowpriorityscore=0 bulkscore=0 clxscore=1015 suspectscore=0 spamscore=0 priorityscore=1501 classifier=spam authscore=0 authtc=n/a authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.19.0-2505280000 definitions=main-2507170112 The PSCI SYSTEM_RESET2 call allows vendor firmware to define additional reset types which could be mapped to the reboot argument. User-space should be able to reboot a device into different operational boot-states supported by underlying bootloader and firmware. Generally, some HW registers need to be written, based on which the bootloader and firmware decide the next boot state of device, after the reset. For example, a requirement on Qualcomm platforms may state that reboot with "bootloader" command, should reboot the device into bootloader flashing mode and reboot with “edl” command, should reboot the device into an Emergency flashing mode. Setting up such reboots on Qualcomm devices can be inconsistent across SoC platforms and may require setting different HW registers, where some of these registers may not be accessible to HLOS. These knobs evolve over product generations and require more drivers. PSCI defines a vendor-specific reset in SYSTEM_RESET2 spec, which enables the firmware to take care of underlying setting for any such supported vendor-specific reboot. Qualcomm firmwares are beginning to support and expose PSCI SYSTEM_RESET2 vendor-specific reset types to simplify driver requirements from Linux. With such support added in the firmware, we now need a Linux interface which can make use of the firmware calls for PSCI vendor-specific resets. This will align such reboot requirement across platforms and vendors. The current psci driver supports two types of resets – SYSTEM_RESET2 Arch warm-reset and SYSTEM_RESET cold-reset. The patchset introduces the PSCI SYSTEM_RESET2 vendor-specific reset into the reset path of the psci driver and aligns it to work with reboot system call - LINUX_REBOOT_CMD_RESTART2, when used along with a supported string-based command in “*arg”. The patchset uses reboot-mode based commands, to define the supported vendor reset-types commands in psci device tree node and registers these commands with the reboot-mode framework. The PSCI vendor-specific reset takes two arguments, being, reset_type and cookie as defined by the spec. To accommodate this requirement, enhance the reboot-mode framework to support two 32-bit arguments by switching to 64-bit magic values. Along this line, the patchset also extends the reboot-mode framework to add a non-device-based registration function, which will allow drivers to register using device tree node, while keeping backward compatibility for existing users of reboot-mode. This will enable psci driver to register for reboot-mode and implement a write function, which will save the magic and then use it in psci reset path to make a vendor-specific reset call into the firmware. In addition, the patchset will expose a sysfs entry interface within reboot-mode which can be used by userspace to view the supported reboot-mode commands. The list of vendor-specific reset commands remains open due to divergent requirements across vendors, but this can be streamlined and standardized through dedicated device tree bindings. Currently three drivers register with reboot-mode framework - syscon-reboot-mode, nvmem-reboot-mode and qcom-pon. Consolidated list of commands currently added across various vendor DTs: mode-loader mode-normal mode-bootloader mode-charge mode-fastboot mode-reboot-ab-update mode-recovery mode-rescue mode-shutdown-thermal mode-shutdown-thermal-battery Detailed list of commands being used by syscon-reboot-mode: arm64/boot/dts/exynos/exynosautov9.dtsi: mode-bootloader = ; mode-fastboot = ; mode-recovery = ; arm64/boot/dts/exynos/google/gs101.dtsi: mode-bootloader = <0xfc>; mode-charge = <0x0a>; mode-fastboot = <0xfa>; mode-reboot-ab-update = <0x52>; mode-recovery = <0xff>; mode-rescue = <0xf9>; mode-shutdown-thermal = <0x51>; mode-shutdown-thermal-battery = <0x51>; arm64/boot/dts/hisilicon/hi3660-hikey960.dts: mode-normal = <0x77665501>; mode-bootloader = <0x77665500>; mode-recovery = <0x77665502>; arm64/boot/dts/hisilicon/hi6220-hikey.dts: mode-normal = <0x77665501>; mode-bootloader = <0x77665500>; mode-recovery = <0x77665502>; arm64/boot/dts/rockchip/px30.dtsi: mode-bootloader = ; mode-fastboot = ; mode-loader = ; mode-normal = ; mode-recovery = ; arm64/boot/dts/rockchip/rk3308.dtsi: mode-bootloader = ; mode-loader = ; mode-normal = ; mode-recovery = ; mode-fastboot = ; arm64/boot/dts/rockchip/rk3566-lckfb-tspi.dts: mode-normal = ; mode-loader = ; mode-recovery = ; mode-bootloader = ; Detailed list of commands being used by nvmem-reboot-mode: arm64/boot/dts/qcom/pmXXXX.dtsi:(multiple qcom DTs) mode-recovery = <0x01>; mode-bootloader = <0x02>; Previous discussions around SYSTEM_RESET2: - https://lore.kernel.org/lkml/20230724223057.1208122-2-quic_eberman@quicinc.com/T/ - https://lore.kernel.org/all/4a679542-b48d-7e11-f33a-63535a5c68cb@quicinc.com/ Signed-off-by: Elliot Berman Signed-off-by: Shivendra Pratap Changes in v11: - Remove reference of cookie in reboot-mode – Arnd/Rob - Introduce 64-bit magic in reboot-mode to accommodate two 32-bit arguments – Arnd - Change reset-type to reboot-mode in psci device tree binding – Arnd - binding no more mandates two arguments as in v10. - dt changes done to support this binding. - Remove obvious comments in psci reset path – Konrad - Merge sysfs and ABI doc into single patch. - Fix compilation issue on X86 configs. - Fix warnings for pr_fmt. - Link to v10: https://lore.kernel.org/all/569f154d-c714-1714-b898-83a42a38771c@oss.qualcomm.com/ Changes in V10: - Change in reset-type binding to make cookie as a mandatory argument. - Change reboot-mode binding to support additional argument "cookie". From Lorenzo: - Use reboot-mode framework for implementing vendor-resets. - Modify reboot-mode framework to support two arguments (magic and cookie). - Expose sysfs for supported reboot-modes commands. - List out all existing reboot-mode commands and their users. - Added this to cover letter. From Dmitry: - Modify reboot-mode to support non-device based registration. - Modify reboot-mode to create a class and device to expose sysfs interface. - Link to v9: https://lore.kernel.org/all/20250303-arm-psci-system_reset2-vendor-reboots-v9-0-b2cf4a20feda@oss.qualcomm.com/ Changes in v9: - Don't fallback to architecturally defined resets from Lorenzo. - Link to v8: https://lore.kernel.org/r/20241107-arm-psci-system_reset2-vendor-reboots-v8-0-e8715fa65cb5@quicinc.com Changes in v8: - Code style nits from Stephen - Add rb3gen2 - Link to v7: https://lore.kernel.org/r/20241028-arm-psci-system_reset2-vendor-reboots-v7-0-a4c40b0ebc54@quicinc.com Changes in v7: - Code style nits from Stephen - Dropped unnecessary hunk from the sa8775p-ride patch - Link to v6: https://lore.kernel.org/r/20241018-arm-psci-system_reset2-vendor-reboots-v6-0-50cbe88b0a24@quicinc.com Changes in v6: - Rebase to v6.11 and fix trivial conflicts in qcm6490-idp - Add sa8775p-ride support (same as qcm6490-idp) - Link to v5: https://lore.kernel.org/r/20240617-arm-psci-system_reset2-vendor-reboots-v5-0-086950f650c8@quicinc.com Changes in v5: - Drop the nested "items" in prep for future dtschema tools - Link to v4: https://lore.kernel.org/r/20240611-arm-psci-system_reset2-vendor-reboots-v4-0-98f55aa74ae8@quicinc.com Changes in v4: - Change mode- properties from uint32-matrix to uint32-array - Restructure the reset-types node so only the restriction is in the if/then schemas and not the entire definition - Link to v3: https://lore.kernel.org/r/20240515-arm-psci-system_reset2-vendor-reboots-v3-0-16dd4f9c0ab4@quicinc.com Changes in v3: - Limit outer number of items to 1 for mode-* properties - Move the reboot-mode for psci under a subnode "reset-types" - Fix the DT node in qcm6490-idp so it doesn't overwrite the one from sc7820.dtsi - Link to v2: https://lore.kernel.org/r/20240414-arm-psci-system_reset2-vendor-reboots-v2-0-da9a055a648f@quicinc.com Changes in v2: - Fixes to schema as suggested by Rob and Krzysztof - Add qcm6490 idp as first Qualcomm device to support - Link to v1: https://lore.kernel.org/r/20231117-arm-psci-system_reset2-vendor-reboots-v1-0-03c4612153e2@quicinc.com Changes in v1: - Reference reboot-mode bindings as suggeted by Rob. - Link to RFC: https://lore.kernel.org/r/20231030-arm-psci-system_reset2-vendor-reboots-v1-0-dcdd63352ad1@quicinc.com --- Elliot Berman (4): dt-bindings: arm: Document reboot mode magic arm64: dts: qcom: qcm6490-idp: Add PSCI SYSTEM_RESET2 types arm64: dts: qcom: qcs6490-rb3gen2: Add PSCI SYSTEM_RESET2 types arm64: dts: qcom: sa8775p-ride: Add PSCI SYSTEM_RESET2 types Shivendra Pratap (4): power: reset: reboot-mode: Add device tree node-based registration power: reset: reboot-mode: Add support for 64 bit magic firmware: psci: Implement vendor-specific resets as reboot-mode power: reset: reboot-mode: Expose sysfs for registered reboot_modes .../testing/sysfs-class-reboot-mode-reboot_modes | 38 ++++++ Documentation/devicetree/bindings/arm/psci.yaml | 43 +++++++ arch/arm64/boot/dts/qcom/qcm6490-idp.dts | 7 + arch/arm64/boot/dts/qcom/qcs6490-rb3gen2.dts | 7 + arch/arm64/boot/dts/qcom/sa8775p-ride.dtsi | 7 + arch/arm64/boot/dts/qcom/sa8775p.dtsi | 2 +- arch/arm64/boot/dts/qcom/sc7280.dtsi | 2 +- drivers/firmware/psci/Kconfig | 1 + drivers/firmware/psci/psci.c | 53 +++++++- drivers/power/reset/nvmem-reboot-mode.c | 5 +- drivers/power/reset/qcom-pon.c | 5 +- drivers/power/reset/reboot-mode.c | 142 ++++++++++++++++----- drivers/power/reset/syscon-reboot-mode.c | 5 +- include/linux/reboot-mode.h | 7 +- 14 files changed, 281 insertions(+), 43 deletions(-) --- base-commit: 024e09e444bd2b06aee9d1f3fe7b313c7a2df1bb change-id: 20250709-arm-psci-system_reset2-vendor-reboots-46c80044afcf Best regards, -- Shivendra Pratap