There is no question that racism and white supremacy were the major causes of the Jim Crow laws in the South. No other causes were nearly as important as racism.
If you have to try to say that other causes were important, you could point to anger at the North after the Civil War. You could say that the South felt that black rights had been imposed upon it by the North. You could argue that the motivation behind the Jim Crow laws was not to say that blacks were inferior, but rather to say that the North could not tell the South what to do. If you look at it like this, these laws were an act of defiance against the North, not an act of hatred towards blacks.
However, I do not know of any reputable historians who argue that the Jim Crow laws were mainly motivated by anything but racism.