Motor speed control mosfet
For a single MOSFET solution you should feed the motor from a +12V supply. Then have the microcontroller generate a PWM signal with varying duty cycles to generate an effective drive to the motor to correspond to the desired 6V, 9V and 12V drive levels. 

Clearly for the 12V to the motor the PWM would be at or close to 100% duty cycle. For the 6V equivalent drive to the motor the duty cycle of the PWM signal would be likely to be in the 45 to 60% duty cycle range. For the 9V drive the PWM would be set to some duty cycle in between the 6V and 12V settings.