Who, besides you, said it was criminal? Aside from that straw man argument, the issue was the "freedom of speech"...and what the First Amendment says is "Congress shall make no law abridging the freedom of speech". The NBA is not Congress. Therefore there is no violation of that part of the First Amendment.
Tim Hardaway made a statement derogatory to a certain group of people. The organization that he represented, and was to represent this weekend, felt that was out of place and decided to not use him in the promotional events for the weekend. Neither party's First Amendment rights were violated, because Congress wasn't involved.
As to the consequences of his speech, or what they should or shouldn't be, people are free to discuss. But to say that his freedom of speech has been taken away, as it is defined in the First Amendment to the Constitution, just because some disagree and an organization decided not to use him as their representative, is incorrect. Words have consequences.
I agree with you, however, why does a person expressing their own opinion, as a person, mean you have to pay a price? How many people going to NBA games would go if they thought the NBA was a gay friendly venue? All this guy did was to be honest, so what? All people in the group may or may not share his views. I don't disagree with you, I am just saying, why is it so? Just thought food. What effects this idea that there has to be any punishment at all? Who decides this and why?