You don’t need a passport, but you DO need a State Dept issued card that allows travel from US to Canada and back. A passport is @ $100, the Canada/Mexico card is @ $30. Used to be all you needed was a driver’s license!
Geez I am about to get angry, I have to have a US passport to leave Guam and it is part of the US!. Can I get a $30 card to visit my parents on the mainland?