Messages in this thread |  | | From | Arnd Bergmann <> | Subject | Re: [PATCH 12/15] sound: add missing HAS_IOPORT and GENERIC_HARDIRQS dependencies | Date | Thu, 07 Feb 2013 02:13:19 +0100 |
| |
On Wednesday 06 February 2013 18:05:14 Takashi Iwai wrote: > At Wed, 6 Feb 2013 17:24:00 +0100, > Heiko Carstens wrote: > > > > Fix these two compile errors on s390 which does not have HAS_IOPORT > > nor GENERIC_HARDIRQS: > > > > sound/pci/lx6464es/lx6464es.c: In function ‘snd_lx6464es_free’: > > sound/pci/lx6464es/lx6464es.c:565:2: error: implicit declaration of function ‘ioport_unmap’ > > Shouldn't this be fixed rather in asm-generic/io.h? > Something like, > > #if defined(CONFIG_HAS_IOPORT) && defined(CONFIG_GENERIC_IOMAP) > extern void __iomem *ioport_map(unsigned long port, unsigned int nr); > extern void ioport_unmap(void __iomem *p); > #else > static inline void __iomem *ioport_map(unsigned long port, unsigned int nr) > { > return (void __iomem *) port; > } > > static inline void ioport_unmap(void __iomem *p) > { > } > #endif /* CONFIG_HAS_IOPORT */
No, it is intentional that the CONFIG_HAS_IOPORT symbol refers to the fact that you can use the ioport_map function, in order to disallow building drivers that depend on this function when it is unavailable. I actually want to change this, but in the opposite way of what you are proposing:
I think CONFIG_HAS_IOPORT should refer to the fact that the inb/outb family of functions are usuable and be unset when they are not provided, and I would introduce a new CONFIG_HAS_IOPORT_MAP symbol for those (few) platforms that have a working inb/outb but no ioport_map.
> > sound/soc/codecs/wm8903.c: In function ‘wm8903_set_pdata_irq_trigger’: > > sound/soc/codecs/wm8903.c:1954:9: error: implicit declaration of function ‘irq_get_irq_data’ > > Ditto, how about defining > > #ifndef CONFIG_GENERIC_HARDIRQS > #define irq_get_irq_data(x) NULL > #endif > > somewhere appropriately? >
Why not just make CONFIG_GENERIC_HARDIRQS mandatory for all platforms. It is use almost everywhere now.
Arnd -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
|  |