mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2026-08-28 04:03:23 -04:00
gpib: use 'static inline' instead of 'extern inline'
With GNU inline semantics, an 'extern inline' function is only included in the build if it can be inlined. When the compiler for some reason decides against inlining it, this causes a link failure, as observed in one function in the tnt4882_gpib driver: ld.lld: error: undefined symbol: mite_irq >>> referenced by tnt4882_gpib.c:974 (/home/arnd/arm-soc/drivers/gpib/tnt4882/tnt4882_gpib.c:974) >>> drivers/gpib/tnt4882/tnt4882_gpib.o:(ni_pci_attach) in archive vmlinux.a Change all of the 'extern inline' definitions in gpib to the regular 'static inline' to avoid this. Fixes:0cd5b05551("staging: gpib: Add TNT4882 chip based GPIB driver") Fixes:6c52d5e3cd("staging: gpib: Add common include files for GPIB drivers") Signed-off-by: Arnd Bergmann <arnd@arndb.de> Link: https://patch.msgid.link/20260611131018.3662609-1-arnd@kernel.org Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
committed by
Greg Kroah-Hartman
parent
7ddb521ab0
commit
6cc6678928
@@ -13,7 +13,7 @@ enum {
|
||||
};
|
||||
|
||||
// incoming mailbox 0-3 register offsets
|
||||
extern inline int INCOMING_MAILBOX_REG(unsigned int mailbox)
|
||||
static inline int INCOMING_MAILBOX_REG(unsigned int mailbox)
|
||||
{
|
||||
return (0x10 + 4 * mailbox);
|
||||
};
|
||||
@@ -29,25 +29,25 @@ enum {
|
||||
};
|
||||
|
||||
// select byte 0 to 3 of incoming mailbox
|
||||
extern inline int INBOX_BYTE_BITS(unsigned int byte)
|
||||
static inline int INBOX_BYTE_BITS(unsigned int byte)
|
||||
{
|
||||
return (byte & 0x3) << 8;
|
||||
};
|
||||
|
||||
// select incoming mailbox 0 to 3
|
||||
extern inline int INBOX_SELECT_BITS(unsigned int mailbox)
|
||||
static inline int INBOX_SELECT_BITS(unsigned int mailbox)
|
||||
{
|
||||
return (mailbox & 0x3) << 10;
|
||||
};
|
||||
|
||||
// select byte 0 to 3 of outgoing mailbox
|
||||
extern inline int OUTBOX_BYTE_BITS(unsigned int byte)
|
||||
static inline int OUTBOX_BYTE_BITS(unsigned int byte)
|
||||
{
|
||||
return (byte & 0x3);
|
||||
};
|
||||
|
||||
// select outgoing mailbox 0 to 3
|
||||
extern inline int OUTBOX_SELECT_BITS(unsigned int mailbox)
|
||||
static inline int OUTBOX_SELECT_BITS(unsigned int mailbox)
|
||||
{
|
||||
return (mailbox & 0x3) << 2;
|
||||
};
|
||||
|
||||
@@ -45,12 +45,12 @@ struct mite_struct {
|
||||
|
||||
extern struct mite_struct *mite_devices;
|
||||
|
||||
extern inline unsigned int mite_irq(struct mite_struct *mite)
|
||||
static inline unsigned int mite_irq(struct mite_struct *mite)
|
||||
{
|
||||
return mite->pcidev->irq;
|
||||
};
|
||||
|
||||
extern inline unsigned int mite_device_id(struct mite_struct *mite)
|
||||
static inline unsigned int mite_device_id(struct mite_struct *mite)
|
||||
{
|
||||
return mite->pcidev->device;
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user