Hi Florian,

I love your patch! Perhaps something to improve:

[auto build test WARNING on net-next/master]

url:    
https://github.com/0day-ci/linux/commits/Florian-Fainelli/net-Allow-more-drivers-with-COMPILE_TEST/20180517-092807
config: xtensa-allyesconfig (attached as .config)
compiler: xtensa-linux-gcc (GCC) 7.2.0
reproduce:
        wget 
https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O 
~/bin/make.cross
        chmod +x ~/bin/make.cross
        # save the attached .config to linux build tree
        make.cross ARCH=xtensa 

All warnings (new ones prefixed by >>):

   drivers/net//ethernet/ti/davinci_cpdma.c: In function 'cpdma_chan_submit':
>> drivers/net//ethernet/ti/davinci_cpdma.c:1083:17: warning: passing argument 
>> 1 of 'writel_relaxed' makes integer from pointer without a cast 
>> [-Wint-conversion]
     writel_relaxed(token, &desc->sw_token);
                    ^~~~~
   In file included from arch/xtensa/include/asm/io.h:83:0,
                    from include/linux/scatterlist.h:9,
                    from include/linux/dma-mapping.h:11,
                    from drivers/net//ethernet/ti/davinci_cpdma.c:21:
   include/asm-generic/io.h:303:24: note: expected 'u32 {aka unsigned int}' but 
argument is of type 'void *'
    #define writel_relaxed writel_relaxed
                           ^
>> include/asm-generic/io.h:304:20: note: in expansion of macro 'writel_relaxed'
    static inline void writel_relaxed(u32 value, volatile void __iomem *addr)
                       ^~~~~~~~~~~~~~
--
   drivers/net/ethernet/ti/davinci_cpdma.c: In function 'cpdma_chan_submit':
   drivers/net/ethernet/ti/davinci_cpdma.c:1083:17: warning: passing argument 1 
of 'writel_relaxed' makes integer from pointer without a cast [-Wint-conversion]
     writel_relaxed(token, &desc->sw_token);
                    ^~~~~
   In file included from arch/xtensa/include/asm/io.h:83:0,
                    from include/linux/scatterlist.h:9,
                    from include/linux/dma-mapping.h:11,
                    from drivers/net/ethernet/ti/davinci_cpdma.c:21:
   include/asm-generic/io.h:303:24: note: expected 'u32 {aka unsigned int}' but 
argument is of type 'void *'
    #define writel_relaxed writel_relaxed
                           ^
>> include/asm-generic/io.h:304:20: note: in expansion of macro 'writel_relaxed'
    static inline void writel_relaxed(u32 value, volatile void __iomem *addr)
                       ^~~~~~~~~~~~~~

vim +/writel_relaxed +1083 drivers/net//ethernet/ti/davinci_cpdma.c

ef8c2dab drivers/net/davinci_cpdma.c             Cyril Chemparathy 2010-09-15  
1029  
ef8c2dab drivers/net/davinci_cpdma.c             Cyril Chemparathy 2010-09-15  
1030  int cpdma_chan_submit(struct cpdma_chan *chan, void *token, void *data,
aef614e1 drivers/net/ethernet/ti/davinci_cpdma.c Sebastian Siewior 2013-04-23  
1031                   int len, int directed)
ef8c2dab drivers/net/davinci_cpdma.c             Cyril Chemparathy 2010-09-15  
1032  {
ef8c2dab drivers/net/davinci_cpdma.c             Cyril Chemparathy 2010-09-15  
1033     struct cpdma_ctlr               *ctlr = chan->ctlr;
ef8c2dab drivers/net/davinci_cpdma.c             Cyril Chemparathy 2010-09-15  
1034     struct cpdma_desc __iomem       *desc;
ef8c2dab drivers/net/davinci_cpdma.c             Cyril Chemparathy 2010-09-15  
1035     dma_addr_t                      buffer;
ef8c2dab drivers/net/davinci_cpdma.c             Cyril Chemparathy 2010-09-15  
1036     unsigned long                   flags;
ef8c2dab drivers/net/davinci_cpdma.c             Cyril Chemparathy 2010-09-15  
1037     u32                             mode;
ef8c2dab drivers/net/davinci_cpdma.c             Cyril Chemparathy 2010-09-15  
1038     int                             ret = 0;
ef8c2dab drivers/net/davinci_cpdma.c             Cyril Chemparathy 2010-09-15  
1039  
ef8c2dab drivers/net/davinci_cpdma.c             Cyril Chemparathy 2010-09-15  
1040     spin_lock_irqsave(&chan->lock, flags);
ef8c2dab drivers/net/davinci_cpdma.c             Cyril Chemparathy 2010-09-15  
1041  
ef8c2dab drivers/net/davinci_cpdma.c             Cyril Chemparathy 2010-09-15  
1042     if (chan->state == CPDMA_STATE_TEARDOWN) {
ef8c2dab drivers/net/davinci_cpdma.c             Cyril Chemparathy 2010-09-15  
1043             ret = -EINVAL;
ef8c2dab drivers/net/davinci_cpdma.c             Cyril Chemparathy 2010-09-15  
1044             goto unlock_ret;
ef8c2dab drivers/net/davinci_cpdma.c             Cyril Chemparathy 2010-09-15  
1045     }
ef8c2dab drivers/net/davinci_cpdma.c             Cyril Chemparathy 2010-09-15  
1046  
742fb20f drivers/net/ethernet/ti/davinci_cpdma.c Grygorii Strashko 2016-06-27  
1047     if (chan->count >= chan->desc_num)      {
742fb20f drivers/net/ethernet/ti/davinci_cpdma.c Grygorii Strashko 2016-06-27  
1048             chan->stats.desc_alloc_fail++;
742fb20f drivers/net/ethernet/ti/davinci_cpdma.c Grygorii Strashko 2016-06-27  
1049             ret = -ENOMEM;
742fb20f drivers/net/ethernet/ti/davinci_cpdma.c Grygorii Strashko 2016-06-27  
1050             goto unlock_ret;
742fb20f drivers/net/ethernet/ti/davinci_cpdma.c Grygorii Strashko 2016-06-27  
1051     }
742fb20f drivers/net/ethernet/ti/davinci_cpdma.c Grygorii Strashko 2016-06-27  
1052  
742fb20f drivers/net/ethernet/ti/davinci_cpdma.c Grygorii Strashko 2016-06-27  
1053     desc = cpdma_desc_alloc(ctlr->pool);
ef8c2dab drivers/net/davinci_cpdma.c             Cyril Chemparathy 2010-09-15  
1054     if (!desc) {
ef8c2dab drivers/net/davinci_cpdma.c             Cyril Chemparathy 2010-09-15  
1055             chan->stats.desc_alloc_fail++;
ef8c2dab drivers/net/davinci_cpdma.c             Cyril Chemparathy 2010-09-15  
1056             ret = -ENOMEM;
ef8c2dab drivers/net/davinci_cpdma.c             Cyril Chemparathy 2010-09-15  
1057             goto unlock_ret;
ef8c2dab drivers/net/davinci_cpdma.c             Cyril Chemparathy 2010-09-15  
1058     }
ef8c2dab drivers/net/davinci_cpdma.c             Cyril Chemparathy 2010-09-15  
1059  
ef8c2dab drivers/net/davinci_cpdma.c             Cyril Chemparathy 2010-09-15  
1060     if (len < ctlr->params.min_packet_size) {
ef8c2dab drivers/net/davinci_cpdma.c             Cyril Chemparathy 2010-09-15  
1061             len = ctlr->params.min_packet_size;
ef8c2dab drivers/net/davinci_cpdma.c             Cyril Chemparathy 2010-09-15  
1062             chan->stats.runt_transmit_buff++;
ef8c2dab drivers/net/davinci_cpdma.c             Cyril Chemparathy 2010-09-15  
1063     }
ef8c2dab drivers/net/davinci_cpdma.c             Cyril Chemparathy 2010-09-15  
1064  
ef8c2dab drivers/net/davinci_cpdma.c             Cyril Chemparathy 2010-09-15  
1065     buffer = dma_map_single(ctlr->dev, data, len, chan->dir);
14bd0769 drivers/net/ethernet/ti/davinci_cpdma.c Sebastian Siewior 2013-06-20  
1066     ret = dma_mapping_error(ctlr->dev, buffer);
14bd0769 drivers/net/ethernet/ti/davinci_cpdma.c Sebastian Siewior 2013-06-20  
1067     if (ret) {
14bd0769 drivers/net/ethernet/ti/davinci_cpdma.c Sebastian Siewior 2013-06-20  
1068             cpdma_desc_free(ctlr->pool, desc, 1);
14bd0769 drivers/net/ethernet/ti/davinci_cpdma.c Sebastian Siewior 2013-06-20  
1069             ret = -EINVAL;
14bd0769 drivers/net/ethernet/ti/davinci_cpdma.c Sebastian Siewior 2013-06-20  
1070             goto unlock_ret;
14bd0769 drivers/net/ethernet/ti/davinci_cpdma.c Sebastian Siewior 2013-06-20  
1071     }
14bd0769 drivers/net/ethernet/ti/davinci_cpdma.c Sebastian Siewior 2013-06-20  
1072  
ef8c2dab drivers/net/davinci_cpdma.c             Cyril Chemparathy 2010-09-15  
1073     mode = CPDMA_DESC_OWNER | CPDMA_DESC_SOP | CPDMA_DESC_EOP;
f6e135c8 drivers/net/ethernet/ti/davinci_cpdma.c Mugunthan V N     2013-02-11  
1074     cpdma_desc_to_port(chan, mode, directed);
ef8c2dab drivers/net/davinci_cpdma.c             Cyril Chemparathy 2010-09-15  
1075  
a6c83ccf drivers/net/ethernet/ti/davinci_cpdma.c Grygorii Strashko 2017-01-06  
1076     /* Relaxed IO accessors can be used here as there is read barrier
a6c83ccf drivers/net/ethernet/ti/davinci_cpdma.c Grygorii Strashko 2017-01-06  
1077      * at the end of write sequence.
a6c83ccf drivers/net/ethernet/ti/davinci_cpdma.c Grygorii Strashko 2017-01-06  
1078      */
a6c83ccf drivers/net/ethernet/ti/davinci_cpdma.c Grygorii Strashko 2017-01-06  
1079     writel_relaxed(0, &desc->hw_next);
a6c83ccf drivers/net/ethernet/ti/davinci_cpdma.c Grygorii Strashko 2017-01-06  
1080     writel_relaxed(buffer, &desc->hw_buffer);
a6c83ccf drivers/net/ethernet/ti/davinci_cpdma.c Grygorii Strashko 2017-01-06  
1081     writel_relaxed(len, &desc->hw_len);
a6c83ccf drivers/net/ethernet/ti/davinci_cpdma.c Grygorii Strashko 2017-01-06  
1082     writel_relaxed(mode | len, &desc->hw_mode);
a6c83ccf drivers/net/ethernet/ti/davinci_cpdma.c Grygorii Strashko 2017-01-06 
@1083     writel_relaxed(token, &desc->sw_token);
a6c83ccf drivers/net/ethernet/ti/davinci_cpdma.c Grygorii Strashko 2017-01-06  
1084     writel_relaxed(buffer, &desc->sw_buffer);
a6c83ccf drivers/net/ethernet/ti/davinci_cpdma.c Grygorii Strashko 2017-01-06  
1085     writel_relaxed(len, &desc->sw_len);
a6c83ccf drivers/net/ethernet/ti/davinci_cpdma.c Grygorii Strashko 2017-01-06  
1086     desc_read(desc, sw_len);
ef8c2dab drivers/net/davinci_cpdma.c             Cyril Chemparathy 2010-09-15  
1087  
ef8c2dab drivers/net/davinci_cpdma.c             Cyril Chemparathy 2010-09-15  
1088     __cpdma_chan_submit(chan, desc);
ef8c2dab drivers/net/davinci_cpdma.c             Cyril Chemparathy 2010-09-15  
1089  
ef8c2dab drivers/net/davinci_cpdma.c             Cyril Chemparathy 2010-09-15  
1090     if (chan->state == CPDMA_STATE_ACTIVE && chan->rxfree)
ef8c2dab drivers/net/davinci_cpdma.c             Cyril Chemparathy 2010-09-15  
1091             chan_write(chan, rxfree, 1);
ef8c2dab drivers/net/davinci_cpdma.c             Cyril Chemparathy 2010-09-15  
1092  
ef8c2dab drivers/net/davinci_cpdma.c             Cyril Chemparathy 2010-09-15  
1093     chan->count++;
ef8c2dab drivers/net/davinci_cpdma.c             Cyril Chemparathy 2010-09-15  
1094  
ef8c2dab drivers/net/davinci_cpdma.c             Cyril Chemparathy 2010-09-15  
1095  unlock_ret:
ef8c2dab drivers/net/davinci_cpdma.c             Cyril Chemparathy 2010-09-15  
1096     spin_unlock_irqrestore(&chan->lock, flags);
ef8c2dab drivers/net/davinci_cpdma.c             Cyril Chemparathy 2010-09-15  
1097     return ret;
ef8c2dab drivers/net/davinci_cpdma.c             Cyril Chemparathy 2010-09-15  
1098  }
32a6d90b drivers/net/ethernet/ti/davinci_cpdma.c Arnd Bergmann     2012-04-20  
1099  EXPORT_SYMBOL_GPL(cpdma_chan_submit);
ef8c2dab drivers/net/davinci_cpdma.c             Cyril Chemparathy 2010-09-15  
1100  

:::::: The code at line 1083 was first introduced by commit
:::::: a6c83ccf3c534214e0aeb167a70391864da9b1fc net: ethernet: ti: cpdma: 
am437x: allow descs to be plased in ddr

:::::: TO: Grygorii Strashko <grygorii.stras...@ti.com>
:::::: CC: David S. Miller <da...@davemloft.net>

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

Attachment: .config.gz
Description: application/gzip

Reply via email to