Re: [v6, 3/6] fsl/fman: Add FMan MAC support
From: kbuild test robot
Date: Thu Oct 29 2015 - 05:10:35 EST
Hi Igal,
[auto build test ERROR on net/master -- if it's inappropriate base, please suggest rules for selecting the more suitable base]
url: https://github.com/0day-ci/linux/commits/igal-liberman-freescale-com/Freescale-DPAA-FMan/20151028-205843
config: arm-allmodconfig (attached as .config)
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
# save the attached .config to linux build tree
make.cross ARCH=arm
All errors (new ones prefixed by >>):
drivers/net/ethernet/freescale/fman/fman_dtsec.c: In function 'dtsec_isr':
>> drivers/net/ethernet/freescale/fman/fman_dtsec.c:872:4: error: implicit declaration of function 'in_be32' [-Werror=implicit-function-declaration]
tpkt1 = in_be32(®s->tpkt);
^
>> drivers/net/ethernet/freescale/fman/fman_dtsec.c:913:5: error: implicit declaration of function 'out_be32' [-Werror=implicit-function-declaration]
out_be32(®s->rctrl,
^
cc1: some warnings being treated as errors
--
drivers/net/ethernet/freescale/fman/fman_memac.c: In function 'memac_init':
>> drivers/net/ethernet/freescale/fman/fman_memac.c:1189:3: error: implicit declaration of function 'in_be32' [-Werror=implicit-function-declaration]
reg32 = in_be32(&memac->regs->command_config);
^
>> drivers/net/ethernet/freescale/fman/fman_memac.c:1191:3: error: implicit declaration of function 'out_be32' [-Werror=implicit-function-declaration]
out_be32(&memac->regs->command_config, reg32);
^
cc1: some warnings being treated as errors
vim +/in_be32 +872 drivers/net/ethernet/freescale/fman/fman_dtsec.c
866 if (dtsec->fm_rev_info.major == 2) {
867 u32 tpkt1, tmp_reg1, tpkt2, tmp_reg2, i;
868 /* a. Write 0x00E0_0C00 to DTSEC_ID
869 * This is a read only register
870 * b. Read and save the value of TPKT
871 */
> 872 tpkt1 = in_be32(®s->tpkt);
873
874 /* c. Read the register at dTSEC address offset 0x32C */
875 tmp_reg1 = in_be32(®s->reserved02c0[27]);
876
877 /* d. Compare bits [9:15] to bits [25:31] of the
878 * register at address offset 0x32C.
879 */
880 if ((tmp_reg1 & 0x007F0000) !=
881 (tmp_reg1 & 0x0000007F)) {
882 /* If they are not equal, save the value of
883 * this register and wait for at least
884 * MAXFRM*16 ns
885 */
886 usleep_range((u32)(min
887 (dtsec_get_max_frame_length(dtsec) *
888 16 / 1000, 1)), (u32)
889 (min(dtsec_get_max_frame_length
890 (dtsec) * 16 / 1000, 1) + 1));
891 }
892
893 /* e. Read and save TPKT again and read the register
894 * at dTSEC address offset 0x32C again
895 */
896 tpkt2 = in_be32(®s->tpkt);
897 tmp_reg2 = in_be32(®s->reserved02c0[27]);
898
899 /* f. Compare the value of TPKT saved in step b to
900 * value read in step e. Also compare bits [9:15] of
901 * the register at offset 0x32C saved in step d to the
902 * value of bits [9:15] saved in step e. If the two
903 * registers values are unchanged, then the transmit
904 * portion of the dTSEC controller is locked up and
905 * the user should proceed to the recover sequence.
906 */
907 if ((tpkt1 == tpkt2) && ((tmp_reg1 & 0x007F0000) ==
908 (tmp_reg2 & 0x007F0000))) {
909 /* recover sequence */
910
911 /* a.Write a 1 to RCTRL[GRS] */
912
> 913 out_be32(®s->rctrl,
914 in_be32(®s->rctrl) | RCTRL_GRS);
915
916 /* b.Wait until IEVENT[GRSC]=1, or at least
---
0-DAY kernel test infrastructure Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all Intel Corporation
Attachment:
.config.gz
Description: Binary data