For long it has been assumed that any baseband (kernel) ending with 015 were the same.
However, during the development of GinTonic.SE slade87 discovered problems concerning high battery consuption when using WiFi on a mismatch of kernel and libril files.
Also paul-xxx pointed out that you need different DualTouch modules with different versions of the kernel (for instance with MiniCM7Pro v21 you get TouchBug if you use 2.1.1.C.0.0 kernel instead of 2.1.1.A.0.6)
Therefore I thought I'd upload them together for easy reference.
Beware that you do not mistake kernel/baseband with rom/firmware. When you update your firmware using SEUS it updates both your kernel and firmware to a certain version, but when you flash a custom rom it only updates the firmware (system partition). If you are uncertain of the kernel you have, just flash one of the below or update/repair using SEUS.
Kernels in .ftf format, flash using Flashtool.
Copy the .ftf into the firmwares subdirectory of flashtool, turn of phone, press flash button, select kernel, connect phone while keeping back button pressed.
There is no need to unlock the bootloader as these are standard SE kernels.
Copy libril files into rom's /system/lib directory before flashing,
or flash the libril_2.1.1.x.x.x.zip using CWM Recovery,
or copy them manually using a file manager/explorer.
Dual Touch modules go in /system/lib/modules
U20_2.1.1.A.0.6_Kernel.ftf (6.15 MB)
libril_2.1.1.A.0.6.zip (437.19 KB)
cy8ctma300_ser.ko (14.03 KB)
U20_2.1.1.C.0.0_Kernel.ftf (6.16 MB)
libril_2.1.1.C.0.0.zip (446.95 KB)
cy8ctma300_ser.ko (112.42 KB)
Just make sure you have matching kernel, libril files and DT module.
AFAIK all the custom kernels are based on 2.1.1.A.0.6
Credits go to slade87 and paul-xxx