Re: [PATCH] mmc: mmci: add missing include of mmci_qcom_dml.h

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,

[auto build test ERROR on ulf.hansson-mmc/next]
[also build test ERROR on v4.7-rc2 next-20160609]
[if your patch is applied to the wrong git tree, please drop us a note to help improve the system]

url:    https://github.com/0day-ci/linux/commits/Ben-Dooks/mmc-mmci-add-missing-include-of-mmci_qcom_dml-h/20160609-021829
base:   https://git.linaro.org/people/ulf.hansson/mmc next
config: arm64-allmodconfig (attached as .config)
compiler: aarch64-linux-gnu-gcc (Debian 5.3.1-8) 5.3.1 20160205
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=arm64 

All errors (new ones prefixed by >>):

>> drivers/mmc/host/mmci_qcom_dml.c:58:6: error: redefinition of 'dml_start_xfer'
    void dml_start_xfer(struct mmci_host *host, struct mmc_data *data)
         ^
   In file included from drivers/mmc/host/mmci_qcom_dml.c:21:0:
   drivers/mmc/host/mmci_qcom_dml.h:26:20: note: previous definition of 'dml_start_xfer' was here
    static inline void dml_start_xfer(struct mmci_host *host, struct mmc_data *data)
                       ^
>> drivers/mmc/host/mmci_qcom_dml.c:123:5: error: redefinition of 'dml_hw_init'
    int dml_hw_init(struct mmci_host *host, struct device_node *np)
        ^
   In file included from drivers/mmc/host/mmci_qcom_dml.c:21:0:
   drivers/mmc/host/mmci_qcom_dml.h:22:19: note: previous definition of 'dml_hw_init' was here
    static inline int dml_hw_init(struct mmci_host *host, struct device_node *np)
                      ^

vim +/dml_start_xfer +58 drivers/mmc/host/mmci_qcom_dml.c

9cb15142 Srinivas Kandagatla 2014-07-29   52  /* other definitions */
9cb15142 Srinivas Kandagatla 2014-07-29   53  #define PRODUCER_PIPE_LOGICAL_SIZE	4096
9cb15142 Srinivas Kandagatla 2014-07-29   54  #define CONSUMER_PIPE_LOGICAL_SIZE	4096
9cb15142 Srinivas Kandagatla 2014-07-29   55  
9cb15142 Srinivas Kandagatla 2014-07-29   56  #define DML_OFFSET			0x800
9cb15142 Srinivas Kandagatla 2014-07-29   57  
9cb15142 Srinivas Kandagatla 2014-07-29  @58  void dml_start_xfer(struct mmci_host *host, struct mmc_data *data)
9cb15142 Srinivas Kandagatla 2014-07-29   59  {
9cb15142 Srinivas Kandagatla 2014-07-29   60  	u32 config;
9cb15142 Srinivas Kandagatla 2014-07-29   61  	void __iomem *base = host->base + DML_OFFSET;
9cb15142 Srinivas Kandagatla 2014-07-29   62  
9cb15142 Srinivas Kandagatla 2014-07-29   63  	if (data->flags & MMC_DATA_READ) {
9cb15142 Srinivas Kandagatla 2014-07-29   64  		/* Read operation: configure DML for producer operation */
9cb15142 Srinivas Kandagatla 2014-07-29   65  		/* Set producer CRCI-x and disable consumer CRCI */
9cb15142 Srinivas Kandagatla 2014-07-29   66  		config = readl_relaxed(base + DML_CONFIG);
9cb15142 Srinivas Kandagatla 2014-07-29   67  		config = (config & ~PRODUCER_CRCI_MSK) | PRODUCER_CRCI_X_SEL;
9cb15142 Srinivas Kandagatla 2014-07-29   68  		config = (config & ~CONSUMER_CRCI_MSK) | CONSUMER_CRCI_DISABLE;
9cb15142 Srinivas Kandagatla 2014-07-29   69  		writel_relaxed(config, base + DML_CONFIG);
9cb15142 Srinivas Kandagatla 2014-07-29   70  
9cb15142 Srinivas Kandagatla 2014-07-29   71  		/* Set the Producer BAM block size */
9cb15142 Srinivas Kandagatla 2014-07-29   72  		writel_relaxed(data->blksz, base + DML_PRODUCER_BAM_BLOCK_SIZE);
9cb15142 Srinivas Kandagatla 2014-07-29   73  
9cb15142 Srinivas Kandagatla 2014-07-29   74  		/* Set Producer BAM Transaction size */
9cb15142 Srinivas Kandagatla 2014-07-29   75  		writel_relaxed(data->blocks * data->blksz,
9cb15142 Srinivas Kandagatla 2014-07-29   76  			       base + DML_PRODUCER_BAM_TRANS_SIZE);
9cb15142 Srinivas Kandagatla 2014-07-29   77  		/* Set Producer Transaction End bit */
9cb15142 Srinivas Kandagatla 2014-07-29   78  		config = readl_relaxed(base + DML_CONFIG);
9cb15142 Srinivas Kandagatla 2014-07-29   79  		config |= PRODUCER_TRANS_END_EN;
9cb15142 Srinivas Kandagatla 2014-07-29   80  		writel_relaxed(config, base + DML_CONFIG);
9cb15142 Srinivas Kandagatla 2014-07-29   81  		/* Trigger producer */
9cb15142 Srinivas Kandagatla 2014-07-29   82  		writel_relaxed(1, base + DML_PRODUCER_START);
9cb15142 Srinivas Kandagatla 2014-07-29   83  	} else {
9cb15142 Srinivas Kandagatla 2014-07-29   84  		/* Write operation: configure DML for consumer operation */
9cb15142 Srinivas Kandagatla 2014-07-29   85  		/* Set consumer CRCI-x and disable producer CRCI*/
9cb15142 Srinivas Kandagatla 2014-07-29   86  		config = readl_relaxed(base + DML_CONFIG);
9cb15142 Srinivas Kandagatla 2014-07-29   87  		config = (config & ~CONSUMER_CRCI_MSK) | CONSUMER_CRCI_X_SEL;
9cb15142 Srinivas Kandagatla 2014-07-29   88  		config = (config & ~PRODUCER_CRCI_MSK) | PRODUCER_CRCI_DISABLE;
9cb15142 Srinivas Kandagatla 2014-07-29   89  		writel_relaxed(config, base + DML_CONFIG);
9cb15142 Srinivas Kandagatla 2014-07-29   90  		/* Clear Producer Transaction End bit */
9cb15142 Srinivas Kandagatla 2014-07-29   91  		config = readl_relaxed(base + DML_CONFIG);
9cb15142 Srinivas Kandagatla 2014-07-29   92  		config &= ~PRODUCER_TRANS_END_EN;
9cb15142 Srinivas Kandagatla 2014-07-29   93  		writel_relaxed(config, base + DML_CONFIG);
9cb15142 Srinivas Kandagatla 2014-07-29   94  		/* Trigger consumer */
9cb15142 Srinivas Kandagatla 2014-07-29   95  		writel_relaxed(1, base + DML_CONSUMER_START);
9cb15142 Srinivas Kandagatla 2014-07-29   96  	}
9cb15142 Srinivas Kandagatla 2014-07-29   97  
9cb15142 Srinivas Kandagatla 2014-07-29   98  	/* make sure the dml is configured before dma is triggered */
9cb15142 Srinivas Kandagatla 2014-07-29   99  	wmb();
9cb15142 Srinivas Kandagatla 2014-07-29  100  }
9cb15142 Srinivas Kandagatla 2014-07-29  101  
9cb15142 Srinivas Kandagatla 2014-07-29  102  static int of_get_dml_pipe_index(struct device_node *np, const char *name)
9cb15142 Srinivas Kandagatla 2014-07-29  103  {
9cb15142 Srinivas Kandagatla 2014-07-29  104  	int index;
9cb15142 Srinivas Kandagatla 2014-07-29  105  	struct of_phandle_args	dma_spec;
9cb15142 Srinivas Kandagatla 2014-07-29  106  
9cb15142 Srinivas Kandagatla 2014-07-29  107  	index = of_property_match_string(np, "dma-names", name);
9cb15142 Srinivas Kandagatla 2014-07-29  108  
9cb15142 Srinivas Kandagatla 2014-07-29  109  	if (index < 0)
9cb15142 Srinivas Kandagatla 2014-07-29  110  		return -ENODEV;
9cb15142 Srinivas Kandagatla 2014-07-29  111  
9cb15142 Srinivas Kandagatla 2014-07-29  112  	if (of_parse_phandle_with_args(np, "dmas", "#dma-cells", index,
9cb15142 Srinivas Kandagatla 2014-07-29  113  				       &dma_spec))
9cb15142 Srinivas Kandagatla 2014-07-29  114  		return -ENODEV;
9cb15142 Srinivas Kandagatla 2014-07-29  115  
9cb15142 Srinivas Kandagatla 2014-07-29  116  	if (dma_spec.args_count)
9cb15142 Srinivas Kandagatla 2014-07-29  117  		return dma_spec.args[0];
9cb15142 Srinivas Kandagatla 2014-07-29  118  
9cb15142 Srinivas Kandagatla 2014-07-29  119  	return -ENODEV;
9cb15142 Srinivas Kandagatla 2014-07-29  120  }
9cb15142 Srinivas Kandagatla 2014-07-29  121  
9cb15142 Srinivas Kandagatla 2014-07-29  122  /* Initialize the dml hardware connected to SD Card controller */
9cb15142 Srinivas Kandagatla 2014-07-29 @123  int dml_hw_init(struct mmci_host *host, struct device_node *np)
9cb15142 Srinivas Kandagatla 2014-07-29  124  {
9cb15142 Srinivas Kandagatla 2014-07-29  125  	u32 config;
9cb15142 Srinivas Kandagatla 2014-07-29  126  	void __iomem *base;

:::::: The code at line 58 was first introduced by commit
:::::: 9cb15142d0e336874ecc753e9a4e5696c46a67d9 mmc: mmci: Add qcom dml support to the driver.

:::::: TO: Srinivas Kandagatla <srinivas.kandagatla@xxxxxxxxxx>
:::::: CC: Ulf Hansson <ulf.hansson@xxxxxxxxxx>

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

Attachment: .config.gz
Description: Binary data


[Index of Archives]     [Linux USB Devel]     [Linux Media]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux