Fix compilation on Linux up to v5.4
authornorly <ny-git@enpas.org>
Mon, 6 Jun 2022 11:31:46 +0000 (13:31 +0200)
committernorly <ny-git@enpas.org>
Mon, 6 Jun 2022 11:33:58 +0000 (13:33 +0200)
mailbox_read()'s type signature was changed in 4e9c9484b085 which is
upstream since v5.5.

module/can327.c

index 833171cae03ceb55f5397be962cf9979b5dd9f6c..fc99dea652f6f22170f76176042bcad4beb425d4 100644 (file)
@@ -762,6 +762,16 @@ static void elm327_parse_rxbuf(struct can327 *elm, size_t first_new_char_idx)
 
 #if LINUX_VERSION_CODE < KERNEL_VERSION(5,10,0)
 /* Dummy needed to use can_rx_offload */
+#if LINUX_VERSION_CODE < KERNEL_VERSION(5,5,0)
+static unsigned int *can327_mailbox_read(struct can_rx_offload *offload,
+                                        struct can_frame *cf,
+                                        u32 *timestamp, unsigned int n)
+{
+       WARN_ON_ONCE(1); /* This function is a dummy, so don't call it! */
+
+       return -ENOBUFS;
+}
+#else /* Since 4e9c9484b085 (included in v5.5) */
 static struct sk_buff *can327_mailbox_read(struct can_rx_offload *offload,
                                           unsigned int n, u32 *timestamp,
                                           bool drop)
@@ -771,6 +781,7 @@ static struct sk_buff *can327_mailbox_read(struct can_rx_offload *offload,
        return ERR_PTR(-ENOBUFS);
 }
 #endif
+#endif
 
 static int can327_netdev_open(struct net_device *dev)
 {