I already went through reading this and I don't think the 0x81 means anything very revealing since all my USB ports share it.
I also looked in /proc/ioports
Code:
0000-001f : dma1
0020-0021 : pic1
0040-0043 : timer0
0050-0053 : timer1
0060-006f : keyboard
0070-0077 : rtc
0080-008f : dma page reg
00a0-00a1 : pic2
00c0-00df : dma2
00f0-00ff : fpu
0170-0177 : 0000:00:1f.2
0170-0177 : libata
01f0-01f7 : 0000:00:1f.2
01f0-01f7 : libata
0376-0376 : 0000:00:1f.2
0376-0376 : libata
03c0-03df : vga+
03f6-03f6 : 0000:00:1f.2
03f6-03f6 : libata
04d0-04d1 : pnp 00:02
0910-091f : pnp 00:08
0920-092f : pnp 00:08
0930-097f : pnp 00:08
0cb0-0cbf : pnp 00:08
0cf8-0cff : PCI conf1
1000-107f : 0000:00:1f.0
1000-1005 : pnp 00:02
1000-1003 : ACPI PM1a_EVT_BLK
1004-1005 : ACPI PM1a_CNT_BLK
1006-1007 : pnp 00:03
1008-100f : pnp 00:02
1008-100b : ACPI PM_TMR
1010-1015 : ACPI CPU throttle
1020-1020 : ACPI PM2_CNT_BLK
1028-102f : ACPI GPE0_BLK
1060-107f : pnp 00:03
1060-107f : iTCO_wdt
1080-10bf : 0000:00:1f.0
1080-10bf : pnp 00:03
10c0-10df : 0000:00:1f.3
10c0-10df : pnp 00:03
bf20-bf3f : 0000:00:1d.3
bf20-bf3f : uhci_hcd
bf40-bf5f : 0000:00:1d.2
bf40-bf5f : uhci_hcd
bf60-bf7f : 0000:00:1d.1
bf60-bf7f : uhci_hcd
bf80-bf9f : 0000:00:1d.0
bf80-bf9f : uhci_hcd
bfa0-bfaf : 0000:00:1f.2
bfa0-bfaf : libata
e000-efff : PCI Bus #0d
f400-f4fe : pnp 00:03
I can see there's the standard 0x60 keyboard address and I can also see the four universal serial bus addresses. I tried them but it didn't work. Anyway, the port range isn't the same length than 0x60 - 0x6f so I guess it's interpreted differently when it goes through USB.
After doing some research (I'm not an expert by any means) I don't think I can just replace the port address in my code. The solution could be a layer higher... maybe I should just find a way to connect /dev/input/event3 (USB keyboard) to /dev/input/event1 (standard 0x60 laptop keyboard).
Anyway, thanks for you interest.