]> www.infradead.org Git - users/dwmw2/linux.git/commitdiff
net: xilinx: axienet: Add some symbolic constants for IRQ delay timer
authorSean Anderson <sean.anderson@linux.dev>
Thu, 16 Jan 2025 23:29:49 +0000 (18:29 -0500)
committerJakub Kicinski <kuba@kernel.org>
Sun, 19 Jan 2025 01:18:53 +0000 (17:18 -0800)
Instead of using literals, add some symbolic constants for the IRQ delay
timer calculation.

Signed-off-by: Sean Anderson <sean.anderson@linux.dev>
Reviewed by: Shannon Nelson <shannon.nelson@amd.com>
Link: https://patch.msgid.link/20250116232954.2696930-2-sean.anderson@linux.dev
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
drivers/net/ethernet/xilinx/xilinx_axienet.h
drivers/net/ethernet/xilinx/xilinx_axienet_main.c

index d64b8abcf01867f9ce04df20da51c942b50cc123..a3f4f3e42587b0e794c508bf76522c9b5f7f0520 100644 (file)
 #define XAXIDMA_IRQ_ERROR_MASK         0x00004000 /* Error interrupt */
 #define XAXIDMA_IRQ_ALL_MASK           0x00007000 /* All interrupts */
 
+/* Constant to convert delay counts to microseconds */
+#define XAXIDMA_DELAY_SCALE            (125ULL * USEC_PER_SEC)
+
 /* Default TX/RX Threshold and delay timer values for SGDMA mode */
 #define XAXIDMA_DFT_TX_THRESHOLD       24
 #define XAXIDMA_DFT_TX_USEC            50
index 07850ad331dd9eea5f27f2f21436ae0c98857b12..0532dc94ee937f203e4a963fdc46bd8b2b192a62 100644 (file)
@@ -238,11 +238,8 @@ static u32 axienet_usec_to_timer(struct axienet_local *lp, u32 coalesce_usec)
 
        /* 1 Timeout Interval = 125 * (clock period of SG clock) */
        result = DIV64_U64_ROUND_CLOSEST((u64)coalesce_usec * clk_rate,
-                                        (u64)125000000);
-       if (result > 255)
-               result = 255;
-
-       return result;
+                                        XAXIDMA_DELAY_SCALE);
+       return min(result, FIELD_MAX(XAXIDMA_DELAY_MASK));
 }
 
 /**