From mboxrd@z Thu Jan 1 00:00:00 1970 From: Thierry Reding Subject: [PATCH v2 3/6] usb: host: xhci-tegra: Add Tegra186 XUSB support Date: Mon, 1 Apr 2019 12:40:47 +0200 Message-ID: <20190401104050.31355-4-thierry.reding@gmail.com> References: <20190401104050.31355-1-thierry.reding@gmail.com> Mime-Version: 1.0 Content-Transfer-Encoding: 8bit Return-path: In-Reply-To: <20190401104050.31355-1-thierry.reding@gmail.com> Sender: linux-kernel-owner@vger.kernel.org To: Greg Kroah-Hartman , Thierry Reding Cc: Jon Hunter , linux-usb@vger.kernel.org, linux-tegra@vger.kernel.org, linux-kernel@vger.kernel.org, Mathias Nyman List-Id: linux-tegra@vger.kernel.org From: JC Kuo This commit adds Tegra186 XUSB host mode controller support. This is very similar to the existing support for Tegra124 and Tegra210, except that the number of ports and PHYs differs and the IPFS wrapper being gone. Signed-off-by: JC Kuo Acked-by: Mathias Nyman Signed-off-by: Thierry Reding --- drivers/usb/host/xhci-tegra.c | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/drivers/usb/host/xhci-tegra.c b/drivers/usb/host/xhci-tegra.c index 4d133bbabdda..294158113d62 100644 --- a/drivers/usb/host/xhci-tegra.c +++ b/drivers/usb/host/xhci-tegra.c @@ -1423,9 +1423,34 @@ static const struct tegra_xusb_soc tegra210_soc = { }; MODULE_FIRMWARE("nvidia/tegra210/xusb.bin"); +static const char * const tegra186_supply_names[] = { +}; + +static const struct tegra_xusb_phy_type tegra186_phy_types[] = { + { .name = "usb3", .num = 3, }, + { .name = "usb2", .num = 3, }, + { .name = "hsic", .num = 1, }, +}; + +static const struct tegra_xusb_soc tegra186_soc = { + .firmware = "nvidia/tegra186/xusb.bin", + .supply_names = tegra186_supply_names, + .num_supplies = ARRAY_SIZE(tegra186_supply_names), + .phy_types = tegra186_phy_types, + .num_types = ARRAY_SIZE(tegra186_phy_types), + .ports = { + .usb3 = { .offset = 0, .count = 3, }, + .usb2 = { .offset = 3, .count = 3, }, + .hsic = { .offset = 6, .count = 1, }, + }, + .scale_ss_clock = false, + .has_ipfs = false, +}; + static const struct of_device_id tegra_xusb_of_match[] = { { .compatible = "nvidia,tegra124-xusb", .data = &tegra124_soc }, { .compatible = "nvidia,tegra210-xusb", .data = &tegra210_soc }, + { .compatible = "nvidia,tegra186-xusb", .data = &tegra186_soc }, { }, }; MODULE_DEVICE_TABLE(of, tegra_xusb_of_match); -- 2.21.0 From mboxrd@z Thu Jan 1 00:00:00 1970 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 Subject: [v2,3/6] usb: host: xhci-tegra: Add Tegra186 XUSB support From: Thierry Reding Message-Id: <20190401104050.31355-4-thierry.reding@gmail.com> Date: Mon, 1 Apr 2019 12:40:47 +0200 To: Greg Kroah-Hartman , Thierry Reding Cc: Jon Hunter , linux-usb@vger.kernel.org, linux-tegra@vger.kernel.org, linux-kernel@vger.kernel.org, Mathias Nyman List-ID: RnJvbTogSkMgS3VvIDxqY2t1b0BudmlkaWEuY29tPgoKVGhpcyBjb21taXQgYWRkcyBUZWdyYTE4 NiBYVVNCIGhvc3QgbW9kZSBjb250cm9sbGVyIHN1cHBvcnQuIFRoaXMgaXMKdmVyeSBzaW1pbGFy IHRvIHRoZSBleGlzdGluZyBzdXBwb3J0IGZvciBUZWdyYTEyNCBhbmQgVGVncmEyMTAsIGV4Y2Vw dAp0aGF0IHRoZSBudW1iZXIgb2YgcG9ydHMgYW5kIFBIWXMgZGlmZmVycyBhbmQgdGhlIElQRlMg d3JhcHBlciBiZWluZwpnb25lLgoKU2lnbmVkLW9mZi1ieTogSkMgS3VvIDxqY2t1b0BudmlkaWEu Y29tPgpBY2tlZC1ieTogTWF0aGlhcyBOeW1hbiA8bWF0aGlhcy5ueW1hbkBsaW51eC5pbnRlbC5j b20+ClNpZ25lZC1vZmYtYnk6IFRoaWVycnkgUmVkaW5nIDx0cmVkaW5nQG52aWRpYS5jb20+Ci0t LQogZHJpdmVycy91c2IvaG9zdC94aGNpLXRlZ3JhLmMgfCAyNSArKysrKysrKysrKysrKysrKysr KysrKysrCiAxIGZpbGUgY2hhbmdlZCwgMjUgaW5zZXJ0aW9ucygrKQoKZGlmZiAtLWdpdCBhL2Ry aXZlcnMvdXNiL2hvc3QveGhjaS10ZWdyYS5jIGIvZHJpdmVycy91c2IvaG9zdC94aGNpLXRlZ3Jh LmMKaW5kZXggNGQxMzNiYmFiZGRhLi4yOTQxNTgxMTNkNjIgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMv dXNiL2hvc3QveGhjaS10ZWdyYS5jCisrKyBiL2RyaXZlcnMvdXNiL2hvc3QveGhjaS10ZWdyYS5j CkBAIC0xNDIzLDkgKzE0MjMsMzQgQEAgc3RhdGljIGNvbnN0IHN0cnVjdCB0ZWdyYV94dXNiX3Nv YyB0ZWdyYTIxMF9zb2MgPSB7CiB9OwogTU9EVUxFX0ZJUk1XQVJFKCJudmlkaWEvdGVncmEyMTAv eHVzYi5iaW4iKTsKIAorc3RhdGljIGNvbnN0IGNoYXIgKiBjb25zdCB0ZWdyYTE4Nl9zdXBwbHlf bmFtZXNbXSA9IHsKK307CisKK3N0YXRpYyBjb25zdCBzdHJ1Y3QgdGVncmFfeHVzYl9waHlfdHlw ZSB0ZWdyYTE4Nl9waHlfdHlwZXNbXSA9IHsKKwl7IC5uYW1lID0gInVzYjMiLCAubnVtID0gMywg fSwKKwl7IC5uYW1lID0gInVzYjIiLCAubnVtID0gMywgfSwKKwl7IC5uYW1lID0gImhzaWMiLCAu bnVtID0gMSwgfSwKK307CisKK3N0YXRpYyBjb25zdCBzdHJ1Y3QgdGVncmFfeHVzYl9zb2MgdGVn cmExODZfc29jID0geworCS5maXJtd2FyZSA9ICJudmlkaWEvdGVncmExODYveHVzYi5iaW4iLAor CS5zdXBwbHlfbmFtZXMgPSB0ZWdyYTE4Nl9zdXBwbHlfbmFtZXMsCisJLm51bV9zdXBwbGllcyA9 IEFSUkFZX1NJWkUodGVncmExODZfc3VwcGx5X25hbWVzKSwKKwkucGh5X3R5cGVzID0gdGVncmEx ODZfcGh5X3R5cGVzLAorCS5udW1fdHlwZXMgPSBBUlJBWV9TSVpFKHRlZ3JhMTg2X3BoeV90eXBl cyksCisJLnBvcnRzID0geworCQkudXNiMyA9IHsgLm9mZnNldCA9IDAsIC5jb3VudCA9IDMsIH0s CisJCS51c2IyID0geyAub2Zmc2V0ID0gMywgLmNvdW50ID0gMywgfSwKKwkJLmhzaWMgPSB7IC5v ZmZzZXQgPSA2LCAuY291bnQgPSAxLCB9LAorCX0sCisJLnNjYWxlX3NzX2Nsb2NrID0gZmFsc2Us CisJLmhhc19pcGZzID0gZmFsc2UsCit9OworCiBzdGF0aWMgY29uc3Qgc3RydWN0IG9mX2Rldmlj ZV9pZCB0ZWdyYV94dXNiX29mX21hdGNoW10gPSB7CiAJeyAuY29tcGF0aWJsZSA9ICJudmlkaWEs dGVncmExMjQteHVzYiIsIC5kYXRhID0gJnRlZ3JhMTI0X3NvYyB9LAogCXsgLmNvbXBhdGlibGUg PSAibnZpZGlhLHRlZ3JhMjEwLXh1c2IiLCAuZGF0YSA9ICZ0ZWdyYTIxMF9zb2MgfSwKKwl7IC5j b21wYXRpYmxlID0gIm52aWRpYSx0ZWdyYTE4Ni14dXNiIiwgLmRhdGEgPSAmdGVncmExODZfc29j IH0sCiAJeyB9LAogfTsKIE1PRFVMRV9ERVZJQ0VfVEFCTEUob2YsIHRlZ3JhX3h1c2Jfb2ZfbWF0 Y2gpOwo=