[-- Attachment #1: Type: text/plain, Size: 837 bytes --] Hi Grant, After merging the spi tree, today's linux-next build (x86_64 allmodconfig) failed like this: drivers/mmc/host/mmc_spi.c: In function 'mmc_spi_readbytes': drivers/mmc/host/mmc_spi.c:185: error: implicit declaration of function 'spi_sync_locked' drivers/mmc/host/mmc_spi.c: In function 'mmc_spi_request': drivers/mmc/host/mmc_spi.c:1088: error: implicit declaration of function 'spi_bus_lock' drivers/mmc/host/mmc_spi.c:1101: error: implicit declaration of function 'spi_bus_unlock' Caused by commit f0168ff4069fba07fdd4b05aa19f283171c8d265 ("spi/mmc_spi: mmc_spi adaptations for SPI bus locking API"). Maybe updates to another file were missed? I have used the spi tree from next-20100628 for today. -- Cheers, Stephen Rothwell sfr@canb.auug.org.au http://www.canb.auug.org.au/~sfr/ [-- Attachment #2: Type: application/pgp-signature, Size: 490 bytes --]
On Mon, Jun 28, 2010 at 8:29 PM, Stephen Rothwell <sfr@canb.auug.org.au> wrote:
> Hi Grant,
>
> After merging the spi tree, today's linux-next build (x86_64 allmodconfig)
> failed like this:
>
> drivers/mmc/host/mmc_spi.c: In function 'mmc_spi_readbytes':
> drivers/mmc/host/mmc_spi.c:185: error: implicit declaration of function 'spi_sync_locked'
> drivers/mmc/host/mmc_spi.c: In function 'mmc_spi_request':
> drivers/mmc/host/mmc_spi.c:1088: error: implicit declaration of function 'spi_bus_lock'
> drivers/mmc/host/mmc_spi.c:1101: error: implicit declaration of function 'spi_bus_unlock'
>
> Caused by commit f0168ff4069fba07fdd4b05aa19f283171c8d265 ("spi/mmc_spi:
> mmc_spi adaptations for SPI bus locking API"). Maybe updates to another
> file were missed?
Yup, bad tree on my part. Reset back to 2.6.35-rc3 now.
g.
--
Grant Likely, B.Sc., P.Eng.
Secret Lab Technologies Ltd.
[-- Attachment #1: Type: text/plain, Size: 672 bytes --] Hi Grant, After merging the spi tree, today's linux-next build (x86_64 allmodconfig) failed like this: drivers/mtd/devices/m25p80.c: In function 'm25p_probe': drivers/mtd/devices/m25p80.c:927: error: 'struct device' has no member named 'of_node' drivers/mtd/devices/m25p80.c:929: error: 'struct device' has no member named 'of_node' Caused by commit 2bf990280d6074228f6e4c18ad01c0674c5c11c8 ("mtd/m25p80: add support to parse the partitions by OF node"). CONFIG_OF is not set for this build. I have used the spi tree form next-20101013 for today. -- Cheers, Stephen Rothwell sfr@canb.auug.org.au http://www.canb.auug.org.au/~sfr/ [-- Attachment #2: Type: application/pgp-signature, Size: 490 bytes --]
On Wed, Oct 13, 2010 at 7:55 PM, Stephen Rothwell <sfr@canb.auug.org.au> wrote: > Hi Grant, > > After merging the spi tree, today's linux-next build (x86_64 allmodconfig) > failed like this: > > drivers/mtd/devices/m25p80.c: In function 'm25p_probe': > drivers/mtd/devices/m25p80.c:927: error: 'struct device' has no member named 'of_node' > drivers/mtd/devices/m25p80.c:929: error: 'struct device' has no member named 'of_node' Oops, I wasn't supposed to push that patch yet. I'll pull it out. g. > > Caused by commit 2bf990280d6074228f6e4c18ad01c0674c5c11c8 ("mtd/m25p80: > add support to parse the partitions by OF node"). CONFIG_OF is not set > for this build. > > I have used the spi tree form next-20101013 for today. > -- > Cheers, > Stephen Rothwell sfr@canb.auug.org.au > http://www.canb.auug.org.au/~sfr/ > -- Grant Likely, B.Sc., P.Eng. Secret Lab Technologies Ltd.
Hi Grant, After merging the spi tree, today's linux-next build (x86_64 allmodconfig) failed like this: make[3]: *** No rule to make target `drivers/spi/spi-dw-midpci.c', needed by `drivers/spi/spi-dw-midpci.o'. Stop. Caused by commit f8f82d4e7529 ("spi: reorganize drivers"). I have used the spi tree from next-20110606 for today. -- Cheers, Stephen Rothwell sfr@canb.auug.org.au http://www.canb.auug.org.au/~sfr/
On Tue, Jun 07, 2011 at 12:53:59PM +1000, Stephen Rothwell wrote:
> Hi Grant,
>
> After merging the spi tree, today's linux-next build (x86_64 allmodconfig)
> failed like this:
>
> make[3]: *** No rule to make target `drivers/spi/spi-dw-midpci.c', needed by `drivers/spi/spi-dw-midpci.o'. Stop.
>
> Caused by commit f8f82d4e7529 ("spi: reorganize drivers").
>
> I have used the spi tree from next-20110606 for today.
Oops, missed one change. Fixed now, thanks.
g.
[-- Attachment #1: Type: text/plain, Size: 14445 bytes --] Hi Mark, After merging the spi tree, today's linux-next build (x86_64 allmodconfig) failed like this: drivers/spi/spi-pxa2xx-pxadma.c: In function 'wait_dma_channel_stop': drivers/spi/spi-pxa2xx-pxadma.c:136:2: error: implicit declaration of function 'DCSR' [-Werror=implicit-function-declaration] while (!(DCSR(channel) & DCSR_STOPSTATE) && --limit) ^ drivers/spi/spi-pxa2xx-pxadma.c:136:27: error: 'DCSR_STOPSTATE' undeclared (first use in this function) while (!(DCSR(channel) & DCSR_STOPSTATE) && --limit) ^ drivers/spi/spi-pxa2xx-pxadma.c:136:27: note: each undeclared identifier is reported only once for each function it appears in drivers/spi/spi-pxa2xx-pxadma.c: In function 'pxa2xx_spi_dma_error_stop': drivers/spi/spi-pxa2xx-pxadma.c:32:28: error: 'DCSR_NODESC' undeclared (first use in this function) #define RESET_DMA_CHANNEL (DCSR_NODESC | DMA_INT_MASK) ^ drivers/spi/spi-pxa2xx-pxadma.c:148:31: note: in expansion of macro 'RESET_DMA_CHANNEL' DCSR(drv_data->rx_channel) = RESET_DMA_CHANNEL; ^ drivers/spi/spi-pxa2xx-pxadma.c:31:24: error: 'DCSR_ENDINTR' undeclared (first use in this function) #define DMA_INT_MASK (DCSR_ENDINTR | DCSR_STARTINTR | DCSR_BUSERR) ^ drivers/spi/spi-pxa2xx-pxadma.c:32:42: note: in expansion of macro 'DMA_INT_MASK' #define RESET_DMA_CHANNEL (DCSR_NODESC | DMA_INT_MASK) ^ drivers/spi/spi-pxa2xx-pxadma.c:148:31: note: in expansion of macro 'RESET_DMA_CHANNEL' DCSR(drv_data->rx_channel) = RESET_DMA_CHANNEL; ^ drivers/spi/spi-pxa2xx-pxadma.c:31:39: error: 'DCSR_STARTINTR' undeclared (first use in this function) #define DMA_INT_MASK (DCSR_ENDINTR | DCSR_STARTINTR | DCSR_BUSERR) ^ drivers/spi/spi-pxa2xx-pxadma.c:32:42: note: in expansion of macro 'DMA_INT_MASK' #define RESET_DMA_CHANNEL (DCSR_NODESC | DMA_INT_MASK) ^ drivers/spi/spi-pxa2xx-pxadma.c:148:31: note: in expansion of macro 'RESET_DMA_CHANNEL' DCSR(drv_data->rx_channel) = RESET_DMA_CHANNEL; ^ drivers/spi/spi-pxa2xx-pxadma.c:31:56: error: 'DCSR_BUSERR' undeclared (first use in this function) #define DMA_INT_MASK (DCSR_ENDINTR | DCSR_STARTINTR | DCSR_BUSERR) ^ drivers/spi/spi-pxa2xx-pxadma.c:32:42: note: in expansion of macro 'DMA_INT_MASK' #define RESET_DMA_CHANNEL (DCSR_NODESC | DMA_INT_MASK) ^ drivers/spi/spi-pxa2xx-pxadma.c:148:31: note: in expansion of macro 'RESET_DMA_CHANNEL' DCSR(drv_data->rx_channel) = RESET_DMA_CHANNEL; ^ drivers/spi/spi-pxa2xx-pxadma.c: In function 'pxa2xx_spi_dma_transfer_complete': drivers/spi/spi-pxa2xx-pxadma.c:32:28: error: 'DCSR_NODESC' undeclared (first use in this function) #define RESET_DMA_CHANNEL (DCSR_NODESC | DMA_INT_MASK) ^ drivers/spi/spi-pxa2xx-pxadma.c:173:31: note: in expansion of macro 'RESET_DMA_CHANNEL' DCSR(drv_data->tx_channel) = RESET_DMA_CHANNEL; ^ drivers/spi/spi-pxa2xx-pxadma.c:31:24: error: 'DCSR_ENDINTR' undeclared (first use in this function) #define DMA_INT_MASK (DCSR_ENDINTR | DCSR_STARTINTR | DCSR_BUSERR) ^ drivers/spi/spi-pxa2xx-pxadma.c:32:42: note: in expansion of macro 'DMA_INT_MASK' #define RESET_DMA_CHANNEL (DCSR_NODESC | DMA_INT_MASK) ^ drivers/spi/spi-pxa2xx-pxadma.c:173:31: note: in expansion of macro 'RESET_DMA_CHANNEL' DCSR(drv_data->tx_channel) = RESET_DMA_CHANNEL; ^ drivers/spi/spi-pxa2xx-pxadma.c:31:39: error: 'DCSR_STARTINTR' undeclared (first use in this function) #define DMA_INT_MASK (DCSR_ENDINTR | DCSR_STARTINTR | DCSR_BUSERR) ^ drivers/spi/spi-pxa2xx-pxadma.c:32:42: note: in expansion of macro 'DMA_INT_MASK' #define RESET_DMA_CHANNEL (DCSR_NODESC | DMA_INT_MASK) ^ drivers/spi/spi-pxa2xx-pxadma.c:173:31: note: in expansion of macro 'RESET_DMA_CHANNEL' DCSR(drv_data->tx_channel) = RESET_DMA_CHANNEL; ^ drivers/spi/spi-pxa2xx-pxadma.c:31:56: error: 'DCSR_BUSERR' undeclared (first use in this function) #define DMA_INT_MASK (DCSR_ENDINTR | DCSR_STARTINTR | DCSR_BUSERR) ^ drivers/spi/spi-pxa2xx-pxadma.c:32:42: note: in expansion of macro 'DMA_INT_MASK' #define RESET_DMA_CHANNEL (DCSR_NODESC | DMA_INT_MASK) ^ drivers/spi/spi-pxa2xx-pxadma.c:173:31: note: in expansion of macro 'RESET_DMA_CHANNEL' DCSR(drv_data->tx_channel) = RESET_DMA_CHANNEL; ^ drivers/spi/spi-pxa2xx-pxadma.c:188:4: error: implicit declaration of function 'DCMD' [-Werror=implicit-function-declaration] (DCMD(drv_data->rx_channel) & DCMD_LENGTH); ^ drivers/spi/spi-pxa2xx-pxadma.c:188:34: error: 'DCMD_LENGTH' undeclared (first use in this function) (DCMD(drv_data->rx_channel) & DCMD_LENGTH); ^ drivers/spi/spi-pxa2xx-pxadma.c: In function 'pxa2xx_spi_dma_handler': drivers/spi/spi-pxa2xx-pxadma.c:31:24: error: 'DCSR_ENDINTR' undeclared (first use in this function) #define DMA_INT_MASK (DCSR_ENDINTR | DCSR_STARTINTR | DCSR_BUSERR) ^ drivers/spi/spi-pxa2xx-pxadma.c:213:35: note: in expansion of macro 'DMA_INT_MASK' u32 irq_status = DCSR(channel) & DMA_INT_MASK; ^ drivers/spi/spi-pxa2xx-pxadma.c:31:39: error: 'DCSR_STARTINTR' undeclared (first use in this function) #define DMA_INT_MASK (DCSR_ENDINTR | DCSR_STARTINTR | DCSR_BUSERR) ^ drivers/spi/spi-pxa2xx-pxadma.c:213:35: note: in expansion of macro 'DMA_INT_MASK' u32 irq_status = DCSR(channel) & DMA_INT_MASK; ^ drivers/spi/spi-pxa2xx-pxadma.c:31:56: error: 'DCSR_BUSERR' undeclared (first use in this function) #define DMA_INT_MASK (DCSR_ENDINTR | DCSR_STARTINTR | DCSR_BUSERR) ^ drivers/spi/spi-pxa2xx-pxadma.c:213:35: note: in expansion of macro 'DMA_INT_MASK' u32 irq_status = DCSR(channel) & DMA_INT_MASK; ^ drivers/spi/spi-pxa2xx-pxadma.c: In function 'pxa2xx_spi_dma_transfer': drivers/spi/spi-pxa2xx-pxadma.c:255:36: error: 'DCSR_RUN' undeclared (first use in this function) && (DCSR(drv_data->tx_channel) & DCSR_RUN)) { ^ drivers/spi/spi-pxa2xx-pxadma.c: In function 'pxa2xx_spi_dma_prepare': drivers/spi/spi-pxa2xx-pxadma.c:283:15: error: 'DCMD_WIDTH1' undeclared (first use in this function) dma_width = DCMD_WIDTH1; ^ drivers/spi/spi-pxa2xx-pxadma.c:286:15: error: 'DCMD_WIDTH2' undeclared (first use in this function) dma_width = DCMD_WIDTH2; ^ drivers/spi/spi-pxa2xx-pxadma.c:289:15: error: 'DCMD_WIDTH4' undeclared (first use in this function) dma_width = DCMD_WIDTH4; ^ drivers/spi/spi-pxa2xx-pxadma.c:32:28: error: 'DCSR_NODESC' undeclared (first use in this function) #define RESET_DMA_CHANNEL (DCSR_NODESC | DMA_INT_MASK) ^ drivers/spi/spi-pxa2xx-pxadma.c:294:31: note: in expansion of macro 'RESET_DMA_CHANNEL' DCSR(drv_data->rx_channel) = RESET_DMA_CHANNEL; ^ drivers/spi/spi-pxa2xx-pxadma.c:31:24: error: 'DCSR_ENDINTR' undeclared (first use in this function) #define DMA_INT_MASK (DCSR_ENDINTR | DCSR_STARTINTR | DCSR_BUSERR) ^ drivers/spi/spi-pxa2xx-pxadma.c:32:42: note: in expansion of macro 'DMA_INT_MASK' #define RESET_DMA_CHANNEL (DCSR_NODESC | DMA_INT_MASK) ^ drivers/spi/spi-pxa2xx-pxadma.c:294:31: note: in expansion of macro 'RESET_DMA_CHANNEL' DCSR(drv_data->rx_channel) = RESET_DMA_CHANNEL; ^ drivers/spi/spi-pxa2xx-pxadma.c:31:39: error: 'DCSR_STARTINTR' undeclared (first use in this function) #define DMA_INT_MASK (DCSR_ENDINTR | DCSR_STARTINTR | DCSR_BUSERR) ^ drivers/spi/spi-pxa2xx-pxadma.c:32:42: note: in expansion of macro 'DMA_INT_MASK' #define RESET_DMA_CHANNEL (DCSR_NODESC | DMA_INT_MASK) ^ drivers/spi/spi-pxa2xx-pxadma.c:294:31: note: in expansion of macro 'RESET_DMA_CHANNEL' DCSR(drv_data->rx_channel) = RESET_DMA_CHANNEL; ^ drivers/spi/spi-pxa2xx-pxadma.c:31:56: error: 'DCSR_BUSERR' undeclared (first use in this function) #define DMA_INT_MASK (DCSR_ENDINTR | DCSR_STARTINTR | DCSR_BUSERR) ^ drivers/spi/spi-pxa2xx-pxadma.c:32:42: note: in expansion of macro 'DMA_INT_MASK' #define RESET_DMA_CHANNEL (DCSR_NODESC | DMA_INT_MASK) ^ drivers/spi/spi-pxa2xx-pxadma.c:294:31: note: in expansion of macro 'RESET_DMA_CHANNEL' DCSR(drv_data->rx_channel) = RESET_DMA_CHANNEL; ^ drivers/spi/spi-pxa2xx-pxadma.c:295:2: error: implicit declaration of function 'DSADR' [-Werror=implicit-function-declaration] DSADR(drv_data->rx_channel) = drv_data->ssdr_physical; ^ drivers/spi/spi-pxa2xx-pxadma.c:295:30: error: lvalue required as left operand of assignment DSADR(drv_data->rx_channel) = drv_data->ssdr_physical; ^ drivers/spi/spi-pxa2xx-pxadma.c:296:2: error: implicit declaration of function 'DTADR' [-Werror=implicit-function-declaration] DTADR(drv_data->rx_channel) = drv_data->rx_dma; ^ drivers/spi/spi-pxa2xx-pxadma.c:296:30: error: lvalue required as left operand of assignment DTADR(drv_data->rx_channel) = drv_data->rx_dma; ^ drivers/spi/spi-pxa2xx-pxadma.c:299:32: error: 'DCMD_FLOWSRC' undeclared (first use in this function) DCMD(drv_data->rx_channel) = DCMD_FLOWSRC ^ drivers/spi/spi-pxa2xx-pxadma.c:304:32: error: 'DCMD_INCTRGADDR' undeclared (first use in this function) DCMD(drv_data->rx_channel) = DCMD_INCTRGADDR ^ drivers/spi/spi-pxa2xx-pxadma.c:312:30: error: lvalue required as left operand of assignment DSADR(drv_data->tx_channel) = drv_data->tx_dma; ^ drivers/spi/spi-pxa2xx-pxadma.c:313:30: error: lvalue required as left operand of assignment DTADR(drv_data->tx_channel) = drv_data->ssdr_physical; ^ drivers/spi/spi-pxa2xx-pxadma.c:316:32: error: 'DCMD_FLOWTRG' undeclared (first use in this function) DCMD(drv_data->tx_channel) = DCMD_FLOWTRG ^ drivers/spi/spi-pxa2xx-pxadma.c:321:32: error: 'DCMD_INCSRCADDR' undeclared (first use in this function) DCMD(drv_data->tx_channel) = DCMD_INCSRCADDR ^ drivers/spi/spi-pxa2xx-pxadma.c:329:33: error: 'DCMD_ENDIRQEN' undeclared (first use in this function) DCMD(drv_data->tx_channel) |= DCMD_ENDIRQEN; ^ drivers/spi/spi-pxa2xx-pxadma.c: In function 'pxa2xx_spi_dma_start': drivers/spi/spi-pxa2xx-pxadma.c:336:32: error: 'DCSR_RUN' undeclared (first use in this function) DCSR(drv_data->rx_channel) |= DCSR_RUN; ^ drivers/spi/spi-pxa2xx-pxadma.c: In function 'pxa2xx_spi_dma_setup': drivers/spi/spi-pxa2xx-pxadma.c:346:2: error: implicit declaration of function 'pxa_request_dma' [-Werror=implicit-function-declaration] drv_data->rx_channel = pxa_request_dma("pxa2xx_spi_ssp_rx", ^ drivers/spi/spi-pxa2xx-pxadma.c:347:7: error: 'DMA_PRIO_HIGH' undeclared (first use in this function) DMA_PRIO_HIGH, ^ drivers/spi/spi-pxa2xx-pxadma.c:356:7: error: 'DMA_PRIO_MEDIUM' undeclared (first use in this function) DMA_PRIO_MEDIUM, ^ drivers/spi/spi-pxa2xx-pxadma.c:362:3: error: implicit declaration of function 'pxa_free_dma' [-Werror=implicit-function-declaration] pxa_free_dma(drv_data->rx_channel); ^ drivers/spi/spi-pxa2xx-pxadma.c:366:2: error: implicit declaration of function 'DRCMR' [-Werror=implicit-function-declaration] DRCMR(ssp->drcmr_rx) = DRCMR_MAPVLD | drv_data->rx_channel; ^ drivers/spi/spi-pxa2xx-pxadma.c:366:25: error: 'DRCMR_MAPVLD' undeclared (first use in this function) DRCMR(ssp->drcmr_rx) = DRCMR_MAPVLD | drv_data->rx_channel; ^ drivers/spi/spi-pxa2xx-pxadma.c: In function 'pxa2xx_spi_dma_release': drivers/spi/spi-pxa2xx-pxadma.c:376:23: error: lvalue required as left operand of assignment DRCMR(ssp->drcmr_rx) = 0; ^ drivers/spi/spi-pxa2xx-pxadma.c:377:23: error: lvalue required as left operand of assignment DRCMR(ssp->drcmr_tx) = 0; ^ drivers/spi/spi-pxa2xx-pxadma.c: In function 'pxa2xx_spi_dma_resume': drivers/spi/spi-pxa2xx-pxadma.c:389:4: error: 'DRCMR_MAPVLD' undeclared (first use in this function) DRCMR_MAPVLD | drv_data->rx_channel; ^ drivers/spi/spi-pxa2xx-pxadma.c: In function 'pxa2xx_spi_set_dma_burst_and_threshold': drivers/spi/spi-pxa2xx-pxadma.c:441:27: error: 'DCMD_BURST8' undeclared (first use in this function) chip->dma_burst_size = DCMD_BURST8; ^ drivers/spi/spi-pxa2xx-pxadma.c:445:8: error: 'DCMD_BURST16' undeclared (first use in this function) case DCMD_BURST16: ^ drivers/spi/spi-pxa2xx-pxadma.c:448:8: error: 'DCMD_BURST32' undeclared (first use in this function) case DCMD_BURST32: ^ Presumably caused by commit 854b3b284ec9 ("spi/drivers: Enable build of drivers with COMPILE_TEST"). Frankly, Mark, if you are unable or unwilling to do some basic cross build testing, please do not do any more of these patches that add CONFIG_COMPILE_TEST. Leave them to someone who can. I have used the spi tree from next-20130726 for today. -- Cheers, Stephen Rothwell sfr@canb.auug.org.au [-- Attachment #2: Type: application/pgp-signature, Size: 836 bytes --]
[-- Attachment #1: Type: text/plain, Size: 1213 bytes --] On Mon, Jul 29, 2013 at 01:42:23PM +1000, Stephen Rothwell wrote: > drivers/spi/spi-pxa2xx-pxadma.c: In function 'wait_dma_channel_stop': > drivers/spi/spi-pxa2xx-pxadma.c:136:2: error: implicit declaration of function 'DCSR' [-Werror=implicit-function-declaration] > while (!(DCSR(channel) & DCSR_STOPSTATE) && --limit) > Frankly, Mark, if you are unable or unwilling to do some basic cross > build testing, please do not do any more of these patches that add > CONFIG_COMPILE_TEST. Leave them to someone who can. This was cross built. It didn't show up due to the fact that the minimal configs I use for build coverage (and in fact every single config I was building) didn't have PCI turned on (which is a dependency for this option actually building anything) which allowed this config symbol to be enabled without showing the problem due to the slightly odd way the config for the driver is structured; any system with PCI that's not PXA would be affected. Most (though not all) of the other issues have been due to similar stuff. I do rely on the 0 day tester for the full builds but I do pretty routinely test (especially on x86) these days though with minimal configs and on my full working tree. [-- Attachment #2: Digital signature --] [-- Type: application/pgp-signature, Size: 836 bytes --]
[-- Attachment #1: Type: text/plain, Size: 2184 bytes --] Hi Mark, On Mon, 29 Jul 2013 06:00:11 +0100 Mark Brown <broonie@kernel.org> wrote: > > On Mon, Jul 29, 2013 at 01:42:23PM +1000, Stephen Rothwell wrote: > > > drivers/spi/spi-pxa2xx-pxadma.c: In function 'wait_dma_channel_stop': > > drivers/spi/spi-pxa2xx-pxadma.c:136:2: error: implicit declaration of function 'DCSR' [-Werror=implicit-function-declaration] > > while (!(DCSR(channel) & DCSR_STOPSTATE) && --limit) > > > Frankly, Mark, if you are unable or unwilling to do some basic cross > > build testing, please do not do any more of these patches that add > > CONFIG_COMPILE_TEST. Leave them to someone who can. > > This was cross built. It didn't show up due to the fact that the > minimal configs I use for build coverage (and in fact every single > config I was building) didn't have PCI turned on (which is a dependency > for this option actually building anything) which allowed this config > symbol to be enabled without showing the problem due to the slightly odd > way the config for the driver is structured; any system with PCI that's > not PXA would be affected. > > Most (though not all) of the other issues have been due to similar > stuff. I do rely on the 0 day tester for the full builds but I do pretty > routinely test (especially on x86) these days though with minimal > configs and on my full working tree. Did the 0 day tester find these? If so, then maybe you should wait a while longer before adding these things to your published trees. If not, then I wonder why not. Even so as a developer, you should not really be submitting patches that have not been at least build tested. You can find out which files are affected by these config changes and then really simply do: (assuming an x86 native platform - adjust for cross compiling) $ mkdir ../test.obj $ make O=../test.obj allmodconfig <make sure that the CONFIG options got turned on> $ make O=../test.obj <files affected s/.c/.o/> You don't need to do full builds to find most of this stuff. Of course, this will not find link time errors or missing module symbols. -- Cheers, Stephen Rothwell sfr@canb.auug.org.au [-- Attachment #2: Type: application/pgp-signature, Size: 836 bytes --]
[-- Attachment #1: Type: text/plain, Size: 1682 bytes --] On Mon, Jul 29, 2013 at 03:56:09PM +1000, Stephen Rothwell wrote: > Did the 0 day tester find these? If so, then maybe you should wait a > while longer before adding these things to your published trees. If not, > then I wonder why not. No, it didn't. The latency from the zero day tester seems to be quite variable at the minute - sometimes it's just not reporting things at all before they get found and fixed otherwise, sometimes it's as astonishingly prompt as ever and sometimes it's reporting things other than build issues but not the build issues. > Even so as a developer, you should not really be submitting patches that > have not been at least build tested. You can find out which files are Right, I don't submit stuff that's not been build tested at all except in unusual situations - the issues have been coverage and dependency ones. > affected by these config changes and then really simply do: > (assuming an x86 native platform - adjust for cross compiling) > $ mkdir ../test.obj > $ make O=../test.obj allmodconfig > <make sure that the CONFIG options got turned on> > $ make O=../test.obj <files affected s/.c/.o/> When I change source files I do take steps to ensure that they've been built including variations on the above, this specific issue is a fairly unusual situation. > You don't need to do full builds to find most of this stuff. Of course, > this will not find link time errors or missing module symbols. Yeah, unfortunately those issues are a good proportion of what gets caught by this sort of testing that wouldn't get caught in normal development so it doesn't seem worth doing something that won't at least give a linking kernel. [-- Attachment #2: Digital signature --] [-- Type: application/pgp-signature, Size: 836 bytes --]
[-- Attachment #1: Type: text/plain, Size: 759 bytes --] Hi Mark, On Mon, 29 Jul 2013 07:40:28 +0100 Mark Brown <broonie@kernel.org> wrote: > > Yeah, unfortunately those issues are a good proportion of what gets > caught by this sort of testing that wouldn't get caught in normal > development so it doesn't seem worth doing something that won't at least > give a linking kernel. The problem is that you are impacting on other people's testing. Even if this stuff builds for me, it may well break for people using other arches/configs. These changes (adding dependencies on CONFIG_COMPILE_TEST for devices that are currently only built for particular platforms) are adding very little, but impacting on my time (at least). -- Cheers, Stephen Rothwell sfr@canb.auug.org.au [-- Attachment #2: Type: application/pgp-signature, Size: 836 bytes --]
[-- Attachment #1: Type: text/plain, Size: 1633 bytes --] On Mon, Jul 29, 2013 at 04:48:20PM +1000, Stephen Rothwell wrote: > On Mon, 29 Jul 2013 07:40:28 +0100 Mark Brown <broonie@kernel.org> wrote: > > Yeah, unfortunately those issues are a good proportion of what gets > > caught by this sort of testing that wouldn't get caught in normal > > development so it doesn't seem worth doing something that won't at least > > give a linking kernel. > The problem is that you are impacting on other people's testing. Even if > this stuff builds for me, it may well break for people using other > arches/configs. These changes (adding dependencies on > CONFIG_COMPILE_TEST for devices that are currently only built for > particular platforms) are adding very little, but impacting on my time (at > least). I agree - what I'm saying here is that one of the biggest risks I'm expecting is something that fails to link so testing that doesn't generate at least a linked kernel isn't adequate coverage. Just testing that individual files build (as you were suggesting) isn't enough for me to be happy that the testing is doing enough to stop people running into these things. The additional coverage is really useful for anyone working at a subsystem level, it makes it much easier for them to do more comprehensive build testing on their work without having to install odd compilers or do quite so many builds. Missing things there has been a frequent source of problems in the past, and one that tends to be more painful overall than these issues since it tends to take longer to be discovered than anything found due to active build coverage testing and found by a different kind of user. [-- Attachment #2: Digital signature --] [-- Type: application/pgp-signature, Size: 836 bytes --]
[-- Attachment #1: Type: text/plain, Size: 885 bytes --] Hi Mark, After merging the spi tree, today's linux-next build (x86_64 allmodconfig) failed like this: In file included from drivers/spi/spi-ti-qspi.c:19:0: include/linux/module.h:87:32: error: '__mod_of_device_table' aliased to undefined symbol 'dra7xxx_qspi_match' extern const struct gtype##_id __mod_##gtype##_table \ ^ include/linux/module.h:145:3: note: in expansion of macro 'MODULE_GENERIC_TABLE' MODULE_GENERIC_TABLE(type##_device,name) ^ drivers/spi/spi-ti-qspi.c:458:1: note: in expansion of macro 'MODULE_DEVICE_TABLE' MODULE_DEVICE_TABLE(of, dra7xxx_qspi_match); ^ Caused by commit 505a14954e2d ("spi/qspi: Add qspi flash controller"). Clearly not build tested as a module. :-( I have used the spi tree from next-20130822 for today. -- Cheers, Stephen Rothwell sfr@canb.auug.org.au [-- Attachment #2: Type: application/pgp-signature, Size: 836 bytes --]
Hi, On Tuesday 27 August 2013 11:45 AM, Stephen Rothwell wrote: > Hi Mark, > > After merging the spi tree, today's linux-next build (x86_64 allmodconfig) > failed like this: > > In file included from drivers/spi/spi-ti-qspi.c:19:0: > include/linux/module.h:87:32: error: '__mod_of_device_table' aliased to undefined symbol 'dra7xxx_qspi_match' > extern const struct gtype##_id __mod_##gtype##_table \ > ^ > include/linux/module.h:145:3: note: in expansion of macro 'MODULE_GENERIC_TABLE' > MODULE_GENERIC_TABLE(type##_device,name) > ^ > drivers/spi/spi-ti-qspi.c:458:1: note: in expansion of macro 'MODULE_DEVICE_TABLE' > MODULE_DEVICE_TABLE(of, dra7xxx_qspi_match); > ^ > > Caused by commit 505a14954e2d ("spi/qspi: Add qspi flash controller"). > > Clearly not build tested as a module. :-( Yes, module build test was missed. I will send a patch for this to Mark. > I have used the spi tree from next-20130822 for today.
[-- Attachment #1: Type: text/plain, Size: 609 bytes --] Hi Mark, After merging the spi tree, today's linux-next build (x86_64 allmodconfig) failed like this: drivers/spi/spi-dw-pci.c: In function 'spi_pci_probe': drivers/spi/spi-dw-pci.c:50:29: error: 'dev' undeclared (first use in this function) dwpci = devm_kzalloc(&pdev-dev, sizeof(struct dw_spi_pci), GFP_KERNEL); ^ Caused by commit 04f421e7b0b1 ("spi: dw: use managed resources"). I have used the spi tree from next-20131224 for today (since the above commit does not revert cleanly). -- Cheers, Stephen Rothwell sfr@canb.auug.org.au [-- Attachment #2: Type: application/pgp-signature, Size: 836 bytes --]
Hi Stephen, On Mon, Jan 06, 2014 at 06:03:05PM +1100, Stephen Rothwell wrote: > After merging the spi tree, today's linux-next build (x86_64 allmodconfig) > failed like this: > > drivers/spi/spi-dw-pci.c: In function 'spi_pci_probe': > drivers/spi/spi-dw-pci.c:50:29: error: 'dev' undeclared (first use in this function) > dwpci = devm_kzalloc(&pdev-dev, sizeof(struct dw_spi_pci), GFP_KERNEL); > ^ > > Caused by commit 04f421e7b0b1 ("spi: dw: use managed resources"). > > I have used the spi tree from next-20131224 for today (since the above > commit does not revert cleanly). Sorry, my bad (I said I have no way to test this PCI code, didn't I?). I'll send a fix shortly. baruch -- http://baruch.siach.name/blog/ ~. .~ Tk Open Systems =}------------------------------------------------ooO--U--Ooo------------{= - baruch@tkos.co.il - tel: +972.2.679.5364, http://www.tkos.co.il -
[-- Attachment #1: Type: text/plain, Size: 758 bytes --] Hi Mark, After merging the spi tree, today's linux-next build (x86_64 allmodconfig) failed like this: drivers/spi/spi-qup.c: In function 'spi_qup_set_state': drivers/spi/spi-qup.c:185:3: error: implicit declaration of function 'writel_relaxed' [-Werror=implicit-function-declaration] writel_relaxed(QUP_STATE_CLEAR, controller->base + QUP_STATE); ^ Caused by commit 64ff247a978f ("spi: Add Qualcomm QUP SPI controller support") and exposed by commit 702d3cf9d05d ("spi: qup: Enable driver compilation with COMPILE_TEST"). Please at least test building on x86 before allowing a build with COMPILE_TEST. I have used the spi tree from next-20140221 for today. -- Cheers, Stephen Rothwell sfr@canb.auug.org.au [-- Attachment #2: Type: application/pgp-signature, Size: 836 bytes --]
[-- Attachment #1: Type: text/plain, Size: 516 bytes --] On Mon, Feb 24, 2014 at 02:45:29PM +1100, Stephen Rothwell wrote: > compilation with COMPILE_TEST"). Please at least test building on x86 > before allowing a build with COMPILE_TEST. Yeah, I tend to rely on the zero day tester to get that when travelling since it's normally quicker to get a result from that than it is for me to build on my laptop. That doesn't seem to have worked out though... Like I said in reply to Axel's patch it's not exactly sane that things like this are an issue in the first place. [-- Attachment #2: Digital signature --] [-- Type: application/pgp-signature, Size: 836 bytes --]
[-- Attachment #1: Type: text/plain, Size: 561 bytes --] Hi Mark, After merging the spi tree, today's linux-next build (x86_64_allmodconfig) failed like this: drivers/spi/spi-cadence.c: In function 'cdns_spi_write': drivers/spi/spi-cadence.c:135:2: error: implicit declaration of function 'writel_relaxed' [-Werror=implicit-function-declaration] writel_relaxed(val, xspi->regs + offset); ^ Caused by commit c474b3866546 ("spi: Add driver for Cadence SPI controller"). I have used the spi tree from next-20140414 for today. -- Cheers, Stephen Rothwell sfr@canb.auug.org.au [-- Attachment #2: Type: application/pgp-signature, Size: 836 bytes --]
Hi Stephen/Mark, > -----Original Message----- > From: Stephen Rothwell [mailto:sfr@canb.auug.org.au] > Sent: Tuesday, April 15, 2014 7:47 AM > To: Mark Brown > Cc: linux-next@vger.kernel.org; linux-kernel@vger.kernel.org; Harini > Katakam > Subject: linux-next: build failure after merge of the spi tree > > Hi Mark, > > After merging the spi tree, today's linux-next build (x86_64_allmodconfig) > failed like this: > > drivers/spi/spi-cadence.c: In function 'cdns_spi_write': > drivers/spi/spi-cadence.c:135:2: error: implicit declaration of function > 'writel_relaxed' [-Werror=implicit-function-declaration] > writel_relaxed(val, xspi->regs + offset); > ^ > I'm sorry - I just noticed that Soren's patches for I2C also gave a similar warning: http://patchwork.ozlabs.org/patch/337285/ I will send a patch adding dependency on ARCH_ZYNQ. Please let me know if you have a better suggestion. Regards, Harini
[-- Attachment #1: Type: text/plain, Size: 1297 bytes --] Hi Mark, After merging the spi tree, today's linux-next build (powerpc allyesconfig) failed like this: drivers/spi/spi-dln2.c: In function 'dln2_spi_copy_from_buf': drivers/spi/spi-dln2.c:415:4: error: implicit declaration of function 'get_unaligned_le32' [-Werror=implicit-function-declaration] *d++ = get_unaligned_le32(s++); ^ Caused by commit ffb9ad0a47b4 ("spi: add support for DLN-2 USB-SPI adapter"). drivers/spi/spi-st-ssc4.c: In function 'spi_st_remove': drivers/spi/spi-st-ssc4.c:427:2: error: implicit declaration of function 'pinctrl_pm_select_sleep_state' [-Werror=implicit-function-declaration] pinctrl_pm_select_sleep_state(&pdev->dev); ^ drivers/spi/spi-st-ssc4.c: In function 'spi_st_runtime_resume': drivers/spi/spi-st-ssc4.c:453:2: error: implicit declaration of function 'pinctrl_pm_select_default_state' [-Werror=implicit-function-declaration] pinctrl_pm_select_default_state(dev); ^ Caused by commit cf9e9c98fa8c ("spi: Add new driver for STMicroelectronics' SPI Controller"). To me COMPILE_TEST means "this builds everywhere, make sure it doesn't break" ... not "lets set this and see if Stephen finds anything" :-) I reverted both commits for today. -- Cheers, Stephen Rothwell sfr@canb.auug.org.au [-- Attachment #2: OpenPGP digital signature --] [-- Type: application/pgp-signature, Size: 819 bytes --]
[-- Attachment #1: Type: text/plain, Size: 385 bytes --] On Mon, Dec 08, 2014 at 11:05:17PM +1100, Stephen Rothwell wrote: > Caused by commit cf9e9c98fa8c ("spi: Add new driver for > STMicroelectronics' SPI Controller"). > To me COMPILE_TEST means "this builds everywhere, make sure it doesn't > break" ... not "lets set this and see if Stephen finds anything" :-) > I reverted both commits for today. I've dropped both from my tree too. [-- Attachment #2: Digital signature --] [-- Type: application/pgp-signature, Size: 473 bytes --]
On Mon, 08 Dec 2014, Mark Brown wrote:
> On Mon, Dec 08, 2014 at 11:05:17PM +1100, Stephen Rothwell wrote:
>
> > Caused by commit cf9e9c98fa8c ("spi: Add new driver for
> > STMicroelectronics' SPI Controller").
>
> > To me COMPILE_TEST means "this builds everywhere, make sure it doesn't
> > break" ... not "lets set this and see if Stephen finds anything" :-)
>
> > I reverted both commits for today.
>
> I've dropped both from my tree too.
Patches re-sent without COMPILE_TEST support.
I will re-enable COMPILE_TEST when Will Deacon's patch to fix this
kind of nonsense lands.
--
Lee Jones
Linaro STMicroelectronics Landing Team Lead
Linaro.org │ Open source software for ARM SoCs
Follow Linaro: Facebook | Twitter | Blog
[-- Attachment #1: Type: text/plain, Size: 401 bytes --] On Mon, Dec 08, 2014 at 12:54:47PM +0000, Lee Jones wrote: > Patches re-sent without COMPILE_TEST support. > I will re-enable COMPILE_TEST when Will Deacon's patch to fix this > kind of nonsense lands. It wasn't the _relaxed() stuff that was triggering, it was implicit inclusions of the pinctrl headers. You need to directly include them rather than relying on some other header pulling them in. [-- Attachment #2: Digital signature --] [-- Type: application/pgp-signature, Size: 473 bytes --]
On Mon, Dec 08, 2014 at 11:05:17PM +1100, Stephen Rothwell wrote:
> Hi Mark,
>
> After merging the spi tree, today's linux-next build (powerpc
> allyesconfig) failed like this:
>
> drivers/spi/spi-dln2.c: In function 'dln2_spi_copy_from_buf':
> drivers/spi/spi-dln2.c:415:4: error: implicit declaration of function 'get_unaligned_le32' [-Werror=implicit-function-declaration]
> *d++ = get_unaligned_le32(s++);
> ^
>
> Caused by commit ffb9ad0a47b4 ("spi: add support for DLN-2 USB-SPI adapter").
Re-sent the patch with the asm/unaligned.h header included and I build tested
for PPC to make sure.
Sorry for the trouble... :/
laurentiu
[-- Attachment #1: Type: text/plain, Size: 1144 bytes --] Hi Mark, After merging the spi tree, today's linux-next build (arm multi_v7_defconfig) failed like this: drivers/spi/spi-xilinx.c: In function 'xilinx_spi_probe': drivers/spi/spi-xilinx.c:391:16: warning: assignment from incompatible pointer type xspi->read_fn = ioread32; ^ drivers/spi/spi-xilinx.c:392:17: warning: assignment from incompatible pointer type xspi->write_fn = iowrite32; ^ drivers/spi/spi-xilinx.c:398:19: error: 'ioread32be' undeclared (first use in this function) xspi->read_fn = ioread32be; ^ drivers/spi/spi-xilinx.c:398:19: note: each undeclared identifier is reported only once for each function it appears in drivers/spi/spi-xilinx.c:399:20: error: 'iowrite32be' undeclared (first use in this function) xspi->write_fn = iowrite32be; ^ Caused by commit 99082eab6344 ("spi/xilinx: Remove iowrite/ioread wrappers"). Its not obvious why this is so, but reverting that commit fixed the build problem. I have reverted that commit for today. -- Cheers, Stephen Rothwell sfr@canb.auug.org.au [-- Attachment #2: OpenPGP digital signature --] [-- Type: application/pgp-signature, Size: 819 bytes --]
Hello Stephen
The root of the issue is that iowrite/ioread behaves differently in
different arches.
1) It does not necesary need to be a symbol in all the arches. It can
be declared as a function macro:
#define iowrite32(a,b) iowrite32(a,b)
2) Sometimes, even the function has a different prototype.
include/asm-generic/iomap.h
extern unsigned int ioread16be(void __iomem *);
include/asm-generic/io.h
extern unsigned int ioread16be(void __iomem *);
Since the patch that you have reverted was only to clean the code it
is perfectly fine to revert it.
Sorry for the mess, I did only tried to build it on the platforms that
I had available and I could have never guess that iowrite32 was
implemented differently on other arches.
Thanks!
On Fri, Jan 30, 2015 at 4:02 AM, Stephen Rothwell <sfr@canb.auug.org.au> wrote:
> Hi Mark,
>
> After merging the spi tree, today's linux-next build (arm
> multi_v7_defconfig) failed like this:
>
> drivers/spi/spi-xilinx.c: In function 'xilinx_spi_probe':
> drivers/spi/spi-xilinx.c:391:16: warning: assignment from incompatible pointer type
> xspi->read_fn = ioread32;
> ^
> drivers/spi/spi-xilinx.c:392:17: warning: assignment from incompatible pointer type
> xspi->write_fn = iowrite32;
> ^
> drivers/spi/spi-xilinx.c:398:19: error: 'ioread32be' undeclared (first use in this function)
> xspi->read_fn = ioread32be;
> ^
> drivers/spi/spi-xilinx.c:398:19: note: each undeclared identifier is reported only once for each function it appears in
> drivers/spi/spi-xilinx.c:399:20: error: 'iowrite32be' undeclared (first use in this function)
> xspi->write_fn = iowrite32be;
> ^
>
> Caused by commit 99082eab6344 ("spi/xilinx: Remove iowrite/ioread
> wrappers"). Its not obvious why this is so, but reverting that commit
> fixed the build problem.
>
> I have reverted that commit for today.
>
> --
> Cheers,
> Stephen Rothwell sfr@canb.auug.org.au
--
Ricardo Ribalda
[-- Attachment #1: Type: text/plain, Size: 719 bytes --] Hi Mark, After merging the spi tree, today's linux-next build (x86_64 allmodconfig) failed like this: drivers/spi/spi-fsl-dspi.c: In function 'dspi_setup': drivers/spi/spi-fsl-dspi.c:395:2: error: implicit declaration of function 'ns_delay_scale' [-Werror=implicit-function-declaration] ns_delay_scale(&pcssck, &cssck, cs_sck_delay, clkrate); ^ Caused by commit f9d9c83fcf09 ("Merge branch 'fix/fsl-dspi' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/spi into spi-fsl-dspi") which removed the function that was added (and referenced) in one of its parents. I have used the spi tree from next-20150402 for today. -- Cheers, Stephen Rothwell sfr@canb.auug.org.au [-- Attachment #2: OpenPGP digital signature --] [-- Type: application/pgp-signature, Size: 819 bytes --]
[-- Attachment #1: Type: text/plain, Size: 1484 bytes --] Hi Mark, After merging the spi tree, today's linux-next build (x86_64 allmodconfig) failed like this: drivers/spi/spi-bcm2835.c: In function 'bcm2835_spi_can_dma': drivers/spi/spi-bcm2835.c:381:7: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast] if (((u32)tfr->tx_buf % 4 == 0) && ((u32)tfr->tx_buf % 4 == 0)) ^ drivers/spi/spi-bcm2835.c:381:38: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast] if (((u32)tfr->tx_buf % 4 == 0) && ((u32)tfr->tx_buf % 4 == 0)) ^ drivers/spi/spi-bcm2835.c:387:7: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast] if (((u32)tfr->tx_buf % SZ_4K) + tfr->len > SZ_4K) { ^ drivers/spi/spi-bcm2835.c:387:26: error: 'SZ_4K' undeclared (first use in this function) if (((u32)tfr->tx_buf % SZ_4K) + tfr->len > SZ_4K) { ^ drivers/spi/spi-bcm2835.c:387:26: note: each undeclared identifier is reported only once for each function it appears in drivers/spi/spi-bcm2835.c:392:7: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast] if (((u32)tfr->rx_buf % SZ_4K) + tfr->len > SZ_4K) { ^ Caused by commit 3ecd37edaa2a ("spi: bcm2835: enable dma modes for transfers meeting certain conditions"). I have used the spi tree from next-20150511 for today. -- Cheers, Stephen Rothwell sfr@canb.auug.org.au [-- Attachment #2: OpenPGP digital signature --] [-- Type: application/pgp-signature, Size: 819 bytes --]
Hi Mark, After merging the spi tree, today's linux-next build (arm multi_v7_defconfig) failed like this: In file included from include/linux/clk.h:16:0, from drivers/spi/spi-sun4i.c:14: drivers/spi/spi-sun4i.c: In function 'sun4i_spi_transfer_one': drivers/spi/spi-sun4i.c:283:43: error: 'speed' undeclared (first use in this function) tx_time = max_t(int, tfr->len * 8 * 2 / (speed / 1000), 100); ^ include/linux/kernel.h:767:17: note: in definition of macro 'max_t' type __max1 = (x); \ ^ drivers/spi/spi-sun4i.c:283:43: note: each undeclared identifier is reported only once for each function it appears in tx_time = max_t(int, tfr->len * 8 * 2 / (speed / 1000), 100); ^ include/linux/kernel.h:767:17: note: in definition of macro 'max_t' type __max1 = (x); \ ^ In file included from include/linux/clk.h:16:0, from drivers/spi/spi-sun6i.c:14: drivers/spi/spi-sun6i.c: In function 'sun6i_spi_transfer_one': drivers/spi/spi-sun6i.c:273:43: error: 'speed' undeclared (first use in this function) tx_time = max_t(int, tfr->len * 8 * 2 / (speed / 1000), 100); ^ include/linux/kernel.h:767:17: note: in definition of macro 'max_t' type __max1 = (x); \ ^ drivers/spi/spi-sun6i.c:273:43: note: each undeclared identifier is reported only once for each function it appears in tx_time = max_t(int, tfr->len * 8 * 2 / (speed / 1000), 100); ^ include/linux/kernel.h:767:17: note: in definition of macro 'max_t' type __max1 = (x); \ ^ Caused by commit 63d53d153b62 ("spi: sunxi: fix transfer timeout") I have used the spi tree from next-20150820 for today. -- Cheers, Stephen Rothwell sfr@canb.auug.org.au
Hi Mark, After merging the spi tree, today's linux-next build (x86_64 allmodconfig) failed like this: drivers/spi/spi-loopback-test.c: In function 'spi_loopback_test_probe': drivers/spi/spi-loopback-test.c:292:7: error: 'check_rx_buf' undeclared (first use in this function) if (!check_rx_buf && (spi->master->mode_bits & SPI_LOOP)) { ^ Caused by commit b0632bfe5ec4 ("spi: loopback-test: added support for HW-loopback mode") I have used the spi tree from next-20160105 for today. -- Cheers, Stephen Rothwell sfr@canb.auug.org.au
Hi Mark, After merging the spi tree, today's linux-next build (x86_64 allmodconfig) failed like this: drivers/spi/spi-orion.c: In function 'orion_spi_write_read': drivers/spi/spi-orion.c:407:3: error: implicit declaration of function 'writesl' [-Werror=implicit-function-declaration] writesl(orion_spi->direct_access[cs].vaddr, xfer->tx_buf, cnt); ^ drivers/spi/spi-orion.c:411:4: error: implicit declaration of function 'writesb' [-Werror=implicit-function-declaration] writesb(orion_spi->direct_access[cs].vaddr, &buf[cnt], ^ Caused by commit dbf24b7c0d94 ("spi: orion: Add direct access mode") I have merged the version fof the spi tree from next-20160513 for today. -- Cheers, Stephen Rothwell
[-- Attachment #1: Type: text/plain, Size: 212 bytes --] On Mon, May 16, 2016 at 12:08:31PM +1000, Stephen Rothwell wrote: > Hi Mark, > > After merging the spi tree, today's linux-next build (x86_64 allmodconfig) > failed like this: Sorry, dropped this patch. [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 473 bytes --]
Hi Mark, After merging the spi tree, today's linux-next build (arm multi_v7_defconfig) failed like this: drivers/spi/spi-orion.c: In function 'orion_spi_baudrate_set': drivers/spi/spi-orion.c:192:8: error: 'sspr' undeclared (first use in this function) if (sspr > 7) ^ Caused by commit d9fc6452af47 ("spi: mvebu: fix baudrate calculation for armada variants") I have used the spi tree from next-20161208 for today. -- Cheers, Stephen Rothwell
Hi Mark,
On Fri, 9 Dec 2016 13:32:56 +1100 Stephen Rothwell <sfr@canb.auug.org.au> wrote:
>
> After merging the spi tree, today's linux-next build (arm
> multi_v7_defconfig) failed like this:
>
> drivers/spi/spi-orion.c: In function 'orion_spi_baudrate_set':
> drivers/spi/spi-orion.c:192:8: error: 'sspr' undeclared (first use in this function)
> if (sspr > 7)
> ^
>
> Caused by commit
>
> d9fc6452af47 ("spi: mvebu: fix baudrate calculation for armada variants")
>
> I have used the spi tree from next-20161208 for today.
Still getting this.
--
Cheers,
Stephen Rothwell
Hi Mark, After merging the spi tree, today's linux-next build (x86_64 allmodconfig) failed like this: drivers/spi/spi-imx.c: In function 'spi_imx_can_dma': drivers/spi/spi-imx.c:241:9: error: 'struct spi_imx_data' has no member named 'dynamic_burst' spi_imx->dynamic_burst = 0; ^ Caused by commit 09b3ed2d5916 ("spi: imx: Revert "spi: imx: dynamic burst length adjust for PIO mode"") interacting with commit 1ce1c618e6b5 ("spi: imx: only allow dynamic burst in PIO mode") from a separate topic branch and not fixing it up in the merge. Although that second commit could never have built anyway on its own :-( I have used the spi tree from next-20170523 for today. -- Cheers, Stephen Rothwell
Hi Mark
since commit 8d4a6cad7adb ("spi: imx: dynamic burst length adjust for PIO mode
")
has been reverted, then
commit 1ce1c618e6b5 ("spi: imx: only allow dynamic burst in PIO mode")
need to be reverted as well.
I can submit another version of patch set, with all founded issues be addressed
after that.
Thanks,
Jiada
On 05/23/2017 06:08 PM, Stephen Rothwell wrote:
> Hi Mark,
>
> After merging the spi tree, today's linux-next build (x86_64 allmodconfig)
> failed like this:
>
> drivers/spi/spi-imx.c: In function 'spi_imx_can_dma':
> drivers/spi/spi-imx.c:241:9: error: 'struct spi_imx_data' has no member named 'dynamic_burst'
> spi_imx->dynamic_burst = 0;
> ^
>
> Caused by commit
>
> 09b3ed2d5916 ("spi: imx: Revert "spi: imx: dynamic burst length adjust for PIO mode"")
>
> interacting with commit
>
> 1ce1c618e6b5 ("spi: imx: only allow dynamic burst in PIO mode")
>
> from a separate topic branch and not fixing it up in the merge. Although
> that second commit could never have built anyway on its own :-(
>
> I have used the spi tree from next-20170523 for today.
>
Hi Mark, After merging the spi tree, today's linux-next build (x86_64 allmodconfig) failed like this: drivers/spi/spi-imx.c: In function 'spi_imx_setupxfer': drivers/spi/spi-imx.c:1007:16: error: 'config' undeclared (first use in this function) mask = (1 << config.bpw) - 1; ^ Caused by commit a0cc330240c9 ("spi: imx: dynamic burst length adjust for PIO mode") interacting with commit d52345b6cf8e ("spi: imx: put struct spi_imx_config members into driver private struct") I reverted a0cc330240c9 for today. -- Cheers, Stephen Rothwell
Hi Mark, After merging the spi tree, today's linux-next build (x86_64 allmodconfig) failed like this: drivers/spi/spi-imx.c: In function 'spi_imx_setupxfer': drivers/spi/spi-imx.c:1007:16: error: 'config' undeclared (first use in this function) mask = (1 << config.bpw) - 1; ^ Caused by commit a0cc330240c9 ("spi: imx: dynamic burst length adjust for PIO mode") interacting with commit d52345b6cf8e ("spi: imx: put struct spi_imx_config members into driver private struct") from Linus' tree. I am not sure why this has only shown up now. Since it is the only thing left in the spi tree, I have just dropped that tree for today. -- Cheers, Stephen Rothwell
Hi Mark, After merging the spi tree, today's linux-next build (x86_64 allmodconfig build) failed like this: drivers/spi/spi-pxa2xx.c: In function 'setup_cs': drivers/spi/spi-pxa2xx.c:1240:3: error: implicit declaration of function 'gpiod_free' [-Werror=implicit-function-declaration] gpiod_free(chip->gpiod_cs); ^ Caused by commit 221886646f75 ("spi: pxa2xx: avoid redundant gpio_to_desc(desc_to_gpio()) round-trip") Presumably a missing include file. I have used the spi tree from next-20171221 for today. -- Cheers, Stephen Rothwell
On 22 December 2017 at 03:18, Stephen Rothwell <sfr@canb.auug.org.au> wrote: > Hi Mark, > > After merging the spi tree, today's linux-next build (x86_64 allmodconfig > build) failed like this: > > drivers/spi/spi-pxa2xx.c: In function 'setup_cs': > drivers/spi/spi-pxa2xx.c:1240:3: error: implicit declaration of function 'gpiod_free' [-Werror=implicit-function-declaration] > gpiod_free(chip->gpiod_cs); > ^ > > Caused by commit > > 221886646f75 ("spi: pxa2xx: avoid redundant gpio_to_desc(desc_to_gpio()) round-trip") > > Presumably a missing include file. Gaah, sorry, not sure when I learn to compile-test every single patch :( When I saw that gpiod_free wasn't static I didn't think to go look for any public declaration, assuming that it would be declared the same place as gpio_free, but apparently it's private to gpiolib. There's no public declaration in include/, but there's a public gpiod_put, which is nothing but a wrapper for gpiod_free. gpiod_put is declared in linux/gpio/consumer.h, which is already #included, so s/gpiod_free/gpiod_put/ should fix it. Want a follow-up patch or a replacement? Rasmus > I have used the spi tree from next-20171221 for today. > > -- > Cheers, > Stephen Rothwell
[-- Attachment #1: Type: text/plain, Size: 308 bytes --] On Fri, Dec 22, 2017 at 08:39:36AM +0100, Rasmus Villemoes wrote: > Want a follow-up patch or a replacement? As the mail you got when the patch was applied says: | If any updates are required or you are submitting further changes they | should be sent as incremental updates against current git, existing [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 488 bytes --]
[-- Attachment #1: Type: text/plain, Size: 660 bytes --] Hi Mark, After merging the spi tree, today's linux-next build (x86_64 allmodconfig) failed like this: In file included from include/linux/clk.h:16, from drivers/spi/spi-sprd.c:4: drivers/spi/spi-sprd.c: In function 'sprd_spi_init_hw': drivers/spi/spi-sprd.c:462:29: error: 'struct spi_transfer' has no member named 'word_delay' word_delay = clamp_t(u16, t->word_delay, SPRD_SPI_MIN_DELAY_CYCLE, ^~ (and many more) Caused by commit e7d973a31c24 ("spi: sprd: Add SPI driver for Spreadtrum SC9860") I have used the spi tree from next-20180828 for today. -- Cheers, Stephen Rothwell [-- Attachment #2: OpenPGP digital signature --] [-- Type: application/pgp-signature, Size: 488 bytes --]
Hi Mark, On 29 August 2018 at 08:33, Stephen Rothwell <sfr@canb.auug.org.au> wrote: > Hi Mark, > > After merging the spi tree, today's linux-next build (x86_64 allmodconfig) > failed like this: > > In file included from include/linux/clk.h:16, > from drivers/spi/spi-sprd.c:4: > drivers/spi/spi-sprd.c: In function 'sprd_spi_init_hw': > drivers/spi/spi-sprd.c:462:29: error: 'struct spi_transfer' has no member named 'word_delay' > word_delay = clamp_t(u16, t->word_delay, SPRD_SPI_MIN_DELAY_CYCLE, > ^~ > > (and many more) > > Caused by commit > > e7d973a31c24 ("spi: sprd: Add SPI driver for Spreadtrum SC9860") > > I have used the spi tree from next-20180828 for today. You missed one patch (spi: Introduce one new field to set word delay), could you apply this patch into your next branch? Thanks. https://patchwork.kernel.org/patch/10567387/ -- Baolin Wang Best Regards
[-- Attachment #1: Type: text/plain, Size: 470 bytes --] Hi all, After merging the spi tree, today's linux-next build (s390 allyesconfig) failed like this: drivers/spi/spi-sunplus-sp7021.c:568:12: error: 'sp7021_spi_runtime_resume' defined but not used [-Werror=unused-function] drivers/spi/spi-sunplus-sp7021.c:560:12: error: 'sp7021_spi_runtime_suspend' defined but not used [-Werror=unused-function] Caused by commit f62ca4e2a863 ("spi: Add spi driver for Sunplus SP7021") -- Cheers, Stephen Rothwell [-- Attachment #2: OpenPGP digital signature --] [-- Type: application/pgp-signature, Size: 488 bytes --]
[-- Attachment #1: Type: text/plain, Size: 1833 bytes --] Hi all, After merging the spi tree, today's linux-next build (x86_64 allmodconfig) failed like this: drivers/net/ethernet/davicom/dm9051.c:1253:19: error: initialization of 'void (*)(struct spi_device *)' from incompatible pointer type 'int (*)(struct spi_device *)' [-Werror=incompatible-pointer-types] 1253 | .remove = dm9051_drv_remove, | ^~~~~~~~~~~~~~~~~ drivers/net/ethernet/davicom/dm9051.c:1253:19: note: (near initialization for 'dm9051_driver.remove') Caused by commit a0386bba7093 ("spi: make remove callback a void function") interacting with commit 2dc95a4d30ed ("net: Add dm9051 driver") from the net-next tree. I applied the following merge resolution and can carry it until the trees are merged. From: Stephen Rothwell <sfr@canb.auug.org.au> Date: Tue, 15 Feb 2022 13:05:41 +1100 Subject: [PATCH] fix up for "pi: make remove callback a void function" Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au> --- drivers/net/ethernet/davicom/dm9051.c | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/drivers/net/ethernet/davicom/dm9051.c b/drivers/net/ethernet/davicom/dm9051.c index cee3ff499fd4..d2513c97f83e 100644 --- a/drivers/net/ethernet/davicom/dm9051.c +++ b/drivers/net/ethernet/davicom/dm9051.c @@ -1223,15 +1223,13 @@ static int dm9051_probe(struct spi_device *spi) return 0; } -static int dm9051_drv_remove(struct spi_device *spi) +static void dm9051_drv_remove(struct spi_device *spi) { struct device *dev = &spi->dev; struct net_device *ndev = dev_get_drvdata(dev); struct board_info *db = to_dm9051_board(ndev); phy_disconnect(db->phydev); - - return 0; } static const struct of_device_id dm9051_match_table[] = { -- 2.34.1 -- Cheers, Stephen Rothwell [-- Attachment #2: OpenPGP digital signature --] [-- Type: application/pgp-signature, Size: 488 bytes --]
[-- Attachment #1: Type: text/plain, Size: 2194 bytes --] Hello, On Tue, Feb 15, 2022 at 01:08:58PM +1100, Stephen Rothwell wrote: > Hi all, > > After merging the spi tree, today's linux-next build (x86_64 allmodconfig) > failed like this: > > drivers/net/ethernet/davicom/dm9051.c:1253:19: error: initialization of 'void (*)(struct spi_device *)' from incompatible pointer type 'int (*)(struct spi_device *)' [-Werror=incompatible-pointer-types] > 1253 | .remove = dm9051_drv_remove, > | ^~~~~~~~~~~~~~~~~ > drivers/net/ethernet/davicom/dm9051.c:1253:19: note: (near initialization for 'dm9051_driver.remove') > > Caused by commit > > a0386bba7093 ("spi: make remove callback a void function") > > interacting with commit > > 2dc95a4d30ed ("net: Add dm9051 driver") > > from the net-next tree. > > I applied the following merge resolution and can carry it until the > trees are merged. > > From: Stephen Rothwell <sfr@canb.auug.org.au> > Date: Tue, 15 Feb 2022 13:05:41 +1100 > Subject: [PATCH] fix up for "pi: make remove callback a void function" s/"p/"sp/ > Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au> > --- > drivers/net/ethernet/davicom/dm9051.c | 4 +--- > 1 file changed, 1 insertion(+), 3 deletions(-) > > diff --git a/drivers/net/ethernet/davicom/dm9051.c b/drivers/net/ethernet/davicom/dm9051.c > index cee3ff499fd4..d2513c97f83e 100644 > --- a/drivers/net/ethernet/davicom/dm9051.c > +++ b/drivers/net/ethernet/davicom/dm9051.c > @@ -1223,15 +1223,13 @@ static int dm9051_probe(struct spi_device *spi) > return 0; > } > > -static int dm9051_drv_remove(struct spi_device *spi) > +static void dm9051_drv_remove(struct spi_device *spi) > { > struct device *dev = &spi->dev; > struct net_device *ndev = dev_get_drvdata(dev); > struct board_info *db = to_dm9051_board(ndev); > > phy_disconnect(db->phydev); > - > - return 0; > } > > static const struct of_device_id dm9051_match_table[] = { The patch looks right, thanks. Best regards Uwe -- Pengutronix e.K. | Uwe Kleine-König | Industrial Linux Solutions | https://www.pengutronix.de/ | [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 488 bytes --]
[-- Attachment #1: Type: text/plain, Size: 524 bytes --] Hi all, After merging the spi tree, today's linux-next build (powerpc allyesconfig) failed like this: drivers/spi/spi-amd.c:333:37: error: 'spi_acpi_match' undeclared here (not in a function) 333 | .acpi_match_table = spi_acpi_match, | ^~~~~~~~~~~~~~ Caused by commit 209043554915 ("spi: amd: Add support for version AMDI0062") CONFIG_ACPI is not set for this build. I have reverted that commit for today. -- Cheers, Stephen Rothwell [-- Attachment #2: OpenPGP digital signature --] [-- Type: application/pgp-signature, Size: 488 bytes --]
Hi Stephen,
Às 02:17 de 16/02/22, Stephen Rothwell escreveu:
> Hi all,
>
> After merging the spi tree, today's linux-next build (powerpc
> allyesconfig) failed like this:
>
> drivers/spi/spi-amd.c:333:37: error: 'spi_acpi_match' undeclared here (not in a function)
> 333 | .acpi_match_table = spi_acpi_match,
> | ^~~~~~~~~~~~~~
>
> Caused by commit
>
> 209043554915 ("spi: amd: Add support for version AMDI0062")
>
> CONFIG_ACPI is not set for this build.
>
> I have reverted that commit for today.
>
Thanks for input. I'll send a new series with a patch to make this
driver depends on ACPI then. My patch touched this line, but this
variable was there before, so I think this build breakage is happening
for some time.
Às 09:20 de 16/02/22, André Almeida escreveu:
> Hi Stephen,
>
> Às 02:17 de 16/02/22, Stephen Rothwell escreveu:
>> Hi all,
>>
>> After merging the spi tree, today's linux-next build (powerpc
>> allyesconfig) failed like this:
>>
>> drivers/spi/spi-amd.c:333:37: error: 'spi_acpi_match' undeclared here (not in a function)
>> 333 | .acpi_match_table = spi_acpi_match,
>> | ^~~~~~~~~~~~~~
>>
>> Caused by commit
>>
>> 209043554915 ("spi: amd: Add support for version AMDI0062")
>>
>> CONFIG_ACPI is not set for this build.
>>
>> I have reverted that commit for today.
>>
>
> Thanks for input. I'll send a new series with a patch to make this
> driver depends on ACPI then. My patch touched this line, but this
> variable was there before, so I think this build breakage is happening
> for some time.
Actually, the following diff in my commit is the problem:
- .acpi_match_table = ACPI_PTR(spi_acpi_match),
+ .acpi_match_table = spi_acpi_match,
ACPI_PTR() make it as NULL if CONFIG_ACPI is not set, making the driver
suitable for test compiling even without ACPI enabled. Mark, I'll send a
v3 with this fixed.
[-- Attachment #1: Type: text/plain, Size: 487 bytes --] On Wed, Feb 16, 2022 at 09:20:38AM -0300, André Almeida wrote: > Thanks for input. I'll send a new series with a patch to make this > driver depends on ACPI then. My patch touched this line, but this > variable was there before, so I think this build breakage is happening > for some time. No, don't do that - just compile out the ACPI support when not in use like other drivers do. A dependency on ACPI || COMPILE_TEST could be useful but you still need to fix the driver. [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 488 bytes --]
[-- Attachment #1: Type: text/plain, Size: 542 bytes --] On Wed, Feb 16, 2022 at 10:07:02AM -0300, André Almeida wrote: > ACPI_PTR() make it as NULL if CONFIG_ACPI is not set, making the driver > suitable for test compiling even without ACPI enabled. Mark, I'll send a > v3 with this fixed. Please do not submit new versions of already applied patches, please submit incremental updates to the existing code. Modifying existing commits creates problems for other users building on top of those commits so it's best practice to only change pubished git commits if absolutely essential. [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 488 bytes --]
Às 13:08 de 16/02/22, Mark Brown escreveu:
> On Wed, Feb 16, 2022 at 10:07:02AM -0300, André Almeida wrote:
>
>> ACPI_PTR() make it as NULL if CONFIG_ACPI is not set, making the driver
>> suitable for test compiling even without ACPI enabled. Mark, I'll send a
>> v3 with this fixed.
>
> Please do not submit new versions of already applied patches, please
> submit incremental updates to the existing code. Modifying existing
> commits creates problems for other users building on top of those
> commits so it's best practice to only change pubished git commits if
> absolutely essential.
Ok, let me send a fixing patch then.