Message ID | 20190806073235.25140-2-gregkh@linuxfoundation.org (mailing list archive) |
---|---|
State | Superseded |
Headers | show |
Series | USB: phy: fsl-usb: convert platform driver to use dev_groups | expand |
On Wed, Aug 07, 2019 at 05:01:22PM +0800, kbuild test robot wrote: > Hi Greg, > > I love your patch! Yet something to improve: > > [auto build test ERROR on usb/usb-testing] > [cannot apply to v5.3-rc3] > [if your patch is applied to the wrong git tree, please drop us a note to help improve the system] > > url: https://github.com/0day-ci/linux/commits/Greg-Kroah-Hartman/USB-phy-fsl-usb-convert-platform-driver-to-use-dev_groups/20190807-021855 > base: https://kernel.googlesource.com/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing > config: arm64-allyesconfig (attached as .config) > compiler: aarch64-linux-gcc (GCC) 7.4.0 > reproduce: > wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross > chmod +x ~/bin/make.cross > # save the attached .config to linux build tree > GCC_VERSION=7.4.0 make.cross ARCH=arm64 > > If you fix the issue, kindly add following tag > Reported-by: kbuild test robot <lkp@intel.com> > > All error/warnings (new ones prefixed by >>): > > In file included from include/linux/kobject.h:20:0, > from include/linux/module.h:17, > from drivers/usb/phy/phy-fsl-usb.c:11: > >> drivers/usb/phy/phy-fsl-usb.c:1050:18: error: 'fsl_otg_attrs_attrs' undeclared here (not in a function); did you mean 'fsl_otg_attrs_group'? > ATTRIBUTE_GROUPS(fsl_otg_attrs); > ^ Argh, that's what i get for not compiling the code... Will resend a fix... thanks, greg k-h
diff --git a/drivers/usb/phy/phy-fsl-usb.c b/drivers/usb/phy/phy-fsl-usb.c index f7c96d209eda..dae2f21d3276 100644 --- a/drivers/usb/phy/phy-fsl-usb.c +++ b/drivers/usb/phy/phy-fsl-usb.c @@ -1043,6 +1043,11 @@ static ssize_t show_fsl_usb2_otg_state(struct device *dev, static DEVICE_ATTR(fsl_usb2_otg_state, S_IRUGO, show_fsl_usb2_otg_state, NULL); +static struct attribute *fsl_otg_attrs[] = { + &dev_attr_fsl_usb2_otg_state.attr, + NULL, +}; +ATTRIBUTE_GROUPS(fsl_otg_attrs); /* Char driver interface to control some OTG input */ @@ -1132,10 +1137,6 @@ static int fsl_otg_probe(struct platform_device *pdev) return ret; } - ret = device_create_file(&pdev->dev, &dev_attr_fsl_usb2_otg_state); - if (ret) - dev_warn(&pdev->dev, "Can't register sysfs attribute\n"); - return ret; } @@ -1152,8 +1153,6 @@ static int fsl_otg_remove(struct platform_device *pdev) kfree(fsl_otg_dev->phy.otg); kfree(fsl_otg_dev); - device_remove_file(&pdev->dev, &dev_attr_fsl_usb2_otg_state); - unregister_chrdev(FSL_OTG_MAJOR, FSL_OTG_NAME); if (pdata->exit) @@ -1168,6 +1167,7 @@ struct platform_driver fsl_otg_driver = { .driver = { .name = driver_name, .owner = THIS_MODULE, + .dev_groups = fsl_otg_groups, }, };
Platform drivers now have the option to have the platform core create and remove any needed sysfs attribute files. So take advantage of that and do not register "by hand" any sysfs files. Cc: Felipe Balbi <balbi@kernel.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> --- drivers/usb/phy/phy-fsl-usb.c | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-)