All of lore.kernel.org
 help / color / mirror / Atom feed
From: kernel test robot <lkp@intel.com>
To: Daehwan Jung <dh10.jung@samsung.com>,
	Mathias Nyman <mathias.nyman@intel.com>,
	Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Cc: kbuild-all@lists.01.org, linux-usb@vger.kernel.org,
	linux-kernel@vger.kernel.org, Howard Yen <howardyen@google.com>,
	Jack Pham <jackp@codeaurora.org>, Puma Hsu <pumahsu@google.com>,
	"J . Avila" <elavila@google.com>,
	"chihhao . chen" <chihhao.chen@mediatek.com>,
	Daehwan Jung <dh10.jung@samsung.com>,
	sc.suh@samsung.com, cpgs@samsung.com, cpgsproxy5@samsung.com
Subject: Re: [PATCH v1 2/4] usb: host: add xhci hooks for USB offload
Date: Tue, 8 Mar 2022 18:51:52 +0800	[thread overview]
Message-ID: <202203081848.5KEiXYSo-lkp@intel.com> (raw)
In-Reply-To: <891095110.61646375404257.JavaMail.epsvc@epcpadp3>

Hi Daehwan,

Thank you for the patch! Yet something to improve:

[auto build test ERROR on krzk/for-next]
[also build test ERROR on char-misc/char-misc-testing v5.17-rc7]
[cannot apply to usb/usb-testing next-20220308]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch]

url:    https://github.com/0day-ci/linux/commits/Daehwan-Jung/usb-host-export-symbols-for-xhci-hooks-usage/20220304-143406
base:   https://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux.git for-next
config: arm-hisi_defconfig (https://download.01.org/0day-ci/archive/20220308/202203081848.5KEiXYSo-lkp@intel.com/config)
compiler: arm-linux-gnueabi-gcc (GCC) 11.2.0
reproduce (this is a W=1 build):
        wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        # https://github.com/0day-ci/linux/commit/2b6a5d700c2bbb0a3ccfcd6e83a7f7b2ea049db9
        git remote add linux-review https://github.com/0day-ci/linux
        git fetch --no-tags linux-review Daehwan-Jung/usb-host-export-symbols-for-xhci-hooks-usage/20220304-143406
        git checkout 2b6a5d700c2bbb0a3ccfcd6e83a7f7b2ea049db9
        # save the config file to linux build tree
        mkdir build_dir
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-11.2.0 make.cross O=build_dir ARCH=arm SHELL=/bin/bash drivers/usb/host/

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>

All errors (new ones prefixed by >>):

   drivers/usb/host/xhci.c:4361:5: warning: no previous prototype for 'xhci_address_device' [-Wmissing-prototypes]
    4361 | int xhci_address_device(struct usb_hcd *hcd, struct usb_device *udev)
         |     ^~~~~~~~~~~~~~~~~~~
   drivers/usb/host/xhci.c: In function 'xhci_vendor_get_ops':
>> drivers/usb/host/xhci.c:4459:20: error: 'struct xhci_hcd' has no member named 'vendor_ops'
    4459 |         return xhci->vendor_ops;
         |                    ^~
   drivers/usb/host/xhci.c:4460:1: error: control reaches end of non-void function [-Werror=return-type]
    4460 | }
         | ^
   cc1: some warnings being treated as errors


vim +4459 drivers/usb/host/xhci.c

  4360	
> 4361	int xhci_address_device(struct usb_hcd *hcd, struct usb_device *udev)
  4362	{
  4363		return xhci_setup_device(hcd, udev, SETUP_CONTEXT_ADDRESS);
  4364	}
  4365	EXPORT_SYMBOL_GPL(xhci_address_device);
  4366	
  4367	static int xhci_enable_device(struct usb_hcd *hcd, struct usb_device *udev)
  4368	{
  4369		return xhci_setup_device(hcd, udev, SETUP_CONTEXT_ONLY);
  4370	}
  4371	
  4372	/*
  4373	 * Transfer the port index into real index in the HW port status
  4374	 * registers. Caculate offset between the port's PORTSC register
  4375	 * and port status base. Divide the number of per port register
  4376	 * to get the real index. The raw port number bases 1.
  4377	 */
  4378	int xhci_find_raw_port_number(struct usb_hcd *hcd, int port1)
  4379	{
  4380		struct xhci_hub *rhub;
  4381	
  4382		rhub = xhci_get_rhub(hcd);
  4383		return rhub->ports[port1 - 1]->hw_portnum + 1;
  4384	}
  4385	
  4386	/*
  4387	 * Issue an Evaluate Context command to change the Maximum Exit Latency in the
  4388	 * slot context.  If that succeeds, store the new MEL in the xhci_virt_device.
  4389	 */
  4390	static int __maybe_unused xhci_change_max_exit_latency(struct xhci_hcd *xhci,
  4391				struct usb_device *udev, u16 max_exit_latency)
  4392	{
  4393		struct xhci_virt_device *virt_dev;
  4394		struct xhci_command *command;
  4395		struct xhci_input_control_ctx *ctrl_ctx;
  4396		struct xhci_slot_ctx *slot_ctx;
  4397		unsigned long flags;
  4398		int ret;
  4399	
  4400		spin_lock_irqsave(&xhci->lock, flags);
  4401	
  4402		virt_dev = xhci->devs[udev->slot_id];
  4403	
  4404		/*
  4405		 * virt_dev might not exists yet if xHC resumed from hibernate (S4) and
  4406		 * xHC was re-initialized. Exit latency will be set later after
  4407		 * hub_port_finish_reset() is done and xhci->devs[] are re-allocated
  4408		 */
  4409	
  4410		if (!virt_dev || max_exit_latency == virt_dev->current_mel) {
  4411			spin_unlock_irqrestore(&xhci->lock, flags);
  4412			return 0;
  4413		}
  4414	
  4415		/* Attempt to issue an Evaluate Context command to change the MEL. */
  4416		command = xhci->lpm_command;
  4417		ctrl_ctx = xhci_get_input_control_ctx(command->in_ctx);
  4418		if (!ctrl_ctx) {
  4419			spin_unlock_irqrestore(&xhci->lock, flags);
  4420			xhci_warn(xhci, "%s: Could not get input context, bad type.\n",
  4421					__func__);
  4422			return -ENOMEM;
  4423		}
  4424	
  4425		ret = xhci_vendor_sync_dev_ctx(xhci, udev->slot_id);
  4426		if (ret) {
  4427			spin_unlock_irqrestore(&xhci->lock, flags);
  4428			xhci_warn(xhci, "%s: Failed to sync device context failed, err=%d",
  4429				  __func__, ret);
  4430			return ret;
  4431		}
  4432	
  4433		xhci_slot_copy(xhci, command->in_ctx, virt_dev->out_ctx);
  4434		spin_unlock_irqrestore(&xhci->lock, flags);
  4435	
  4436		ctrl_ctx->add_flags |= cpu_to_le32(SLOT_FLAG);
  4437		slot_ctx = xhci_get_slot_ctx(xhci, command->in_ctx);
  4438		slot_ctx->dev_info2 &= cpu_to_le32(~((u32) MAX_EXIT));
  4439		slot_ctx->dev_info2 |= cpu_to_le32(max_exit_latency);
  4440		slot_ctx->dev_state = 0;
  4441	
  4442		xhci_dbg_trace(xhci, trace_xhci_dbg_context_change,
  4443				"Set up evaluate context for LPM MEL change.");
  4444	
  4445		/* Issue and wait for the evaluate context command. */
  4446		ret = xhci_configure_endpoint(xhci, udev, command,
  4447				true, true);
  4448	
  4449		if (!ret) {
  4450			spin_lock_irqsave(&xhci->lock, flags);
  4451			virt_dev->current_mel = max_exit_latency;
  4452			spin_unlock_irqrestore(&xhci->lock, flags);
  4453		}
  4454		return ret;
  4455	}
  4456	
  4457	struct xhci_vendor_ops *xhci_vendor_get_ops(struct xhci_hcd *xhci)
  4458	{
> 4459		return xhci->vendor_ops;
  4460	}
  4461	EXPORT_SYMBOL_GPL(xhci_vendor_get_ops);
  4462	

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org

  parent reply	other threads:[~2022-03-08 10:52 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <CGME20220304062617epcas2p2084161966aaa66d07f4c25720ec18088@epcas2p2.samsung.com>
     [not found] ` <1646375038-72082-1-git-send-email-dh10.jung@samsung.com>
2022-03-04  6:23   ` [PATCH v1 1/4] usb: host: export symbols for xhci hooks usage Daehwan Jung
2022-03-07  9:59     ` Krzysztof Kozlowski
2022-03-23  2:58       ` Jung Daehwan
2022-03-23  9:41         ` Krzysztof Kozlowski
2022-03-23 11:43           ` Greg Kroah-Hartman
2022-03-25  2:07             ` Jung Daehwan
2022-03-25  1:28           ` Jung Daehwan
2022-03-25 11:36             ` Krzysztof Kozlowski
2022-03-29  2:43               ` Jung Daehwan
2022-03-08  5:35     ` kernel test robot
2022-03-04  6:23   ` [PATCH v1 2/4] usb: host: add xhci hooks for USB offload Daehwan Jung
2022-03-08  6:16     ` kernel test robot
2022-03-08 10:51     ` kernel test robot [this message]
2022-03-04  6:23   ` [PATCH v1 3/4] usb: host: add some to xhci overrides " Daehwan Jung
2022-03-04  6:23   ` [PATCH v1 4/4] usb: host: add xhci-exynos module Daehwan Jung
2022-03-04  7:37     ` Greg Kroah-Hartman
2022-03-07 10:07     ` Krzysztof Kozlowski
2022-03-07 10:26       ` Jung Daehwan
2022-03-07 10:59         ` Krzysztof Kozlowski

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=202203081848.5KEiXYSo-lkp@intel.com \
    --to=lkp@intel.com \
    --cc=chihhao.chen@mediatek.com \
    --cc=cpgs@samsung.com \
    --cc=cpgsproxy5@samsung.com \
    --cc=dh10.jung@samsung.com \
    --cc=elavila@google.com \
    --cc=gregkh@linuxfoundation.org \
    --cc=howardyen@google.com \
    --cc=jackp@codeaurora.org \
    --cc=kbuild-all@lists.01.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-usb@vger.kernel.org \
    --cc=mathias.nyman@intel.com \
    --cc=pumahsu@google.com \
    --cc=sc.suh@samsung.com \
    /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.