* [PATCH] mmc: mmci: add missing include of mmci_qcom_dml.h
@ 2016-06-08 18:15 Ben Dooks
2016-06-09 17:24 ` kbuild test robot
0 siblings, 1 reply; 7+ messages in thread
From: Ben Dooks @ 2016-06-08 18:15 UTC (permalink / raw)
To: linux-kernel; +Cc: Ben Dooks, Ulf Hansson, linux-mmc, linux-arm-kernel
Fix the missing declarations of dml_start_xfer() and
dml_hw_init() by including mmci_qcom_dml.h to fix the
following warnings:
drivers/mmc/host/mmci_qcom_dml.c:57:6: warning: symbol 'dml_start_xfer' was not declared. Should it be static?
drivers/mmc/host/mmci_qcom_dml.c:122:5: warning: symbol 'dml_hw_init' was not declared. Should it be static?
Signed-off-by: Ben Dooks <ben.dooks@codethink.co.uk>
---
Cc: Ulf Hansson <ulf.hansson@linaro.org>
Cc: linux-mmc@vger.kernel.org
Cc: linux-arm-kernel@lists.infadead.org
---
drivers/mmc/host/mmci_qcom_dml.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/drivers/mmc/host/mmci_qcom_dml.c b/drivers/mmc/host/mmci_qcom_dml.c
index 2b7fc37..54fd58b 100644
--- a/drivers/mmc/host/mmci_qcom_dml.c
+++ b/drivers/mmc/host/mmci_qcom_dml.c
@@ -18,6 +18,7 @@
#include <linux/mmc/host.h>
#include <linux/mmc/card.h>
#include "mmci.h"
+#include "mmci_qcom_dml.h"
/* Registers */
#define DML_CONFIG 0x00
--
2.8.1
^ permalink raw reply related [flat|nested] 7+ messages in thread
* Re: [PATCH] mmc: mmci: add missing include of mmci_qcom_dml.h
2016-06-09 17:24 ` kbuild test robot
@ 2016-06-09 17:16 ` Ben Dooks
2016-06-09 17:45 ` [Linux-kernel] " Ben Dooks
0 siblings, 1 reply; 7+ messages in thread
From: Ben Dooks @ 2016-06-09 17:16 UTC (permalink / raw)
To: kbuild test robot
Cc: kbuild-all, linux-kernel, Ulf Hansson, linux-mmc, linux-arm-kernel
On 09/06/16 18:24, kbuild test robot wrote:
> 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)
>
Looks like this driver is going to fail to build
when CONFIG_MMC_QCOM_DML=m as it'll not trigger
the config in QCOM_DML properly.
Shall I push a second patch to fix this?
--
Ben Dooks http://www.codethink.co.uk/
Senior Engineer Codethink - Providing Genius
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH] mmc: mmci: add missing include of mmci_qcom_dml.h
2016-06-08 18:15 [PATCH] mmc: mmci: add missing include of mmci_qcom_dml.h Ben Dooks
@ 2016-06-09 17:24 ` kbuild test robot
2016-06-09 17:16 ` Ben Dooks
0 siblings, 1 reply; 7+ messages in thread
From: kbuild test robot @ 2016-06-09 17:24 UTC (permalink / raw)
Cc: kbuild-all, linux-kernel, Ben Dooks, Ulf Hansson, linux-mmc,
linux-arm-kernel
[-- Attachment #1: Type: text/plain, Size: 7931 bytes --]
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@linaro.org>
:::::: CC: Ulf Hansson <ulf.hansson@linaro.org>
---
0-DAY kernel test infrastructure Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all Intel Corporation
[-- Attachment #2: .config.gz --]
[-- Type: application/octet-stream, Size: 50208 bytes --]
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [Linux-kernel] [PATCH] mmc: mmci: add missing include of mmci_qcom_dml.h
2016-06-09 17:16 ` Ben Dooks
@ 2016-06-09 17:45 ` Ben Dooks
2016-06-14 13:44 ` Ben Hutchings
0 siblings, 1 reply; 7+ messages in thread
From: Ben Dooks @ 2016-06-09 17:45 UTC (permalink / raw)
To: kbuild test robot
Cc: linux-kernel, linux-arm-kernel, Ulf Hansson, linux-mmc, kbuild-all
On 09/06/16 18:16, Ben Dooks wrote:
> On 09/06/16 18:24, kbuild test robot wrote:
>> 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)
>>
>
> Looks like this driver is going to fail to build
> when CONFIG_MMC_QCOM_DML=m as it'll not trigger
> the config in QCOM_DML properly.
>
> Shall I push a second patch to fix this?
>
After looking at the build, it looks like this is broken
for the case of building mmci as a module. I think this is
the right fix.
commit be3bf8f3b56d9cfb2fcba88e638ec853d0484cbb
Author: Ben Dooks <ben.dooks@codethink.co.uk>
Date: Thu Jun 9 18:42:53 2016 +0100
mmci: fixup module build with new mmci_qcom_dml
Fix the module build for the mmci code if it is built as
a module and the MMC_QCOM_DML option is also set. If so
then we need to build a composite module of the two files
to ensure they link properly.
Signed-off-by: Ben Dooks <ben.dooks@codethink.co.uk>
diff --git a/drivers/mmc/host/Makefile b/drivers/mmc/host/Makefile
index af918d2..b57db76 100644
--- a/drivers/mmc/host/Makefile
+++ b/drivers/mmc/host/Makefile
@@ -3,7 +3,8 @@
#
obj-$(CONFIG_MMC_ARMMMCI) += mmci.o
-obj-$(CONFIG_MMC_QCOM_DML) += mmci_qcom_dml.o
+mmci-y += mmci_core.o
+mmci-$(subst m,y,$(CONFIG_MMC_QCOM_DML)) += mmci_qcom_dml.o
obj-$(CONFIG_MMC_PXA) += pxamci.o
obj-$(CONFIG_MMC_MXC) += mxcmmc.o
obj-$(CONFIG_MMC_MXS) += mxs-mmc.o
diff --git a/drivers/mmc/host/mmci.c b/drivers/mmc/host/mmci_core.c
similarity index 100%
rename from drivers/mmc/host/mmci.c
rename to drivers/mmc/host/mmci_core.c
diff --git a/drivers/mmc/host/mmci_qcom_dml.h
b/drivers/mmc/host/mmci_qcom_dml.h
index 6e405d0..d77873d 100644
--- a/drivers/mmc/host/mmci_qcom_dml.h
+++ b/drivers/mmc/host/mmci_qcom_dml.h
@@ -15,7 +15,7 @@
#ifndef __MMC_QCOM_DML_H__
#define __MMC_QCOM_DML_H__
-#ifdef CONFIG_MMC_QCOM_DML
+#if defined(CONFIG_MMC_QCOM_DML) || defined(CONFIG_MMC_QCOM_DML_MODULE)
int dml_hw_init(struct mmci_host *host, struct device_node *np);
void dml_start_xfer(struct mmci_host *host, struct mmc_data *data);
#else
--
Ben Dooks http://www.codethink.co.uk/
Senior Engineer Codethink - Providing Genius
^ permalink raw reply related [flat|nested] 7+ messages in thread
* Re: [Linux-kernel] [PATCH] mmc: mmci: add missing include of mmci_qcom_dml.h
2016-06-09 17:45 ` [Linux-kernel] " Ben Dooks
@ 2016-06-14 13:44 ` Ben Hutchings
2016-06-16 15:17 ` Ben Dooks
0 siblings, 1 reply; 7+ messages in thread
From: Ben Hutchings @ 2016-06-14 13:44 UTC (permalink / raw)
To: Ben Dooks
Cc: kbuild test robot, linux-kernel, linux-arm-kernel, Ulf Hansson,
linux-mmc, kbuild-all
On Thu, 2016-06-09 at 18:45 +0100, Ben Dooks wrote:
[...]
> After looking at the build, it looks like this is broken
> for the case of building mmci as a module. I think this is
> the right fix.
>
> commit be3bf8f3b56d9cfb2fcba88e638ec853d0484cbb
> Author: Ben Dooks <ben.dooks@codethink.co.uk>
> Date: Thu Jun 9 18:42:53 2016 +0100
>
> mmci: fixup module build with new mmci_qcom_dml
>
> Fix the module build for the mmci code if it is built as
> a module and the MMC_QCOM_DML option is also set. If so
> then we need to build a composite module of the two files
> to ensure they link properly.
>
> Signed-off-by: Ben Dooks <ben.dooks@codethink.co.uk>
>
> diff --git a/drivers/mmc/host/Makefile b/drivers/mmc/host/Makefile
> index af918d2..b57db76 100644
> --- a/drivers/mmc/host/Makefile
> +++ b/drivers/mmc/host/Makefile
> @@ -3,7 +3,8 @@
> #
>
> obj-$(CONFIG_MMC_ARMMMCI) += mmci.o
> -obj-$(CONFIG_MMC_QCOM_DML) += mmci_qcom_dml.o
> +mmci-y += mmci_core.o
> +mmci-$(subst m,y,$(CONFIG_MMC_QCOM_DML)) += mmci_qcom_dml.o
[...]
If mmci_core.o and mmci_qcom_dml.o will always be linked together then
MMC_QCOM_DML should be a boolean and you don't need any substitution
here.
Ben.
--
Ben Hutchings
Software Developer, Codethink Ltd.
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [Linux-kernel] [PATCH] mmc: mmci: add missing include of mmci_qcom_dml.h
2016-06-14 13:44 ` Ben Hutchings
@ 2016-06-16 15:17 ` Ben Dooks
2016-06-16 15:52 ` Ben Hutchings
0 siblings, 1 reply; 7+ messages in thread
From: Ben Dooks @ 2016-06-16 15:17 UTC (permalink / raw)
To: Ben Hutchings
Cc: kbuild test robot, linux-kernel, linux-arm-kernel, Ulf Hansson,
linux-mmc, kbuild-all
On 14/06/16 14:44, Ben Hutchings wrote:
> On Thu, 2016-06-09 at 18:45 +0100, Ben Dooks wrote:
> [...]
>> After looking at the build, it looks like this is broken
>> for the case of building mmci as a module. I think this is
>> the right fix.
>>
>> commit be3bf8f3b56d9cfb2fcba88e638ec853d0484cbb
>> Author: Ben Dooks <ben.dooks@codethink.co.uk>
>> Date: Thu Jun 9 18:42:53 2016 +0100
>>
>> mmci: fixup module build with new mmci_qcom_dml
>>
>> Fix the module build for the mmci code if it is built as
>> a module and the MMC_QCOM_DML option is also set. If so
>> then we need to build a composite module of the two files
>> to ensure they link properly.
>>
>> Signed-off-by: Ben Dooks <ben.dooks@codethink.co.uk>
>>
>> diff --git a/drivers/mmc/host/Makefile b/drivers/mmc/host/Makefile
>> index af918d2..b57db76 100644
>> --- a/drivers/mmc/host/Makefile
>> +++ b/drivers/mmc/host/Makefile
>> @@ -3,7 +3,8 @@
>> #
>>
>> obj-$(CONFIG_MMC_ARMMMCI) += mmci.o
>> -obj-$(CONFIG_MMC_QCOM_DML) += mmci_qcom_dml.o
>> +mmci-y += mmci_core.o
>> +mmci-$(subst m,y,$(CONFIG_MMC_QCOM_DML)) += mmci_qcom_dml.o
> [...]
>
> If mmci_core.o and mmci_qcom_dml.o will always be linked together then
> MMC_QCOM_DML should be a boolean and you don't need any substitution
> here.
I'll try and check later, I somehow thought mmci-y and mmci-m wouldn't
build together.
--
Ben Dooks http://www.codethink.co.uk/
Senior Engineer Codethink - Providing Genius
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [Linux-kernel] [PATCH] mmc: mmci: add missing include of mmci_qcom_dml.h
2016-06-16 15:17 ` Ben Dooks
@ 2016-06-16 15:52 ` Ben Hutchings
0 siblings, 0 replies; 7+ messages in thread
From: Ben Hutchings @ 2016-06-16 15:52 UTC (permalink / raw)
To: Ben Dooks
Cc: kbuild test robot, linux-kernel, linux-arm-kernel, Ulf Hansson,
linux-mmc, kbuild-all
On Thu, 2016-06-16 at 16:17 +0100, Ben Dooks wrote:
> On 14/06/16 14:44, Ben Hutchings wrote:
> > On Thu, 2016-06-09 at 18:45 +0100, Ben Dooks wrote:
> > [...]
> >> After looking at the build, it looks like this is broken
> >> for the case of building mmci as a module. I think this is
> >> the right fix.
> >>
> >> commit be3bf8f3b56d9cfb2fcba88e638ec853d0484cbb
> >> Author: Ben Dooks <ben.dooks@codethink.co.uk>
> >> Date: Thu Jun 9 18:42:53 2016 +0100
> >>
> >> mmci: fixup module build with new mmci_qcom_dml
> >>
> >> Fix the module build for the mmci code if it is built as
> >> a module and the MMC_QCOM_DML option is also set. If so
> >> then we need to build a composite module of the two files
> >> to ensure they link properly.
> >>
> >> Signed-off-by: Ben Dooks <ben.dooks@codethink.co.uk>
> >>
> >> diff --git a/drivers/mmc/host/Makefile b/drivers/mmc/host/Makefile
> >> index af918d2..b57db76 100644
> >> --- a/drivers/mmc/host/Makefile
> >> +++ b/drivers/mmc/host/Makefile
> >> @@ -3,7 +3,8 @@
> >> #
> >>
> >> obj-$(CONFIG_MMC_ARMMMCI) += mmci.o
> >> -obj-$(CONFIG_MMC_QCOM_DML) += mmci_qcom_dml.o
> >> +mmci-y += mmci_core.o
> >> +mmci-$(subst m,y,$(CONFIG_MMC_QCOM_DML)) += mmci_qcom_dml.o
> > [...]
> >
> > If mmci_core.o and mmci_qcom_dml.o will always be linked together then
> > MMC_QCOM_DML should be a boolean and you don't need any substitution
> > here.
>
> I'll try and check later, I somehow thought mmci-y and mmci-m wouldn't
> build together.
They won't; that's why you make MMC_QCOM_DML a boolean.
Ben.
--
Ben Hutchings
Software Developer, Codethink Ltd.
^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2016-06-16 15:52 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-06-08 18:15 [PATCH] mmc: mmci: add missing include of mmci_qcom_dml.h Ben Dooks
2016-06-09 17:24 ` kbuild test robot
2016-06-09 17:16 ` Ben Dooks
2016-06-09 17:45 ` [Linux-kernel] " Ben Dooks
2016-06-14 13:44 ` Ben Hutchings
2016-06-16 15:17 ` Ben Dooks
2016-06-16 15:52 ` Ben Hutchings
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.