From patchwork Thu Nov 23 13:47:21 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Frieder Schrempf X-Patchwork-Id: 168947 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:ce62:0:b0:403:3b70:6f57 with SMTP id o2csp457187vqx; Thu, 23 Nov 2023 05:48:15 -0800 (PST) X-Google-Smtp-Source: AGHT+IErP6bDCxHrCViaoboJuh81rvwM5ktbNSmq0SdwZWp3I/6M9qYu6EAA0yxpQD02GO2E9644 X-Received: by 2002:a17:902:ce81:b0:1cc:ef37:664a with SMTP id f1-20020a170902ce8100b001ccef37664amr5956945plg.31.1700747294931; Thu, 23 Nov 2023 05:48:14 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1700747294; cv=none; d=google.com; s=arc-20160816; b=V1f1OhPYpHTYdzsGPoR+/aswEkHA+x0Xj2PwAse+hVVd9ro1Nw5zdCMp3lbnJxbxKk BH/dqMeDyxXjnG9IRSkXiCpVvO3UjSx+J4B9wqaxUJk3fYMbQ6219gO9/9ZyXnJAm1sM vSl2kxvOPlxloe6hiJ/pQ/TIomqLwnu9qnedjg0HSeaJ04N09kFhvaSkClLKeSFmY0Bs yjZOuIsKvSHR60Yl7oC8IE96zsUHVu0wEKLrt00UTFyRbdWtLWTsw6AVzujzx6EFQNNk PnZjpeZHw+XyxVlQ+tkd9d/mC54XtH1XYsq2QGMXZaERr798tlrSY+AOiveLdLLggeWy WkOg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=Pi1atu12zkAcY/0bmm6zXxbZy+hVAt8zjD1oA7GM5ps=; fh=iR1fr8PdTC8vPagh5AmXXcRzQynCfDR5msaBub/CrEM=; b=0L2ASDbI7vIZOutgZEriGIkbngiX4m69ZOo/cLHQirQnbABY+5Dl4kE6SRwEFbhTlg u3HU5z40Ewyx5PepFkYJjbRIQWflF6EZHzUBufUnfAiYMDh0XPKL7WaS+fG7+GfbRQth RIFm4cPz+6DscE6lFYrPJIcNXMqDINh4zBMTWelCgXr2Stf4USgO0PX4nKf1p4w+GVPB z4PtvqK7k7qocXuyW2OdZfruF4aJHc4ab02+Qxe8MuZ8UMGxEWqrAWfT/OfVtrlwM7m8 7jokADbPCdg7K/gWT5pmh5eDldvZLf6uTJuhoscQNg6UKdHs3S+7rrxEXPsHVAFsqaSI /dkw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@fris.de header.s=dkim header.b=DjSml9xe; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.32 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=fris.de Received: from agentk.vger.email (agentk.vger.email. [23.128.96.32]) by mx.google.com with ESMTPS id m5-20020a1709026bc500b001c8944c933dsi1108376plt.380.2023.11.23.05.48.14 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 23 Nov 2023 05:48:14 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.32 as permitted sender) client-ip=23.128.96.32; Authentication-Results: mx.google.com; dkim=pass header.i=@fris.de header.s=dkim header.b=DjSml9xe; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.32 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=fris.de Received: from out1.vger.email (depot.vger.email [IPv6:2620:137:e000::3:0]) by agentk.vger.email (Postfix) with ESMTP id 7A16182AE5F5; Thu, 23 Nov 2023 05:48:12 -0800 (PST) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.11 at agentk.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1345613AbjKWNrn (ORCPT + 99 others); Thu, 23 Nov 2023 08:47:43 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:37506 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1345592AbjKWNri (ORCPT ); Thu, 23 Nov 2023 08:47:38 -0500 Received: from mail.fris.de (mail.fris.de [116.203.77.234]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id EA1121B2 for ; Thu, 23 Nov 2023 05:47:44 -0800 (PST) Received: from [127.0.0.1] (localhost [127.0.0.1]) by localhost (Mailerdaemon) with ESMTPSA id 18DBAC00AE; Thu, 23 Nov 2023 14:47:43 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=fris.de; s=dkim; t=1700747263; h=from:subject:date:message-id:to:cc:mime-version: content-transfer-encoding:in-reply-to:references; bh=Pi1atu12zkAcY/0bmm6zXxbZy+hVAt8zjD1oA7GM5ps=; b=DjSml9xeT0BDWxXcWv3y8oXbTULW96QVQjWzGnwMfFpNWivzdsiVT/uBAlv1k5+4moGrdC sRang3SAPExGwUQtYXPYVrLtf82cNCbGPQSrUR3Nq858jJtW2QDpRFgbk+1Wx74pEl9IH7 iI0j1/kx7OhA0VeQKrfS2Gb2kcNi9Ko+ZwFX4HiBN/D+g1ZLV1JkDz/E8yLbw9g1jMtO7g 6rgydz+EUzbmK93ooyqdGeRKEvNxHSxyaoSFa4pc0o9PO56+CH/YQoGZqqpl9Nm8eQdxZT FR85dQXw8PxFojCUf1vURgBgXf+DmnO+X05IEQHDVm6iX5b2yGVNt+msGcxWLw== From: Frieder Schrempf To: Greg Kroah-Hartman , linux-kernel@vger.kernel.org, linux-usb@vger.kernel.org, Matthias Kaehlcke Cc: Frieder Schrempf , Anand Moon , Benjamin Bara , Icenowy Zheng , Javier Carrasco , Rob Herring , =?utf-8?q?Uwe_Kleine-K=C3=B6nig?= Subject: [PATCH 2/2] usb: misc: onboard_usb_hub: Add support for Cypress CY7C6563x Date: Thu, 23 Nov 2023 14:47:21 +0100 Message-ID: <20231123134728.709533-2-frieder@fris.de> In-Reply-To: <20231123134728.709533-1-frieder@fris.de> References: <20231123134728.709533-1-frieder@fris.de> MIME-Version: 1.0 X-Last-TLS-Session-Version: TLSv1.3 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 autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on agentk.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 (agentk.vger.email [0.0.0.0]); Thu, 23 Nov 2023 05:48:12 -0800 (PST) X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1783362795656734470 X-GMAIL-MSGID: 1783362795656734470 From: Frieder Schrempf The Cypress CY7C6563x is a 2/4-port USB 2.0 hub. Add support for this hub in the driver in order to bring up reset, supply or clock dependencies. There is no reset pulse width given in the datasheet so we expect a minimal value of 1us to be enough. This hasn't been tested though due to lack of hardware which has the reset connected to a GPIO. Signed-off-by: Frieder Schrempf --- drivers/usb/misc/onboard_usb_hub.c | 1 + drivers/usb/misc/onboard_usb_hub.h | 6 ++++++ 2 files changed, 7 insertions(+) diff --git a/drivers/usb/misc/onboard_usb_hub.c b/drivers/usb/misc/onboard_usb_hub.c index e710e3c82ba9b..e2e011036d359 100644 --- a/drivers/usb/misc/onboard_usb_hub.c +++ b/drivers/usb/misc/onboard_usb_hub.c @@ -440,6 +440,7 @@ static void onboard_hub_usbdev_disconnect(struct usb_device *udev) static const struct usb_device_id onboard_hub_id_table[] = { { USB_DEVICE(VENDOR_ID_CYPRESS, 0x6504) }, /* CYUSB33{0,1,2}x/CYUSB230x 3.0 */ { USB_DEVICE(VENDOR_ID_CYPRESS, 0x6506) }, /* CYUSB33{0,1,2}x/CYUSB230x 2.0 */ + { USB_DEVICE(VENDOR_ID_CYPRESS, 0x6570) }, /* CY7C6563x 2.0 */ { USB_DEVICE(VENDOR_ID_GENESYS, 0x0608) }, /* Genesys Logic GL850G USB 2.0 */ { USB_DEVICE(VENDOR_ID_GENESYS, 0x0610) }, /* Genesys Logic GL852G USB 2.0 */ { USB_DEVICE(VENDOR_ID_GENESYS, 0x0620) }, /* Genesys Logic GL3523 USB 3.1 */ diff --git a/drivers/usb/misc/onboard_usb_hub.h b/drivers/usb/misc/onboard_usb_hub.h index c4e24a7b92904..67b2cc1e15e67 100644 --- a/drivers/usb/misc/onboard_usb_hub.h +++ b/drivers/usb/misc/onboard_usb_hub.h @@ -31,6 +31,11 @@ static const struct onboard_hub_pdata cypress_hx3_data = { .num_supplies = 2, }; +static const struct onboard_hub_pdata cypress_hx2vl_data = { + .reset_us = 1, + .num_supplies = 1, +}; + static const struct onboard_hub_pdata genesys_gl850g_data = { .reset_us = 3, .num_supplies = 1, @@ -54,6 +59,7 @@ static const struct of_device_id onboard_hub_match[] = { { .compatible = "usb451,8142", .data = &ti_tusb8041_data, }, { .compatible = "usb4b4,6504", .data = &cypress_hx3_data, }, { .compatible = "usb4b4,6506", .data = &cypress_hx3_data, }, + { .compatible = "usb4b4,6570", .data = &cypress_hx2vl_data, }, { .compatible = "usb5e3,608", .data = &genesys_gl850g_data, }, { .compatible = "usb5e3,610", .data = &genesys_gl852g_data, }, { .compatible = "usb5e3,620", .data = &genesys_gl852g_data, },