From mboxrd@z Thu Jan 1 00:00:00 1970 From: Andy Shevchenko Subject: Re: [PATCH v1 04/12] usb: dwc3: dwc3-hisi: Add code for dwc3 of Hisilicon Soc Platform Date: Mon, 3 Dec 2018 10:12:01 +0200 Message-ID: References: <20181203034515.91412-1-chenyu56@huawei.com> <20181203034515.91412-5-chenyu56@huawei.com> Mime-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Return-path: In-Reply-To: <20181203034515.91412-5-chenyu56@huawei.com> Sender: linux-kernel-owner@vger.kernel.org To: chenyu56@huawei.com Cc: USB , devicetree , Linux Kernel Mailing List , Suzhuangluan , Kongfei , Felipe Balbi , Greg Kroah-Hartman , "David S. Miller" , Mauro Carvalho Chehab , Andrew Morton , Arnd Bergmann , John Stultz , Wangbinghui List-Id: devicetree@vger.kernel.org On Mon, Dec 3, 2018 at 5:48 AM Yu Chen wrote: > > This driver handles the poweron and shutdown of dwc3 core > on Hisilicon Soc Platform. > +config USB_DWC3_HISI > + tristate "HiSilicon Kirin Platforms" > + depends on ((ARCH_HISI && ARM64) || COMPILE_TEST) && OF It would be easy to read if depends on OF would be on a separate line > + default USB_DWC3 > + help > + Support USB2/3 functionality in HiSilicon Kirin platforms. > + Say 'Y' or 'M' if you have one such device. > +++ b/drivers/usb/dwc3/dwc3-hisi.c > @@ -0,0 +1,335 @@ > +// SPDX-License-Identifier: GPL-2.0+ You need to talk to your manager and fix License correspondingly. Currently there is an ambigous reading. > +/** Why /** ? > + * dwc3-hisi.c - Support for dwc3 platform devices on HiSilicon platforms Usually put filename in the file is not the best idea. > + * > + * Copyright (C) 2017-2018 Hilisicon Electronics Co., Ltd. > + * http://www.huawei.com > + * > + * Authors: Yu Chen > + * > + * This program is free software: you can redistribute it and/or modify > + * it under the terms of the GNU General Public License version 2 of > + * the License as published by the Free Software Foundation. > + * > + * This program is distributed in the hope that it will be useful, > + * but WITHOUT ANY WARRANTY; without even the implied warranty of > + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the > + * GNU General Public License for more details. The idea of SPDX is exactly to remove the above boilerplate text. > + */ > + > +#include > +#include > +#include > +#include > +#include > +#include > +#include > +#include > +#include > +#include > +#include > +#include > +#include It would be easy to maintain ordered list in the future. > + while (--i >= 0) while (i--) > + while (--i >= 0) while (i--) > + while (--i >= 0) while (i--) > + while (--i >= 0) while (i--) > + while (--i >= 0) > +static int dwc3_hisi_probe(struct platform_device *pdev) > +{ > + struct dwc3_hisi *dwc3_hisi; > + struct device *dev = &pdev->dev; > + struct device_node *np = dev->of_node; > + Redundant blank line > + int ret; > + int i; > +} > +#ifdef CONFIG_PM_SLEEP > +static int dwc3_hisi_suspend(struct device *dev) Don't know the usual practice here, but you can just use __maybe_unused and remove this #ifdef. > +{ > + struct dwc3_hisi *dwc3_hisi = dev_get_drvdata(dev); > + int ret; > + > + dev_info(dev, "%s\n", __func__); Noise > +} > +static int dwc3_hisi_resume(struct device *dev) __maybe_unused ? > +{ > + dev_info(dev, "%s\n", __func__); Noise. > + /* Wait for clock stable */ > + msleep(100); Don't you have any hardware notification that clocks are stable? (Something like PLL locked?) > + > + return 0; > +} > +#endif /* CONFIG_PM_SLEEP */ > +static const struct of_device_id dwc3_hisi_match[] = { > + { .compatible = "hisilicon,hi3660-dwc3" }, > + { /* sentinel */ }, No need comma for terminator line. > +}; -- With Best Regards, Andy Shevchenko