The way to solve this would be to do:
y == p Log[b + (1 - x) s (o - 1)] + (1 - p) Log[b - s]
Solve[%, s]
but the equation is too complicated to solve in general. Also restricting to Real numbers does not work.
Your equation can be rewritten as:
Exp[y] == (b + (1 - x) s (o - 1))^p (b - s)^(1 - p)
As 'p' is not known, I'm pretty sure there is no general answer to this problem.