Old English ''Hamm'' or ''Homm'' = water meadow, so Hampshire is the shire of the water meadows.
Berkshire, supposedly from a 9th century town within the present county named Berocsire.
Simples!
I've looked at a couple of reference books and discovered that the county may have been called "Hamptonshire" rather that "Southamptonshire" but that city was the source of the name.