SAN DIEGO -- Seattle manager Eric Wedge called it another vintage performance by Felix Hernandez.
"He was really good today," Wedge said.
Hernandez threw a three-hitter and the Seattle Mariners erupted for a season-high five home runs in a 7-1 rout of the San Diego Padres before a crowd of 18,809 at Petco Park on Thursday.
Hernandez (6-4), unbeaten at Petco with a 5-0 career mark and a 1.54 ERA in six starts, struck out six, including the side in the fifth, in eight innings. He walked three and limited San Diego (24-29) to three singles.
Carlos Quentin's sacrifice fly to drive in Alexi Amarista in the fourth inning was the only run Hernandez allowed.
"When I was warming up in the bullpen, I felt pretty good," said Hernandez, who threw 110 pitches, 70 for strikes. "It just kind of stuck with me."
Wedge said, "Staying in his delivery better, executing pitches, good stuff, and he controlled the ballgame, which is what we want our guys to do."
The win ended a seven-game losing streak on the road for Seattle (23-31) and was only its third victory in 13 games away from home.
Rookie Nick Franklin, who made his major league debut only three days ago, homered twice, the first long balls and RBIs of his career. Kendrys Morales, Brendan Ryan and also drove balls out of the yard.
Padres starter Andrew Cashner (4-3) didn't have his best stuff. He gave up four runs and seven hits in six innings, striking out four and walking none. Three Seattle home runs, and the Padres' inability to generate much against Hernandez, led to his downfall.
"I just left a couple of balls up in the zone," said Cashner, who lost for the first time in four decisions. "Two of those home runs were changeups in the zone. I have to be better than that. They were pretty flat and up in the zone."
Padres manager Bud Black said, "The ball was carrying. But I think that was a function of location more than the ball traveling. The two pitches I'm sure he'd take back were the two high changeups to Ryan and Franklin, two guys who don't profile as home run hitters."
Morales, who hit his seventh of the sason, initiated Seattle's scoring, delivering a solo shot to center to lead off the second and give the Mariners a 1-0 lead.
Ryan made it 2-0 when he lined a 3-2 Cashner pitch for a home run just inside the foul line off the Western Metal Supply building in left with no outs in the third. Morales singled home Kyle Seager for a 3-0 advantage with two outs in the inning.
The Padres, who didn't manage a hit until the fourth off Hernandez, got on the board in the inning on Quentin's sacrifice fly to center to slice the lead to 3-1. With runners at first and second and one out, Hernandez induced Jedd Gyorko to ground into a double play.
In the sixth, Cashner gave up his third home run, as Franklin drilled one into the sandbox in center for a 4-1 Mariners lead.
Franklin hit his second off reliever Tim Stauffer with two outs in the eighth, joining Seattle's Kenji Johjima and San Diego's Ben Johnson has the only rookies to have multi-homer games at Petco.
"Big day for Nick. Good for him," Wedge said. "He hit a couple of balls really good. You can see even in the short period of time he's been here that he's gaining some confidence. It was an impressive day by Nick."
Endy Chavez also homered off Stauffer with a two-run blast in the seventh to blow the game open.
NOTES: Padres RHP Nick Vincent, who will work out of the bullpen, was called up from Triple-A Tucson on Thursday. Vincent was 4-3 with a 4.15 ERA at Tucson. To make room, RHP Anthony Bass was optioned to Tucson. ... Seattle 1B Justin Smoak didn't start for the fifth consecutive game. Smoak has been nursing an oblique strain. ... Morales has nine extra bases hits in his last 10 games with seven doubles, two home runs and 13 RBIs. ... Though they split the four-game set, the Padres were outscored 24-5 in the series by the Mariners.