All of lore.kernel.org
 help / color / mirror / Atom feed
From: kernel test robot <lkp@intel.com>
To: Christian Marangi <ansuelsmth@gmail.com>
Cc: llvm@lists.linux.dev, oe-kbuild-all@lists.linux.dev
Subject: Re: [net-next RFC PATCH 13/14] net: phy: add Qualcom QCA807x driver
Date: Wed, 22 Nov 2023 23:45:50 +0800	[thread overview]
Message-ID: <202311222136.bjgltmdE-lkp@intel.com> (raw)
In-Reply-To: <20231120135041.15259-14-ansuelsmth@gmail.com>

Hi Christian,

[This is a private test report for your RFC patch.]
kernel test robot noticed the following build errors:

[auto build test ERROR on net-next/main]

url:    https://github.com/intel-lab-lkp/linux/commits/Christian-Marangi/net-phy-extend-PHY-package-API-to-support-multiple-global-address/20231120-220405
base:   net-next/main
patch link:    https://lore.kernel.org/r/20231120135041.15259-14-ansuelsmth%40gmail.com
patch subject: [net-next RFC PATCH 13/14] net: phy: add Qualcom QCA807x driver
config: x86_64-allyesconfig (https://download.01.org/0day-ci/archive/20231122/202311222136.bjgltmdE-lkp@intel.com/config)
compiler: clang version 16.0.4 (https://github.com/llvm/llvm-project.git ae42196bc493ffe877a7e3dff8be32035dea4d07)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20231122/202311222136.bjgltmdE-lkp@intel.com/reproduce)

If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202311222136.bjgltmdE-lkp@intel.com/

All errors (new ones prefixed by >>):

   drivers/net/phy/qca807x.c:342:46: warning: declaration of 'struct gpio_chip' will not be visible outside of this function [-Wvisibility]
   static int qca807x_gpio_get_direction(struct gpio_chip *gc, unsigned int offset)
                                                ^
>> drivers/net/phy/qca807x.c:344:9: error: use of undeclared identifier 'GPIO_LINE_DIRECTION_OUT'
           return GPIO_LINE_DIRECTION_OUT;
                  ^
   drivers/net/phy/qca807x.c:352:36: warning: declaration of 'struct gpio_chip' will not be visible outside of this function [-Wvisibility]
   static int qca807x_gpio_get(struct gpio_chip *gc, unsigned int offset)
                                      ^
>> drivers/net/phy/qca807x.c:354:35: error: call to undeclared function 'gpiochip_get_data'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
           struct qca807x_gpio_priv *priv = gpiochip_get_data(gc);
                                            ^
>> drivers/net/phy/qca807x.c:354:28: error: incompatible integer to pointer conversion initializing 'struct qca807x_gpio_priv *' with an expression of type 'int' [-Wint-conversion]
           struct qca807x_gpio_priv *priv = gpiochip_get_data(gc);
                                     ^      ~~~~~~~~~~~~~~~~~~~~~
   drivers/net/phy/qca807x.c:362:37: warning: declaration of 'struct gpio_chip' will not be visible outside of this function [-Wvisibility]
   static void qca807x_gpio_set(struct gpio_chip *gc, unsigned int offset, int value)
                                       ^
   drivers/net/phy/qca807x.c:364:35: error: call to undeclared function 'gpiochip_get_data'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
           struct qca807x_gpio_priv *priv = gpiochip_get_data(gc);
                                            ^
   drivers/net/phy/qca807x.c:364:28: error: incompatible integer to pointer conversion initializing 'struct qca807x_gpio_priv *' with an expression of type 'int' [-Wint-conversion]
           struct qca807x_gpio_priv *priv = gpiochip_get_data(gc);
                                     ^      ~~~~~~~~~~~~~~~~~~~~~
   drivers/net/phy/qca807x.c:375:40: warning: declaration of 'struct gpio_chip' will not be visible outside of this function [-Wvisibility]
   static int qca807x_gpio_dir_out(struct gpio_chip *gc, unsigned int offset, int value)
                                          ^
>> drivers/net/phy/qca807x.c:377:19: error: incompatible pointer types passing 'struct gpio_chip *' to parameter of type 'struct gpio_chip *' [-Werror,-Wincompatible-pointer-types]
           qca807x_gpio_set(gc, offset, value);
                            ^~
   drivers/net/phy/qca807x.c:362:48: note: passing argument to parameter 'gc' here
   static void qca807x_gpio_set(struct gpio_chip *gc, unsigned int offset, int value)
                                                  ^
>> drivers/net/phy/qca807x.c:394:31: error: invalid application of 'sizeof' to an incomplete type 'struct gpio_chip'
           gc = devm_kzalloc(dev, sizeof(*gc), GFP_KERNEL);
                                        ^~~~~
   drivers/net/phy/qca807x.c:386:9: note: forward declaration of 'struct gpio_chip'
           struct gpio_chip *gc;
                  ^
>> drivers/net/phy/qca807x.c:398:4: error: incomplete definition of type 'struct gpio_chip'
           gc->label = dev_name(dev);
           ~~^
   drivers/net/phy/qca807x.c:386:9: note: forward declaration of 'struct gpio_chip'
           struct gpio_chip *gc;
                  ^
   drivers/net/phy/qca807x.c:399:4: error: incomplete definition of type 'struct gpio_chip'
           gc->base = -1;
           ~~^
   drivers/net/phy/qca807x.c:386:9: note: forward declaration of 'struct gpio_chip'
           struct gpio_chip *gc;
                  ^
   drivers/net/phy/qca807x.c:400:4: error: incomplete definition of type 'struct gpio_chip'
           gc->ngpio = 2;
           ~~^
   drivers/net/phy/qca807x.c:386:9: note: forward declaration of 'struct gpio_chip'
           struct gpio_chip *gc;
                  ^
   drivers/net/phy/qca807x.c:401:4: error: incomplete definition of type 'struct gpio_chip'
           gc->parent = dev;
           ~~^
   drivers/net/phy/qca807x.c:386:9: note: forward declaration of 'struct gpio_chip'
           struct gpio_chip *gc;
                  ^
   drivers/net/phy/qca807x.c:402:4: error: incomplete definition of type 'struct gpio_chip'
           gc->owner = THIS_MODULE;
           ~~^
   drivers/net/phy/qca807x.c:386:9: note: forward declaration of 'struct gpio_chip'
           struct gpio_chip *gc;
                  ^
   drivers/net/phy/qca807x.c:403:4: error: incomplete definition of type 'struct gpio_chip'
           gc->can_sleep = true;
           ~~^
   drivers/net/phy/qca807x.c:386:9: note: forward declaration of 'struct gpio_chip'
           struct gpio_chip *gc;
                  ^
   drivers/net/phy/qca807x.c:404:4: error: incomplete definition of type 'struct gpio_chip'
           gc->get_direction = qca807x_gpio_get_direction;
           ~~^
   drivers/net/phy/qca807x.c:386:9: note: forward declaration of 'struct gpio_chip'
           struct gpio_chip *gc;
                  ^
   drivers/net/phy/qca807x.c:405:4: error: incomplete definition of type 'struct gpio_chip'
           gc->direction_output = qca807x_gpio_dir_out;
           ~~^
   drivers/net/phy/qca807x.c:386:9: note: forward declaration of 'struct gpio_chip'
           struct gpio_chip *gc;
                  ^
   drivers/net/phy/qca807x.c:406:4: error: incomplete definition of type 'struct gpio_chip'
           gc->get = qca807x_gpio_get;
           ~~^
   drivers/net/phy/qca807x.c:386:9: note: forward declaration of 'struct gpio_chip'
           struct gpio_chip *gc;
                  ^
   drivers/net/phy/qca807x.c:407:4: error: incomplete definition of type 'struct gpio_chip'
           gc->set = qca807x_gpio_set;
           ~~^
   drivers/net/phy/qca807x.c:386:9: note: forward declaration of 'struct gpio_chip'
           struct gpio_chip *gc;
                  ^
>> drivers/net/phy/qca807x.c:409:9: error: call to undeclared function 'devm_gpiochip_add_data'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
           return devm_gpiochip_add_data(dev, gc, priv);
                  ^
>> drivers/net/phy/qca807x.c:708:36: error: too few arguments to function call, expected 3, have 2
                   if (of_find_property(node, "leds") &&
                       ~~~~~~~~~~~~~~~~             ^
   include/linux/of.h:309:25: note: 'of_find_property' declared here
   extern struct property *of_find_property(const struct device_node *np,
                           ^
   fatal error: too many errors emitted, stopping now [-ferror-limit=]
   4 warnings and 20 errors generated.


vim +/GPIO_LINE_DIRECTION_OUT +344 drivers/net/phy/qca807x.c

   340	
   341	#ifdef CONFIG_GPIOLIB
   342	static int qca807x_gpio_get_direction(struct gpio_chip *gc, unsigned int offset)
   343	{
 > 344		return GPIO_LINE_DIRECTION_OUT;
   345	}
   346	
   347	static int qca807x_gpio_get_reg(unsigned int offset)
   348	{
   349		return QCA807X_MMD7_LED_100N_2 + (offset % 2) * 2;
   350	}
   351	
   352	static int qca807x_gpio_get(struct gpio_chip *gc, unsigned int offset)
   353	{
 > 354		struct qca807x_gpio_priv *priv = gpiochip_get_data(gc);
   355		int val;
   356	
   357		val = phy_read_mmd(priv->phy, MDIO_MMD_AN, qca807x_gpio_get_reg(offset));
   358	
   359		return FIELD_GET(QCA807X_GPIO_FORCE_MODE_MASK, val);
   360	}
   361	
   362	static void qca807x_gpio_set(struct gpio_chip *gc, unsigned int offset, int value)
   363	{
   364		struct qca807x_gpio_priv *priv = gpiochip_get_data(gc);
   365		int val;
   366	
   367		val = phy_read_mmd(priv->phy, MDIO_MMD_AN, qca807x_gpio_get_reg(offset));
   368		val &= ~QCA807X_GPIO_FORCE_MODE_MASK;
   369		val |= QCA807X_GPIO_FORCE_EN;
   370		val |= FIELD_PREP(QCA807X_GPIO_FORCE_MODE_MASK, value);
   371	
   372		phy_write_mmd(priv->phy, MDIO_MMD_AN, qca807x_gpio_get_reg(offset), val);
   373	}
   374	
   375	static int qca807x_gpio_dir_out(struct gpio_chip *gc, unsigned int offset, int value)
   376	{
 > 377		qca807x_gpio_set(gc, offset, value);
   378	
   379		return 0;
   380	}
   381	
   382	static int qca807x_gpio(struct phy_device *phydev)
   383	{
   384		struct device *dev = &phydev->mdio.dev;
   385		struct qca807x_gpio_priv *priv;
   386		struct gpio_chip *gc;
   387	
   388		priv = devm_kzalloc(dev, sizeof(*priv), GFP_KERNEL);
   389		if (!priv)
   390			return -ENOMEM;
   391	
   392		priv->phy = phydev;
   393	
 > 394		gc = devm_kzalloc(dev, sizeof(*gc), GFP_KERNEL);
   395		if (!gc)
   396			return -ENOMEM;
   397	
 > 398		gc->label = dev_name(dev);
   399		gc->base = -1;
   400		gc->ngpio = 2;
   401		gc->parent = dev;
   402		gc->owner = THIS_MODULE;
   403		gc->can_sleep = true;
   404		gc->get_direction = qca807x_gpio_get_direction;
   405		gc->direction_output = qca807x_gpio_dir_out;
   406		gc->get = qca807x_gpio_get;
   407		gc->set = qca807x_gpio_set;
   408	
 > 409		return devm_gpiochip_add_data(dev, gc, priv);
   410	}
   411	#endif
   412	

-- 
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki

  parent reply	other threads:[~2023-11-22 15:46 UTC|newest]

Thread overview: 113+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-11-20 13:50 [net-next RFC PATCH 00/14] net: phy: Support DT PHY package Christian Marangi
2023-11-20 13:50 ` Christian Marangi
2023-11-20 13:50 ` [net-next RFC PATCH 01/14] net: phy: extend PHY package API to support multiple global address Christian Marangi
2023-11-20 13:50   ` Christian Marangi
2023-11-20 13:50 ` [net-next RFC PATCH 02/14] dt-bindings: net: move PHY modes to common PHY mode types definition Christian Marangi
2023-11-20 13:50   ` Christian Marangi
2023-11-20 15:14   ` Rob Herring
2023-11-20 15:14     ` Rob Herring
2023-11-20 17:30   ` Rob Herring
2023-11-20 17:30     ` Rob Herring
2023-11-20 13:50 ` [net-next RFC PATCH 03/14] dt-bindings: net: document ethernet PHY package nodes Christian Marangi
2023-11-20 13:50   ` Christian Marangi
2023-11-20 17:41   ` Rob Herring
2023-11-20 17:41     ` Rob Herring
2023-11-20 16:39     ` Christian Marangi
2023-11-20 16:39       ` Christian Marangi
2023-11-20 20:44   ` Andrew Lunn
2023-11-20 20:44     ` Andrew Lunn
2023-11-20 18:09     ` Christian Marangi
2023-11-20 18:09       ` Christian Marangi
2023-11-20 21:25       ` Andrew Lunn
2023-11-20 21:25         ` Andrew Lunn
2023-11-20 18:45         ` Christian Marangi
2023-11-20 18:45           ` Christian Marangi
2023-11-21 14:42     ` Rob Herring
2023-11-21 14:42       ` Rob Herring
2023-11-21 14:45       ` Andrew Lunn
2023-11-21 14:45         ` Andrew Lunn
2023-11-22 18:32         ` Christian Marangi
2023-11-22 18:32           ` Christian Marangi
2023-11-23  3:30           ` Andrew Lunn
2023-11-23  3:30             ` Andrew Lunn
2023-11-23 10:38             ` Christian Marangi
2023-11-23 10:38               ` Christian Marangi
2023-11-23 14:27               ` Andrew Lunn
2023-11-23 14:27                 ` Andrew Lunn
2023-11-23 14:35                 ` Russell King (Oracle)
2023-11-23 14:35                   ` Russell King (Oracle)
2023-11-23 14:57                   ` Andrew Lunn
2023-11-23 14:57                     ` Andrew Lunn
2023-11-23 19:33                     ` Christian Marangi
2023-11-23 19:33                       ` Christian Marangi
2023-11-24 11:49                       ` Jie Luo
2023-11-24 11:49                         ` Jie Luo
2023-11-24 12:02                         ` Russell King (Oracle)
2023-11-24 12:02                           ` Russell King (Oracle)
2023-11-24 14:44                           ` Andrew Lunn
2023-11-24 14:44                             ` Andrew Lunn
2023-11-24 15:16                             ` Russell King (Oracle)
2023-11-24 15:16                               ` Russell King (Oracle)
2023-11-24 16:59                               ` Robert Marko
2023-11-24 16:59                                 ` Robert Marko
2023-11-23 15:07               ` Andrew Lunn
2023-11-23 15:07                 ` Andrew Lunn
2023-11-23 19:36                 ` Christian Marangi
2023-11-23 19:36                   ` Christian Marangi
2023-11-24 16:59           ` Vladimir Oltean
2023-11-24 16:59             ` Vladimir Oltean
2023-11-24 16:25             ` Christian Marangi
2023-11-24 16:25               ` Christian Marangi
2023-11-24 18:27               ` Vladimir Oltean
2023-11-24 18:27                 ` Vladimir Oltean
2023-11-24 18:35             ` Andrew Lunn
2023-11-24 18:35               ` Andrew Lunn
2023-11-24 19:40               ` Vladimir Oltean
2023-11-24 19:40                 ` Vladimir Oltean
2023-11-20 13:50 ` [net-next RFC PATCH 04/14] net: phy: add initial support for PHY package in DT Christian Marangi
2023-11-20 13:50   ` Christian Marangi
2023-11-22 10:41   ` Simon Horman
2023-11-22 10:41     ` Simon Horman
2023-11-22 10:52   ` Simon Horman
2023-11-22 10:52     ` Simon Horman
2023-11-22 18:15     ` Christian Marangi
2023-11-22 18:15       ` Christian Marangi
2023-11-22 21:14       ` Simon Horman
2023-11-22 21:14         ` Simon Horman
2023-11-22 12:40   ` kernel test robot
2023-11-20 13:50 ` [net-next RFC PATCH 05/14] net: phy: add support for named global PHY in DT PHY package Christian Marangi
2023-11-20 13:50   ` Christian Marangi
2023-11-20 13:50 ` [net-next RFC PATCH 06/14] net: phy: add support for shared priv data size for PHY package in DT Christian Marangi
2023-11-20 13:50   ` Christian Marangi
2023-11-20 13:50 ` [net-next RFC PATCH 07/14] net: phy: add support for driver specific PHY package probe/config Christian Marangi
2023-11-20 13:50   ` Christian Marangi
2023-11-20 13:50 ` [net-next RFC PATCH 08/14] net: phy: add support for PHY package interface mode Christian Marangi
2023-11-20 13:50   ` Christian Marangi
2023-11-20 13:50 ` [net-next RFC PATCH 09/14] net: phy: move mmd_phy_indirect to generic header Christian Marangi
2023-11-20 13:50   ` Christian Marangi
2023-11-20 13:50 ` [net-next RFC PATCH 10/14] net: phy: add support for PHY package MMD read/write Christian Marangi
2023-11-20 13:50   ` Christian Marangi
2023-11-20 13:50 ` [net-next RFC PATCH 11/14] dt-bindings: net: add QCA807x PHY defines Christian Marangi
2023-11-20 13:50   ` Christian Marangi
2023-11-23  3:01   ` Andrew Lunn
2023-11-23  3:01     ` Andrew Lunn
2023-11-20 13:50 ` [net-next RFC PATCH 12/14] dt-bindings: net: Document Qcom QCA807x PHY package Christian Marangi
2023-11-20 13:50   ` Christian Marangi
2023-11-23  2:15   ` Andrew Lunn
2023-11-23  2:15     ` Andrew Lunn
2023-11-23 11:20     ` Robert Marko
2023-11-23 11:20       ` Robert Marko
2023-11-23  9:41   ` Russell King (Oracle)
2023-11-23  9:41     ` Russell King (Oracle)
2023-11-20 13:50 ` [net-next RFC PATCH 13/14] net: phy: add Qualcom QCA807x driver Christian Marangi
2023-11-20 13:50   ` Christian Marangi
2023-11-21 13:37   ` kernel test robot
2023-11-22 14:48   ` kernel test robot
2023-11-22 15:45   ` kernel test robot [this message]
2023-11-23  2:55   ` Andrew Lunn
2023-11-23  2:55     ` Andrew Lunn
2023-11-24 11:46   ` kernel test robot
2023-11-20 13:50 ` [net-next RFC PATCH 14/14] net: phy: qca807x: Add support for configurable LED Christian Marangi
2023-11-20 13:50   ` Christian Marangi
2023-11-20 15:11 ` [net-next RFC PATCH 00/14] net: phy: Support DT PHY package Maxime Chevallier
2023-11-20 15:11   ` Maxime Chevallier

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=202311222136.bjgltmdE-lkp@intel.com \
    --to=lkp@intel.com \
    --cc=ansuelsmth@gmail.com \
    --cc=llvm@lists.linux.dev \
    --cc=oe-kbuild-all@lists.linux.dev \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.