Mt.Mortar
you can not get regirock in soul silver but in platinum you can in a special event.
you can put in a clefairy or clefable to get the cleffa if that doesnt work you could trade aside from that i dont know where to really fina cleffa.
The Lost doll is in vermilion city in the Pokemon fan club building. it's on the table and looks like a Clefairy.
You go to Vermillion City and go into the Pokemon Fan Club, near the Pokemon Shop
MT. Silver