isdn: disable HiSax NetJet driver on microblaze arch
Subsystems (2)
PATCH 1/1 isdn: disable HiSax NetJet driver on microblaze arch
Fix an allmodconfig compilation failer on microblaze due to big endian architectures being apparently unsupported by the NetJet code:
drivers/isdn/hisax/nj_s.c: In function 'setup_netjet_s':
drivers/isdn/hisax/nj_s.c:265:2:
error: #error "not running on big endian machines now"
Modify the relevant Kconfig such that the NetJet code is not built on microblaze anymore.
Note that endianess on microblaze is not determined through Kconfig, but by means of a compiler provided CPP macro, namely __MICROBLAZEEL__. However, gcc defaults to big endianess on that platform.
---
The maintainer tree listed under "ISDN SUBSYSTEM" in MAINTAINERS does not exist anymore. I created the diff against the Linus tree.
drivers/isdn/hisax/Kconfig | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)
drivers/isdn/hisax/Kconfig +2 -2
@@ -237,7 +237,7 @@ config HISAX_MIC config HISAX_NETJET bool "NETjet card" - depends on PCI && (BROKEN || !(PPC || PARISC || M68K || (MIPS && !CPU_LITTLE_ENDIAN) || FRV || (XTENSA && !CPU_LITTLE_ENDIAN))) + depends on PCI && (BROKEN || !(PPC || PARISC || M68K || (MIPS && !CPU_LITTLE_ENDIAN) || FRV || (XTENSA && !CPU_LITTLE_ENDIAN) || MICROBLAZE)) depends on VIRT_TO_BUS help This enables HiSax support for the NetJet from Traverse
@@ -249,7 +249,7 @@ config HISAX_NETJET config HISAX_NETJET_U bool "NETspider U card" - depends on PCI && (BROKEN || !(PPC || PARISC || M68K || (MIPS && !CPU_LITTLE_ENDIAN) || FRV || (XTENSA && !CPU_LITTLE_ENDIAN))) + depends on PCI && (BROKEN || !(PPC || PARISC || M68K || (MIPS && !CPU_LITTLE_ENDIAN) || FRV || (XTENSA && !CPU_LITTLE_ENDIAN) || MICROBLAZE)) depends on VIRT_TO_BUS help This enables HiSax support for the Netspider U interface ISDN card
Signature · 1 line
2.4.3
Quoted 35 lines · Nicolai Stange
Fix an allmodconfig compilation failer on microblaze due to big endian architectures being apparently unsupported by the NetJet code:
drivers/isdn/hisax/nj_s.c: In function 'setup_netjet_s':
drivers/isdn/hisax/nj_s.c:265:2:
error: #error "not running on big endian machines now"Modify the relevant
Kconfigsuch that the NetJet code is not built on microblaze anymore.Note that endianess on microblaze is not determined through
Kconfig, but by means of a compiler provided CPP macro, namely__MICROBLAZEEL__. However, gcc defaults to big endianess on that platform.Signed-off-by Nicolai Stange <[email protected]>---
The maintainer tree listed under "ISDN SUBSYSTEM" inMAINTAINERSdoes not exist anymore. I created the diff against the Linus tree.drivers/isdn/hisax/Kconfig | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)drivers/isdn/hisax/Kconfig +1
-1@@ -237,7 +237,7 @@ config HISAX_MIC config HISAX_NETJET bool "NETjet card" - depends on PCI && (BROKEN || !(PPC || PARISC || M68K || (MIPS && !CPU_LITTLE_ENDIAN) || FRV || (XTENSA && !CPU_LITTLE_ENDIAN))) + depends on PCI && (BROKEN || !(PPC || PARISC || M68K || (MIPS && !CPU_LITTLE_ENDIAN) || FRV || (XTENSA && !CPU_LITTLE_ENDIAN) || MICROBLAZE)) depends on VIRT_TO_BUS help This enables HiSax support for the NetJet from Traverse
drivers/isdn/hisax/Kconfig config HISAX_NETJET · line 255
Quoted 8 lines
drivers/isdn/hisax/Kconfig +1
-1@@ -249,7 +249,7 @@ config HISAX_NETJET config HISAX_NETJET_U bool "NETspider U card" - depends on PCI && (BROKEN || !(PPC || PARISC || M68K || (MIPS && !CPU_LITTLE_ENDIAN) || FRV || (XTENSA && !CPU_LITTLE_ENDIAN))) + depends on PCI && (BROKEN || !(PPC || PARISC || M68K || (MIPS && !CPU_LITTLE_ENDIAN) || FRV || (XTENSA && !CPU_LITTLE_ENDIAN) || MICROBLAZE)) depends on VIRT_TO_BUS help This enables HiSax support for the Netspider U interface ISDN card
Signature · 2 lines
Jean Delvare SUSE L3 Support
Quoted 1 line
Acked-by Jean Delvare <[email protected]>
Jean, thank you very much for your prompt reaction!
David Miller
maintainerFrom: Nicolai Stange <[email protected]>
Date: Wed, 17 Jun 2015 03:05:02 +0200
Quoted 9 lines
Fix an allmodconfig compilation failer on microblaze due to big endian architectures being apparently unsupported by the NetJet code:
drivers/isdn/hisax/nj_s.c: In function 'setup_netjet_s':
drivers/isdn/hisax/nj_s.c:265:2:
error: #error "not running on big endian machines now"Modify the relevant
Kconfigsuch that the NetJet code is not built on microblaze anymore.
Quoted 8 lines
Note that endianess on microblaze is not determined through
Kconfig, but by means of a compiler provided CPP macro, namely__MICROBLAZEEL__. However, gcc defaults to big endianess on that platform.Signed-off-by Nicolai Stange <[email protected]>---
The maintainer tree listed under "ISDN SUBSYSTEM" inMAINTAINERSdoes not exist anymore. I created the diff against the Linus tree.
Applied, but we're long overdue for an across-the-board-available endianness Kconfig option that can flat out be used in these situations. The current way this is handled is at best, a mess.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in Please read the FAQ at http://www.tux.org/lkml/
Quoted 6 lines · David Miller
Quoted 3 lines
Note that endianess on microblaze is not determined through
Kconfig, but by means of a compiler provided CPP macro, namely__MICROBLAZEEL__. However, gcc defaults to big endianess on that platform.Applied, but we're long overdue for an across-the-board-available endianness
Kconfigoption that can flat out be used in these situations. The current way this is handled is at best, a mess.
Thanks!
Regarding the general Kconfig endianess symbol, I will do another patch based on the information of
git grep '_endian\.h' -- arch/
and supply every arch with either of CONFIG_CPU_{LITTLE,BIG}_ENDIAN if lacking.
Quoted 7 lines · Nicolai Stange
Quoted 6 lines · David Miller
Quoted 3 lines
Note that endianess on microblaze is not determined through
Kconfig, but by means of a compiler provided CPP macro, namely__MICROBLAZEEL__. However, gcc defaults to big endianess on that platform.Applied, but we're long overdue for an across-the-board-available endianness
Kconfigoption that can flat out be used in these situations. The current way this is handled is at best, a mess.
I fully agree.
Quoted 7 lines
Thanks!
Regarding the general
Kconfigendianess symbol, I will do another patch based on the information of
git grep '_endian\.h' --arch/
and supply every arch with either of CONFIG_CPU_{LITTLE,BIG}_ENDIAN if lacking.
Note that Chen Gang (Cc'd) attempted the same almost a year ago:
http://patchwork.linux-mips.org/patch/7540/
then:
http://marc.info/?t=140958656400002&r=1&w=2
The idea was great IMHO but it did not work out, and I can't remember why.
Signature · 2 lines
Jean Delvare SUSE L3 Support
Quoted 12 lines · Jean Delvare
Quoted 10 lines · Nicolai Stange
Quoted 3 lines · David Miller
Applied, but we're long overdue for an across-the-board-available endianness
Kconfigoption that can flat out be used in these situations. The current way this is handled is at best, a mess.Regarding the general
Kconfigendianess symbol, I will do another patch based on the information of
git grep '_endian\.h' --arch/
and supply every arch with either of CONFIG_CPU_{LITTLE,BIG}_ENDIAN if lacking.
Quoted 7 lines
Note that Chen Gang (Cc'd) attempted the same almost a year ago:
http://patchwork.linux-mips.org/patch/7540/
then:
http://marc.info/?t=140958656400002&r=1&w=2The idea was great IMHO but it did not work out, and I can't remember why.
Thank you very much for this pointer, Jean! I've read through these threads and to summarize, some arch maintainers' main point against that patchset is that (recent) drivers should generally support both, LE and BE.
It is interesting to note that Chen Gang had already addressed the very same issue (Hisax NetJet driver) by the far more general approach proposed by David Miller here, namely by introducing an "across-the-board-available endianess Kconfig option".
So unless you really want to have such an option and ping me, I will not do another patch in the mood of Chen Gang's original one.