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
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
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'
seantywork@raspberrypi2:~/hack/linux/linuxyz/kgpio-irqsock $ cat ins.conf
#CTLOUT=GPIO17
#DATAOUT=GPIO23
CTLIN=GPIO24
DATAIN=GPIO27
CTLOUT=0
DATAOUT=0
seantywork@raspberrypi2:~/hack/linux/linuxyz/kgpio-irqsock $ sudo ./ins.sh
CTL OUT: 0 = 0
DATA OUT: 0 = 0
CTL IN : GPIO24 = 536
DATA IN : GPIO27 = 539
[Jun17 10:53] gpio irqsk: gpio_ctl_i to IRQ 55
[ +0.000012] gpio irqsk: gpio_data_i to IRQ 54
[ +0.000002] gpio irqsk: module is initialized into the kernel
[ +0.000002] gpio irqsk: ctl_o: 0 ctl_i: 536
[ +0.000002] gpio irqsk: data_o: 0 data_i: 539
[ +1.788774] hwmon hwmon1: Undervoltage detected!
[ +4.032053] hwmon hwmon1: Voltage normalised
[ +22.627644] value: c906ea54...b98f7b6f
[ +1.268015] value: c906ea54...b98f7b6f
[ +1.267979] value: c906ea54...b98f7b6f
[ +1.267823] value: c906ea54...b98f7b6f
[ +1.268179] value: c906ea54...b98f7b6f
[ +1.267929] value: c906ea54...b98f7b6f
[ +1.267974] value: c906ea54...b98f7b6f
[ +1.268064] value: c906ea54...b98f7b6f
[ +1.268899] value: c906ea54...b98f7b6f
[ +1.267049] value: c906ea54...b98f7b6f
seantywork@raspberrypi:~/hack/linux/linuxyz/kgpio-irqsock $ cat ins.conf
CTLOUT=GPIO24
DATAOUT=GPIO27
CTLIN=0
DATAIN=0
#CTLIN=GPIO17
#DATAIN=GPIO23
seantywork@raspberrypi:~/hack/linux/linuxyz/kgpio-irqsock $ sudo ./ins.sh
CTL OUT: GPIO24 = 536
DATA OUT: GPIO27 = 539
CTL IN : 0 = 0
DATA IN : 0 = 0
[Jun17 10:53] gpio irqsk: module is initialized into the kernel
[ +0.000015] gpio irqsk: ctl_o: 536 ctl_i: 0
[ +0.000005] gpio irqsk: data_o: 539 data_i: 0
[ +0.000004] gpio irqsk: test mode
[ +0.000020] value: c906ea54...b98f7b6f
[ +0.000038] waitqueue handler: job_handler
[ +0.000004] waitqueue handler waiting...
[ +0.104805] sending ctl start preamble
[ +1.172572] waitqueue handler: job_handler
[ +0.000013] waitqueue handler waiting...
[ +0.107381] sending ctl start preamble
[ +1.160622] waitqueue handler: job_handler
[ +0.000013] waitqueue handler waiting...
[ +0.107374] sending ctl start preamble
[ +1.160590] waitqueue handler: job_handler
[ +0.000012] waitqueue handler waiting...
[ +0.107411] sending ctl start preamble
[ +1.160399] waitqueue handler: job_handler
[ +0.000012] waitqueue handler waiting...
[ +0.107614] sending ctl start preamble
[ +1.160547] waitqueue handler: job_handler
[ +0.000013] waitqueue handler waiting...
[ +0.107441] sending ctl start preamble
[ +1.160471] waitqueue handler: job_handler
[ +0.000012] waitqueue handler waiting...
[ +0.107531] sending ctl start preamble
[ +1.160428] waitqueue handler: job_handler
[ +0.000011] waitqueue handler waiting...
[ +0.107573] sending ctl start preamble
[ +1.160478] waitqueue handler: job_handler
[ +0.000013] waitqueue handler waiting...
[ +0.107522] sending ctl start preamble
[ +1.161356] waitqueue handler: job_handler
[ +0.000011] waitqueue handler waiting...
[ +0.106649] sending ctl start preamble
[ +1.160377] job done
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
sudo dmesg -wH
seantywork@raspberrypi:~/hack/linux/linuxyz/kgpio-irqsock $ sudo ./ins.sh
CTL OUT: GPIO24 = 536
DATA OUT: GPIO27 = 539
CTL IN : GPIO17 = 529
DATA IN : GPIO23 = 535
IF ADDR: 10.10.0.1/24
seantywork@raspberrypi2:~/hack/linux/linuxyz/kgpio-irqsock $ cat ins.conf
CTLOUT=GPIO17
DATAOUT=GPIO23
CTLIN=GPIO24
DATAIN=GPIO27
#CTLOUT=0
#DATAOUT=0
IF_ADDR=10.10.0.2/24
sudo dmesg -wH
seantywork@raspberrypi2:~/hack/linux/linuxyz/kgpio-irqsock $ sudo ./ins.sh
CTL OUT: GPIO17 = 529
DATA OUT: GPIO23 = 535
CTL IN : GPIO24 = 536
DATA IN : GPIO27 = 539
IF ADDR: 10.10.0.2/24
seantywork@raspberrypi:~/hack/linux/linuxyz/kgpio-irqsock $ ip a
...
15: geth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UNKNOWN group default qlen 1000
link/ether 47:45:54:48:30:36 brd ff:ff:ff:ff:ff:ff
inet 10.10.0.1/24 scope global geth0
valid_lft forever preferred_lft forever
inet6 fe80::4545:54ff:fe48:3036/64 scope link
valid_lft forever preferred_lft forever
seantywork@raspberrypi2:~/hack/linux/linuxyz/kgpio-irqsock $ ip a
...
1: geth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UNKNOWN group default qlen 1000
link/ether 47:45:54:48:30:33 brd ff:ff:ff:ff:ff:ff
inet 10.10.0.2/24 scope global geth0
valid_lft forever preferred_lft forever
inet6 fe80::4545:54ff:fe48:3033/64 scope link
valid_lft forever preferred_lft forever
seantywork@raspberrypi2:~/hack/linux/linuxyz/kgpio-irqsock $ nc -l 10.10.0.2 9999
seantywork@raspberrypi:~/hack/linux/linuxyz/kgpio-irqsock $ nc 10.10.0.2 9999
seantywork@raspberrypi2:~/hack/linux/linuxyz/kgpio-irqsock $ nc -l 10.10.0.2 9999
helllo
echo
bye
seantywork@raspberrypi:~/hack/linux/linuxyz/kgpio-irqsock $ nc 10.10.0.2 9999
helllo
echo
bye
^C
# PSH,ACK
[ +0.288959] entered xmit
[ +0.000014] entered hw tx
[ +0.000003] eth src: 47:45:54:48:30:36
[ +0.000007] eth dst: 47:45:54:48:30:33
[ +0.000004] src: 0a0a0001:38618
[ +0.000005] dst: 0a0a0002:09999
[ +0.051666] exiting xmit
# ACK
[ +0.049185] napi interrupt
[ +0.000015] napi receive
[ +0.000003] napi interrupt end
[ +0.000010] polling
[ +0.000015] polling done
[ +0.000004] npackets smaller than budget
[ +0.000004] napi complete
[ +0.000003] polling end