[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <202008080433.vZHzfgQ2%lkp@intel.com>
Date: Sat, 8 Aug 2020 04:56:46 +0800
From: kernel test robot <lkp@...el.com>
To: min.li.xe@...esas.com, richardcochran@...il.com
Cc: kbuild-all@...ts.01.org, netdev@...r.kernel.org,
linux-kernel@...r.kernel.org, Min Li <min.li.xe@...esas.com>
Subject: Re: [PATCH net 1/4] ptp: ptp_idt82p33: update to support adjphase
Hi,
Thank you for the patch! Yet something to improve:
[auto build test ERROR on net/master]
url: https://github.com/0day-ci/linux/commits/min-li-xe-renesas-com/ptp-ptp_idt82p33-update-to-support-adjphase/20200808-000545
base: https://git.kernel.org/pub/scm/linux/kernel/git/davem/net.git 8912fd6a61d7474ea9b43be93f136034d28868d5
config: i386-randconfig-s001-20200807 (attached as .config)
compiler: gcc-9 (Debian 9.3.0-15) 9.3.0
reproduce:
# apt-get install sparse
# sparse version: v0.6.2-118-ge1578773-dirty
# save the attached .config to linux build tree
make W=1 C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' ARCH=i386
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@...el.com>
All errors (new ones prefixed by >>):
ld: drivers/ptp/ptp_idt82p33.o: in function `idt82p33_adjwritephase':
>> drivers/ptp/ptp_idt82p33.c:695: undefined reference to `__divdi3'
vim +695 drivers/ptp/ptp_idt82p33.c
676
677 static int idt82p33_adjwritephase(struct ptp_clock_info *ptp, s32 offsetNs)
678 {
679 struct idt82p33_channel *channel =
680 container_of(ptp, struct idt82p33_channel, caps);
681 struct idt82p33 *idt82p33 = channel->idt82p33;
682 s64 offsetInFs;
683 s64 offsetRegVal;
684 u8 val[4] = {0};
685 int err;
686
687 offsetInFs = (s64)(-offsetNs) * 1000000;
688
689 if (offsetInFs > WRITE_PHASE_OFFSET_LIMIT)
690 offsetInFs = WRITE_PHASE_OFFSET_LIMIT;
691 else if (offsetInFs < -WRITE_PHASE_OFFSET_LIMIT)
692 offsetInFs = -WRITE_PHASE_OFFSET_LIMIT;
693
694 /* Convert from phaseOffsetInFs to register value */
> 695 offsetRegVal = ((offsetInFs * 1000) / IDT_T0DPLL_PHASE_RESOL);
696
697 val[0] = offsetRegVal & 0xFF;
698 val[1] = (offsetRegVal >> 8) & 0xFF;
699 val[2] = (offsetRegVal >> 16) & 0xFF;
700 val[3] = (offsetRegVal >> 24) & 0x1F;
701 val[3] |= PH_OFFSET_EN;
702
703 mutex_lock(&idt82p33->reg_lock);
704
705 err = idt82p33_dpll_set_mode(channel, PLL_MODE_WPH);
706 if (err) {
707 dev_err(&idt82p33->client->dev,
708 "Failed at line %d in func %s!\n",
709 __LINE__,
710 __func__);
711 goto out;
712 }
713
714 err = idt82p33_write(idt82p33, channel->dpll_phase_cnfg, val,
715 sizeof(val));
716
717 out:
718 mutex_unlock(&idt82p33->reg_lock);
719 return err;
720 }
721
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
Download attachment ".config.gz" of type "application/gzip" (33222 bytes)
Powered by blists - more mailing lists