From 8dcdffa80980f5c472edce8081d7a68fcdb59e12 Mon Sep 17 00:00:00 2001 From: seantywork Date: Fri, 20 Jun 2025 00:23:03 +0100 Subject: [PATCH] kgpio irqsk done --- kgpio-irqsock/2506-03.xyz.md | 75 ++++++++++++++++++++++++++++++++++++ kgpio-irqsock/kgpio_irqsk.c | 2 +- kgpio-irqsock/kgpio_irqsk.h | 4 ++ 3 files changed, 80 insertions(+), 1 deletion(-) diff --git a/kgpio-irqsock/2506-03.xyz.md b/kgpio-irqsock/2506-03.xyz.md index 5fb112c..a94d6b4 100644 --- a/kgpio-irqsock/2506-03.xyz.md +++ b/kgpio-irqsock/2506-03.xyz.md @@ -1,5 +1,53 @@ # +```shell +Architecture: aarch64 + CPU op-mode(s): 32-bit, 64-bit + Byte Order: Little Endian +CPU(s): 4 + On-line CPU(s) list: 0-3 +Vendor ID: ARM + Model name: Cortex-A72 + Model: 3 + Thread(s) per core: 1 + Core(s) per cluster: 4 + Socket(s): - + Cluster(s): 1 + Stepping: r0p3 + CPU(s) scaling MHz: 33% + CPU max MHz: 1800.0000 + CPU min MHz: 600.0000 + BogoMIPS: 108.00 + Flags: fp asimd evtstrm crc32 cpuid + +``` + + +# + +```shell +seantywork@raspberrypi:~/hack/linux/linuxyz/kgpio-irqsock $ uname -a +Linux raspberrypi 6.12.25+rpt-rpi-v8 #1 SMP PREEMPT Debian 1:6.12.25-1+rpt1 (2025-04-30) aarch64 GNU/Linux + +``` + +# +```shell + +seantywork@raspberrypi:~/hack/linux/linuxyz/kgpio-irqsock $ make +make -C /lib/modules/6.12.25+rpt-rpi-v8/build M=/home/seantywork/hack/linux/linuxyz/kgpio-irqsock modules +make[1]: Entering directory '/usr/src/linux-headers-6.12.25+rpt-rpi-v8' + CC [M] /home/seantywork/hack/linux/linuxyz/kgpio-irqsock/kgpio_irqsk.o + MODPOST /home/seantywork/hack/linux/linuxyz/kgpio-irqsock/Module.symvers + CC [M] /home/seantywork/hack/linux/linuxyz/kgpio-irqsock/kgpio_irqsk.mod.o + CC [M] /home/seantywork/hack/linux/linuxyz/kgpio-irqsock/.module-common.o + LD [M] /home/seantywork/hack/linux/linuxyz/kgpio-irqsock/kgpio_irqsk.ko +make[1]: Leaving directory '/usr/src/linux-headers-6.12.25+rpt-rpi-v8' + +``` + +# + ```shell seantywork@raspberrypi2:~/hack/linux/linuxyz/kgpio-irqsock $ cat ins.conf #CTLOUT=GPIO17 @@ -105,3 +153,30 @@ DATA IN : 0 = 0 ``` +# + +```shell + +seantywork@raspberrypi:~/hack/linux/linuxyz/kgpio-irqsock $ cat ins.conf +CTLOUT=GPIO24 +DATAOUT=GPIO27 +#CTLIN=0 +#DATAIN=0 +CTLIN=GPIO17 +DATAIN=GPIO23 +IF_ADDR=10.10.0.1/24 + + +``` + +```shell +sudo dmesg -wH + +``` + +# + +```shell + + +``` \ No newline at end of file diff --git a/kgpio-irqsock/kgpio_irqsk.c b/kgpio-irqsock/kgpio_irqsk.c index 428b5eb..9e15d7d 100644 --- a/kgpio-irqsock/kgpio_irqsk.c +++ b/kgpio-irqsock/kgpio_irqsk.c @@ -45,7 +45,7 @@ spinlock_t q_lock; void geth_napi_interrupt(int irq, void *dev_id, struct pt_regs *regs){ printk(KERN_INFO "napi interrupt\n"); - unsigned long flags; + struct geth_priv *priv; struct net_device *dev = (struct net_device *)dev_id; diff --git a/kgpio-irqsock/kgpio_irqsk.h b/kgpio-irqsock/kgpio_irqsk.h index a1d117b..111b779 100644 --- a/kgpio-irqsock/kgpio_irqsk.h +++ b/kgpio-irqsock/kgpio_irqsk.h @@ -105,6 +105,10 @@ extern int i_q_ptr; extern int i_q_len[MAX_Q_LEN]; extern u8 i_q[MAX_Q_LEN][MAX_PKTLEN]; +void geth_napi_interrupt(int irq, void *dev_id, struct pt_regs *regs); + +int geth_poll(struct napi_struct *napi, int budget); + netdev_tx_t geth_xmit(struct sk_buff *skb, struct net_device *dev); void geth_hw_tx(char *buf, int len, struct net_device *dev); -- 2.43.0