[balbi-usb:testing/next 64/67] drivers/usb/phy/phy-gpio-vbus-usb.c:200: undefined reference to `usb_gadget_vbus_disconnect'

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



tree:   https://git.kernel.org/pub/scm/linux/kernel/git/balbi/usb.git testing/next
head:   89fe2b5ab11cdf6a67d4492d893e70e330aa7060
commit: 231b31ca34485552fe27e67dc6d30d06079c7648 [64/67] usb: gadget: move gadget API functions to udc-core
config: arm-pxa_defconfig (attached as .config)
compiler: arm-linux-gnueabi-gcc (Debian 5.3.1-8) 5.3.1 20160205
reproduce:
        wget https://git.kernel.org/cgit/linux/kernel/git/wfg/lkp-tests.git/plain/sbin/make.cross -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        git checkout 231b31ca34485552fe27e67dc6d30d06079c7648
        # save the attached .config to linux build tree
        make.cross ARCH=arm 

All errors (new ones prefixed by >>):

   drivers/built-in.o: In function `gpio_vbus_set_peripheral':
>> drivers/usb/phy/phy-gpio-vbus-usb.c:200: undefined reference to `usb_gadget_vbus_disconnect'
   drivers/built-in.o: In function `gpio_vbus_work':
   drivers/usb/phy/phy-gpio-vbus-usb.c:145: undefined reference to `usb_gadget_vbus_disconnect'
>> drivers/usb/phy/phy-gpio-vbus-usb.c:126: undefined reference to `usb_gadget_vbus_connect'

vim +200 drivers/usb/phy/phy-gpio-vbus-usb.c

6084f1bf drivers/usb/otg/gpio_vbus.c         Philipp Zabel      2008-11-24  120  	gpio = pdata->gpio_pullup;
e44694e8 drivers/usb/otg/gpio_vbus.c         Shinya Kuribayashi 2012-05-10  121  
e44694e8 drivers/usb/otg/gpio_vbus.c         Shinya Kuribayashi 2012-05-10  122  	if (vbus) {
662c738d drivers/usb/otg/gpio_vbus.c         Heiko Stübner      2012-02-29  123  		status = USB_EVENT_VBUS;
e47d9254 drivers/usb/phy/phy-gpio-vbus-usb.c Antoine Tenart     2014-10-30  124  		gpio_vbus->phy.otg->state = OTG_STATE_B_PERIPHERAL;
662c738d drivers/usb/otg/gpio_vbus.c         Heiko Stübner      2012-02-29  125  		gpio_vbus->phy.last_event = status;
16bc1bb2 drivers/usb/otg/gpio_vbus.c         Heikki Krogerus    2012-02-13 @126  		usb_gadget_vbus_connect(gpio_vbus->phy.otg->gadget);
6084f1bf drivers/usb/otg/gpio_vbus.c         Philipp Zabel      2008-11-24  127  
6084f1bf drivers/usb/otg/gpio_vbus.c         Philipp Zabel      2008-11-24  128  		/* drawing a "unit load" is *always* OK, except for OTG */
6084f1bf drivers/usb/otg/gpio_vbus.c         Philipp Zabel      2008-11-24  129  		set_vbus_draw(gpio_vbus, 100);
6084f1bf drivers/usb/otg/gpio_vbus.c         Philipp Zabel      2008-11-24  130  
6084f1bf drivers/usb/otg/gpio_vbus.c         Philipp Zabel      2008-11-24  131  		/* optionally enable D+ pullup */
6084f1bf drivers/usb/otg/gpio_vbus.c         Philipp Zabel      2008-11-24  132  		if (gpio_is_valid(gpio))
6084f1bf drivers/usb/otg/gpio_vbus.c         Philipp Zabel      2008-11-24  133  			gpio_set_value(gpio, !pdata->gpio_pullup_inverted);
662c738d drivers/usb/otg/gpio_vbus.c         Heiko Stübner      2012-02-29  134  
662c738d drivers/usb/otg/gpio_vbus.c         Heiko Stübner      2012-02-29  135  		atomic_notifier_call_chain(&gpio_vbus->phy.notifier,
662c738d drivers/usb/otg/gpio_vbus.c         Heiko Stübner      2012-02-29  136  					   status, gpio_vbus->phy.otg->gadget);
b20f3f9e drivers/usb/phy/phy-gpio-vbus-usb.c Kiran Raparthy     2014-11-24  137  		usb_phy_set_event(&gpio_vbus->phy, USB_EVENT_ENUMERATED);
6084f1bf drivers/usb/otg/gpio_vbus.c         Philipp Zabel      2008-11-24  138  	} else {
6084f1bf drivers/usb/otg/gpio_vbus.c         Philipp Zabel      2008-11-24  139  		/* optionally disable D+ pullup */
6084f1bf drivers/usb/otg/gpio_vbus.c         Philipp Zabel      2008-11-24  140  		if (gpio_is_valid(gpio))
6084f1bf drivers/usb/otg/gpio_vbus.c         Philipp Zabel      2008-11-24  141  			gpio_set_value(gpio, pdata->gpio_pullup_inverted);
6084f1bf drivers/usb/otg/gpio_vbus.c         Philipp Zabel      2008-11-24  142  
6084f1bf drivers/usb/otg/gpio_vbus.c         Philipp Zabel      2008-11-24  143  		set_vbus_draw(gpio_vbus, 0);
6084f1bf drivers/usb/otg/gpio_vbus.c         Philipp Zabel      2008-11-24  144  
16bc1bb2 drivers/usb/otg/gpio_vbus.c         Heikki Krogerus    2012-02-13  145  		usb_gadget_vbus_disconnect(gpio_vbus->phy.otg->gadget);
662c738d drivers/usb/otg/gpio_vbus.c         Heiko Stübner      2012-02-29  146  		status = USB_EVENT_NONE;
e47d9254 drivers/usb/phy/phy-gpio-vbus-usb.c Antoine Tenart     2014-10-30  147  		gpio_vbus->phy.otg->state = OTG_STATE_B_IDLE;
662c738d drivers/usb/otg/gpio_vbus.c         Heiko Stübner      2012-02-29  148  		gpio_vbus->phy.last_event = status;
662c738d drivers/usb/otg/gpio_vbus.c         Heiko Stübner      2012-02-29  149  
662c738d drivers/usb/otg/gpio_vbus.c         Heiko Stübner      2012-02-29  150  		atomic_notifier_call_chain(&gpio_vbus->phy.notifier,
662c738d drivers/usb/otg/gpio_vbus.c         Heiko Stübner      2012-02-29  151  					   status, gpio_vbus->phy.otg->gadget);
b20f3f9e drivers/usb/phy/phy-gpio-vbus-usb.c Kiran Raparthy     2014-11-24  152  		usb_phy_set_event(&gpio_vbus->phy, USB_EVENT_NONE);
6084f1bf drivers/usb/otg/gpio_vbus.c         Philipp Zabel      2008-11-24  153  	}
c2344f13 drivers/usb/otg/gpio_vbus.c         Robert Jarzmik     2009-01-24  154  }
c2344f13 drivers/usb/otg/gpio_vbus.c         Robert Jarzmik     2009-01-24  155  
c2344f13 drivers/usb/otg/gpio_vbus.c         Robert Jarzmik     2009-01-24  156  /* VBUS change IRQ handler */
c2344f13 drivers/usb/otg/gpio_vbus.c         Robert Jarzmik     2009-01-24  157  static irqreturn_t gpio_vbus_irq(int irq, void *data)
c2344f13 drivers/usb/otg/gpio_vbus.c         Robert Jarzmik     2009-01-24  158  {
c2344f13 drivers/usb/otg/gpio_vbus.c         Robert Jarzmik     2009-01-24  159  	struct platform_device *pdev = data;
19f9e188 drivers/usb/phy/phy-gpio-vbus-usb.c Jingoo Han         2013-07-30  160  	struct gpio_vbus_mach_info *pdata = dev_get_platdata(&pdev->dev);
c2344f13 drivers/usb/otg/gpio_vbus.c         Robert Jarzmik     2009-01-24  161  	struct gpio_vbus_data *gpio_vbus = platform_get_drvdata(pdev);
16bc1bb2 drivers/usb/otg/gpio_vbus.c         Heikki Krogerus    2012-02-13  162  	struct usb_otg *otg = gpio_vbus->phy.otg;
c2344f13 drivers/usb/otg/gpio_vbus.c         Robert Jarzmik     2009-01-24  163  
c2344f13 drivers/usb/otg/gpio_vbus.c         Robert Jarzmik     2009-01-24  164  	dev_dbg(&pdev->dev, "VBUS %s (gadget: %s)\n",
c2344f13 drivers/usb/otg/gpio_vbus.c         Robert Jarzmik     2009-01-24  165  		is_vbus_powered(pdata) ? "supplied" : "inactive",
16bc1bb2 drivers/usb/otg/gpio_vbus.c         Heikki Krogerus    2012-02-13  166  		otg->gadget ? otg->gadget->name : "none");
c2344f13 drivers/usb/otg/gpio_vbus.c         Robert Jarzmik     2009-01-24  167  
16bc1bb2 drivers/usb/otg/gpio_vbus.c         Heikki Krogerus    2012-02-13  168  	if (otg->gadget)
934ccec4 drivers/usb/otg/gpio_vbus.c         Shinya Kuribayashi 2012-05-10  169  		schedule_delayed_work(&gpio_vbus->work, msecs_to_jiffies(100));
6084f1bf drivers/usb/otg/gpio_vbus.c         Philipp Zabel      2008-11-24  170  
6084f1bf drivers/usb/otg/gpio_vbus.c         Philipp Zabel      2008-11-24  171  	return IRQ_HANDLED;
6084f1bf drivers/usb/otg/gpio_vbus.c         Philipp Zabel      2008-11-24  172  }
6084f1bf drivers/usb/otg/gpio_vbus.c         Philipp Zabel      2008-11-24  173  
6084f1bf drivers/usb/otg/gpio_vbus.c         Philipp Zabel      2008-11-24  174  /* OTG transceiver interface */
6084f1bf drivers/usb/otg/gpio_vbus.c         Philipp Zabel      2008-11-24  175  
6084f1bf drivers/usb/otg/gpio_vbus.c         Philipp Zabel      2008-11-24  176  /* bind/unbind the peripheral controller */
16bc1bb2 drivers/usb/otg/gpio_vbus.c         Heikki Krogerus    2012-02-13  177  static int gpio_vbus_set_peripheral(struct usb_otg *otg,
6084f1bf drivers/usb/otg/gpio_vbus.c         Philipp Zabel      2008-11-24  178  					struct usb_gadget *gadget)
6084f1bf drivers/usb/otg/gpio_vbus.c         Philipp Zabel      2008-11-24  179  {
6084f1bf drivers/usb/otg/gpio_vbus.c         Philipp Zabel      2008-11-24  180  	struct gpio_vbus_data *gpio_vbus;
6084f1bf drivers/usb/otg/gpio_vbus.c         Philipp Zabel      2008-11-24  181  	struct gpio_vbus_mach_info *pdata;
6084f1bf drivers/usb/otg/gpio_vbus.c         Philipp Zabel      2008-11-24  182  	struct platform_device *pdev;
123bbcee drivers/usb/otg/gpio_vbus.c         Shinya Kuribayashi 2012-05-17  183  	int gpio;
6084f1bf drivers/usb/otg/gpio_vbus.c         Philipp Zabel      2008-11-24  184  
19c1eac2 drivers/usb/phy/phy-gpio-vbus-usb.c Antoine Tenart     2014-10-30  185  	gpio_vbus = container_of(otg->usb_phy, struct gpio_vbus_data, phy);
6084f1bf drivers/usb/otg/gpio_vbus.c         Philipp Zabel      2008-11-24  186  	pdev = to_platform_device(gpio_vbus->dev);
19f9e188 drivers/usb/phy/phy-gpio-vbus-usb.c Jingoo Han         2013-07-30  187  	pdata = dev_get_platdata(gpio_vbus->dev);
6084f1bf drivers/usb/otg/gpio_vbus.c         Philipp Zabel      2008-11-24  188  	gpio = pdata->gpio_pullup;
6084f1bf drivers/usb/otg/gpio_vbus.c         Philipp Zabel      2008-11-24  189  
6084f1bf drivers/usb/otg/gpio_vbus.c         Philipp Zabel      2008-11-24  190  	if (!gadget) {
6084f1bf drivers/usb/otg/gpio_vbus.c         Philipp Zabel      2008-11-24  191  		dev_dbg(&pdev->dev, "unregistering gadget '%s'\n",
6084f1bf drivers/usb/otg/gpio_vbus.c         Philipp Zabel      2008-11-24  192  			otg->gadget->name);
6084f1bf drivers/usb/otg/gpio_vbus.c         Philipp Zabel      2008-11-24  193  
6084f1bf drivers/usb/otg/gpio_vbus.c         Philipp Zabel      2008-11-24  194  		/* optionally disable D+ pullup */
6084f1bf drivers/usb/otg/gpio_vbus.c         Philipp Zabel      2008-11-24  195  		if (gpio_is_valid(gpio))
6084f1bf drivers/usb/otg/gpio_vbus.c         Philipp Zabel      2008-11-24  196  			gpio_set_value(gpio, pdata->gpio_pullup_inverted);
6084f1bf drivers/usb/otg/gpio_vbus.c         Philipp Zabel      2008-11-24  197  
6084f1bf drivers/usb/otg/gpio_vbus.c         Philipp Zabel      2008-11-24  198  		set_vbus_draw(gpio_vbus, 0);
6084f1bf drivers/usb/otg/gpio_vbus.c         Philipp Zabel      2008-11-24  199  
6084f1bf drivers/usb/otg/gpio_vbus.c         Philipp Zabel      2008-11-24 @200  		usb_gadget_vbus_disconnect(otg->gadget);
e47d9254 drivers/usb/phy/phy-gpio-vbus-usb.c Antoine Tenart     2014-10-30  201  		otg->state = OTG_STATE_UNDEFINED;
6084f1bf drivers/usb/otg/gpio_vbus.c         Philipp Zabel      2008-11-24  202  
6084f1bf drivers/usb/otg/gpio_vbus.c         Philipp Zabel      2008-11-24  203  		otg->gadget = NULL;

:::::: The code at line 200 was first introduced by commit
:::::: 6084f1bf0c51a99cbba612ee90a4607cffb8b042 USB: otg: gpio_vbus transceiver stub

:::::: TO: Philipp Zabel <philipp.zabel@xxxxxxxxx>
:::::: CC: Greg Kroah-Hartman <gregkh@xxxxxxx>

---
0-DAY kernel test infrastructure                Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all                   Intel Corporation

Attachment: .config.gz
Description: Binary data


[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux