OP here. Thanks for all the responses. Okay, I probably did the wrong thing! First, I confronted the bully and told him to never touch my son again or I would call the principal. I know it was probably a bad idea and ds was very ticked at me. He said it will be worse for him at school now. It is just so hard to let the kid think he is getting away with this behavior.
About an hour later I went to his home and spoke to his mother. I told her my son was reluctant to talk to me about this but her son had been bullying him since 5th grade. There had been one incident where she came to my home thinking my son was the instigator but when her other son retold the story to both of us it came out that her son had started the whole thing. I told her the bullying was going on at the school dances and on the way home from the bus on days they both took it. I have no idea if the bullying is going on while they are on the bus. She seemed surprised about it and even asked her older son why he hadn't told her about it. She said she would talk to her son. By the way, the kid is very tough looking and one of those kids who looks at you and you can tell he is thinking you are an idiot.
I am sure I will never know what bullying is actually going on. I know a lot of words are being exchanged. Other kids are getting involved too saying things to my son like, "you aren't going to take that are you?" Walking away has been preached since they were in kindergarten.
I think my ds just isn't one of the "cool" kids. He doesn't play football or basketball which is really big at his school. His teachers told me at conferences that he is one of the most mature and insightful 7th graders that they have ever met. That doesn't win him any popularity points. He is in band and I am hoping he'll make friends from that. He plays baseball but he is only mediocre and with boys this age that doesn't seem to be good enough.
I just really hate this whole thing. Dh is all about my ds defending himself but I would be afraid against this kid too.