arm development on linux

Anyone out there using anything besides crossworks? I’m sure its a great product, but I really want to stay with an open-source development system. I’m not really serious about ARM development yet, but it looks very interesting. I am aware of the gcc cross tool chains for ARM, but I’m not sure what programming software is available? It looks like I need a good JTAG programmer for Linux… Anybody have some good links?

Thanks