SWD debugging solution
ST's extremely low cost cortex eval boards have a somewhat oddball USB-SWD adapter which can work with external targets as well as the on-board target by changing a few jumpers.  There are open source PC-side drivers for these.  What I don't know is if they are universal enough to work with other manufacturer's ARM chips as targets.

However, there's at least one Open-OCD compatible alternate firmware for the adapter on these boards floating around on the net, and one would think that either is universal, or can be modified to be, at least for targets where sufficient information has been publicly released.