Message ID | 1388951367-7411-1-git-send-email-linux@roeck-us.net |
---|---|
State | Changes Requested, archived |
Delegated to: | David Miller |
Headers | show |
From: Guenter Roeck <linux@roeck-us.net> Date: Sun, 5 Jan 2014 11:49:27 -0800 > With arm:allmodconfig, building the Teles PCI driver fails with > > telespci.c:294:2: error: #error "not running on big endian machines now" > > Similar, building the driver for HFC PCI-Bus cards fails with > > hfc_pci.c:1647:2: error: #error "not running on big endian machines now" > > Mark build as broken for big endian ARM machines. > > Signed-off-by: Guenter Roeck <linux@roeck-us.net> Let's not start getting into the habit of doing this, please. The reason this isn't easy to do generically from Kconfig is probably because it almost never makes any sense to do so. In fact, if you look at telespci.c there are no DMA descriptors, everything is read using MMIO acccesses via the chips FIFO. There really can't be any endianness problems that I see. Please just remove the CPP checks, that's the best fix. Thanks. -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On 01/05/2014 05:39 PM, David Miller wrote: > From: Guenter Roeck <linux@roeck-us.net> > Date: Sun, 5 Jan 2014 11:49:27 -0800 > >> With arm:allmodconfig, building the Teles PCI driver fails with >> >> telespci.c:294:2: error: #error "not running on big endian machines now" >> >> Similar, building the driver for HFC PCI-Bus cards fails with >> >> hfc_pci.c:1647:2: error: #error "not running on big endian machines now" >> >> Mark build as broken for big endian ARM machines. >> >> Signed-off-by: Guenter Roeck <linux@roeck-us.net> > > Let's not start getting into the habit of doing this, please. > > The reason this isn't easy to do generically from Kconfig is > probably because it almost never makes any sense to do so. > > In fact, if you look at telespci.c there are no DMA descriptors, > everything is read using MMIO acccesses via the chips FIFO. There > really can't be any endianness problems that I see. > > Please just remove the CPP checks, that's the best fix. > Both drivers build with arm:allmodconfig if I remove the check, so I am fine with that. I'll send an updated patch. Thanks, Guenter -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
diff --git a/drivers/isdn/hisax/Kconfig b/drivers/isdn/hisax/Kconfig index d9edcc9..53dbb75 100644 --- a/drivers/isdn/hisax/Kconfig +++ b/drivers/isdn/hisax/Kconfig @@ -109,7 +109,7 @@ config HISAX_16_3 config HISAX_TELESPCI bool "Teles PCI" - depends on PCI && (BROKEN || !(SPARC || PPC || PARISC || M68K || (MIPS && !CPU_LITTLE_ENDIAN) || FRV || (XTENSA && !CPU_LITTLE_ENDIAN))) + depends on PCI && (BROKEN || !(SPARC || PPC || PARISC || M68K || (MIPS && !CPU_LITTLE_ENDIAN) || FRV || (XTENSA && !CPU_LITTLE_ENDIAN) || (ARM && !CPU_LITTLE_ENDIAN))) help This enables HiSax support for the Teles PCI. See <file:Documentation/isdn/README.HiSax> on how to configure it. @@ -318,7 +318,7 @@ config HISAX_GAZEL config HISAX_HFC_PCI bool "HFC PCI-Bus cards" - depends on PCI && (BROKEN || !(SPARC || PPC || PARISC || M68K || (MIPS && !CPU_LITTLE_ENDIAN) || FRV || (XTENSA && !CPU_LITTLE_ENDIAN))) + depends on PCI && (BROKEN || !(SPARC || PPC || PARISC || M68K || (MIPS && !CPU_LITTLE_ENDIAN) || FRV || (XTENSA && !CPU_LITTLE_ENDIAN) || (ARM && !CPU_LITTLE_ENDIAN))) help This enables HiSax support for the HFC-S PCI 2BDS0 based cards.
With arm:allmodconfig, building the Teles PCI driver fails with telespci.c:294:2: error: #error "not running on big endian machines now" Similar, building the driver for HFC PCI-Bus cards fails with hfc_pci.c:1647:2: error: #error "not running on big endian machines now" Mark build as broken for big endian ARM machines. Signed-off-by: Guenter Roeck <linux@roeck-us.net> --- v2: Turns out CPU_LITTLE_ENDIAN is not defined for little-endian-only architectures. Instead of messing with the overall Kconfig architecture, mark build as broken for big endian ARM machines. Also updated headline accordingly. drivers/isdn/hisax/Kconfig | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)