There are
2,948 mi
from Portsmouth, VA to Morgan Hill, CA
That's the driving distance. It would take 2 days 4 hours to go from Portsmouth, Virginia to Morgan Hill, California.
The flight distance (direct flight from Portsmouth, VA to Morgan Hill, CA) is 2,478.82 mi.
2,948 mi = 4,744.95 kms