Karsten Wiese's patches are making their way into the ALSA driver, from v1.0.18rc1 (check the changelog).

Unfortunately I have an US-144 for testing...

I first compiled Kernel Vanilla 2.6.25.4 under Ubuntu 8.04 Hardy Heron following Federico Briata's tutorial.

I then tried to modify snd-usb-us122l_0.5.patch l.771-781
Code:
+static struct usb_device_id snd_us122l_usb_id_table[] = {
+	{
+		.match_flags =	USB_DEVICE_ID_MATCH_DEVICE,
+		.idVendor =	0x0644,
+		.idProduct =	USB_ID_US122L
+	},
+/*  	{ */		/* US-144 maybe works when @USB1.1. Untested. */
+/* 		.match_flags =	USB_DEVICE_ID_MATCH_DEVICE, */
+/* 		.idVendor =	0x0644, */
+/* 		.idProduct =	USB_ID_US144 */
+/* 	}, */
into
Code:
+static struct usb_device_id snd_us122l_usb_id_table[] = {
+/*	{*/
+/*		.match_flags =	USB_DEVICE_ID_MATCH_DEVICE, */
+/*		.idVendor =	0x0644, */
+/*		.idProduct =	USB_ID_US122L */
+/*	},*/
+  	{ 		/* US-144 maybe works when @USB1.1. Untested. */
+ 		.match_flags =	USB_DEVICE_ID_MATCH_DEVICE, 
+ 		.idVendor =	0x0644,
+ 		.idProduct =	USB_ID_US144
+ 	},
Even after multiple replugs and reboots, dmesg outputs
Code:
snd-usb-us122l: probe of 5-5:1.1 failed with error -5
with an additional "couldn't __get_free_pages()" error message (generated from sound/usb/usx2y/usb_stream.c)...

Might be due to my patch mashup.

I also tried to compile this latest ALSA driver version (--with-cards=snd-us122l among other configure flags), but no related module gets built. The changelog reads "build stub for us122l", hence probably still some inactivated code snippets...

I guess I'll go fetch a Native-Instrument Audio Kontrol 1 tomorrow...

Good luck!