This is a note to let you know that I've just added the patch titled net: tulip: turn compile-time warning into dev_warn() to the 3.18-stable tree which can be found at: http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary The filename of the patch is: net-tulip-turn-compile-time-warning-into-dev_warn.patch and it can be found in the queue-3.18 subdirectory. If you, or anyone else, feels it should not be added to the stable tree, please let <stable@xxxxxxxxxxxxxxx> know about it. >From de92718883ddbcd11b738d36ffcf57617b97fa12 Mon Sep 17 00:00:00 2001 From: Arnd Bergmann <arnd@xxxxxxxx> Date: Thu, 19 Nov 2015 11:42:26 +0100 Subject: net: tulip: turn compile-time warning into dev_warn() From: Arnd Bergmann <arnd@xxxxxxxx> commit de92718883ddbcd11b738d36ffcf57617b97fa12 upstream. The tulip driver causes annoying build-time warnings for allmodconfig builds for all recent architectures: dec/tulip/winbond-840.c:910:2: warning: #warning Processor architecture undefined dec/tulip/tulip_core.c:101:2: warning: #warning Processor architecture undefined! This is the last remaining warning for arm64, and I'd like to get rid of it. We don't really know the cache line size, architecturally it would be at least 16 bytes, but all implementations I found have 64 or 128 bytes. Configuring tulip for 32-byte lines as we do on ARM32 seems to be the safe but slow default, and nobody who cares about performance these days would use a tulip chip anyway, so we can just use that. To save the next person the job of trying to find out what this is for and picking a default for their architecture just to kill off the warning, I'm now removing the preprocessor #warning and turning it into a pr_warn or dev_warn that prints the equivalent information when the driver gets loaded. Signed-off-by: Arnd Bergmann <arnd@xxxxxxxx> Acked-by: Grant Grundler <grundler@xxxxxxxxxxxxxxxx> Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx> Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx> --- drivers/net/ethernet/dec/tulip/tulip_core.c | 9 +++++++-- drivers/net/ethernet/dec/tulip/winbond-840.c | 2 +- 2 files changed, 8 insertions(+), 3 deletions(-) --- a/drivers/net/ethernet/dec/tulip/tulip_core.c +++ b/drivers/net/ethernet/dec/tulip/tulip_core.c @@ -98,8 +98,7 @@ static int csr0 = 0x01A00000 | 0x4800; #elif defined(__mips__) static int csr0 = 0x00200000 | 0x4000; #else -#warning Processor architecture undefined! -static int csr0 = 0x00A00000 | 0x4800; +static int csr0; #endif /* Operational parameters that usually are not changed. */ @@ -1982,6 +1981,12 @@ static int __init tulip_init (void) pr_info("%s", version); #endif + if (!csr0) { + pr_warn("tulip: unknown CPU architecture, using default csr0\n"); + /* default to 8 longword cache line alignment */ + csr0 = 0x00A00000 | 0x4800; + } + /* copy module parms into globals */ tulip_rx_copybreak = rx_copybreak; tulip_max_interrupt_work = max_interrupt_work; --- a/drivers/net/ethernet/dec/tulip/winbond-840.c +++ b/drivers/net/ethernet/dec/tulip/winbond-840.c @@ -907,7 +907,7 @@ static void init_registers(struct net_de #elif defined(CONFIG_SPARC) || defined (CONFIG_PARISC) i |= 0x4800; #else -#warning Processor architecture undefined + dev_warn(&dev->dev, "unknown CPU architecture, using default csr0 setting\n"); i |= 0x4800; #endif iowrite32(i, ioaddr + PCIBusCfg); Patches currently in stable-queue which might be from arnd@xxxxxxxx are queue-3.18/net-vxge-avoid-unused-function-warnings.patch queue-3.18/tty-nozomi-avoid-a-harmless-gcc-warning.patch queue-3.18/perf-avoid-horrible-stack-usage.patch queue-3.18/btrfs-fix-state-private-cast-on-32-bit-machines.patch queue-3.18/mm-init-fix-zone-boundary-creation.patch queue-3.18/iommu-vt-d-remove-unused-variable.patch queue-3.18/mips-msp71xx-remove-odd-locking-in-pci-config-space-access-code.patch queue-3.18/net-tulip-turn-compile-time-warning-into-dev_warn.patch queue-3.18/nfsd-work-around-a-gcc-5.1-warning.patch queue-3.18/fs-nfs-fix-new-compiler-warning-about-boolean-in-switch.patch queue-3.18/aic94xx-skip-reading-user-settings-if-flash-is-not-found.patch queue-3.18/mmc-sunxi-avoid-invalid-pointer-calculation.patch queue-3.18/acpi-power-avoid-maybe-uninitialized-warning.patch queue-3.18/gfs2-avoid-uninitialized-variable-warning.patch queue-3.18/gadgetfs-fix-uninitialized-variable-in-error-handling.patch queue-3.18/arm-8296-1-cache-l2x0-clean-up-aurora-cache-handling.patch queue-3.18/brcmfmac-avoid-gcc-5.1-warning.patch queue-3.18/kconfig-tinyconfig-provide-whole-choice-blocks-to-avoid-warnings.patch queue-3.18/net-ti-cpmac-fix-compiler-warning-due-to-type-confusion.patch queue-3.18/clk-at91-usb-fix-determine_rate-prototype-again.patch queue-3.18/mips-ralink-cosmetic-change-to-prom_init.patch queue-3.18/mips-fix-the-build-on-jz4740-after-removing-the-custom-gpio.h.patch queue-3.18/mips-asm-compiler-add-new-macros-to-set-isa-and-arch-asm-annotations.patch queue-3.18/misc-ioc4-simplify-wave-period-measurement-in-clock_calibrate.patch queue-3.18/hostap-avoid-uninitialized-variable-use-in-hfa384x_get_rid.patch queue-3.18/dm-bufio-hide-bogus-warning.patch queue-3.18/fix-signed-unsigned-pointer-warning.patch