for those of you who, like me, have been curious as to exactly how this buff functions, i've got some results for you. this is stuff i learned while checking out the data files for the game. you can find the code for this in HOak_Abilities.lua
this somewhat crude table conveys the general idea of how this works. there are 6 levels of buffs you can have. your buff level goes up by 1 for every 3 spirits you have. if you have ranks in Soul Power you gain an additional constant damage bonus for having at least 1 spirit active. the total damage is always 20 times the buff level. it ranges from 0 to 120.
Soul Power Damage Bonus Buff Level
1 spirit buff level [base]
3 spirits buff level [base] +1
6 spirits buff level [base] +2
9 spirits buff level [base] +3
where base is the value associated with the skill rank
edit: removed false information about buff being active with zero skill points spent
update: upon further testing of in game behavior, a minimum of 1 skill point must be spent to enable damage bonuses for active spirits. spending more than skill point does not increase the bonus for active spirits, this is a fixed value of 20 for every 3 spirits alive. my conclusion then is that the first rank of Soul Power is by far the most effective one, where as ranks 2 and 3 only add a flat additional 20 bonus damage each.
what this means is that adding ranks to Soul Power just adds 20 constant damage per rank and nothing else. you'll always be able to get 20, 40, or 60 bonus damage for having 3, 6, or 9 spirits out respectively. ranks in Soul Power don't affect that bonus at all, its just built in to the character.
what the ranks do is provide a constant bonus for having at least 1 spirit out. so if you have 6 spirits out and no ranks in soul power you'd get no damage, but if you had rank 1 soul power you'd get an additional 20 damage from it (since you had at least 1 spirit out) and would instead have 60 bonus damage. the 60 damage is composed of of a flat 20 from Soul Power rank 1(active for having at least 1 spirit out) and then another 40 (for having at least 1 rank in Soul Power and having 6 spirits out). the highest damage possible is 120 from rank 3 soul power and 9 spirits active.
edit update:
just recorded some observations from a game played against AI's to confirm that my anaylsis is correct. it seems to be, though my observation data isnt exactly thorough.
anyway, here's the results
conditions
baseline damage with 0 spirits
315-349
soul power 2
raise dead 3
6 spirits
theory predicts buff level of 4, or +80 damage
observed results
391-433 damage
the damage range was increased by 76-84, which is exactly 80 with a +- of 5% (which seems to be Oak's natural damage range)