The weather was hot, but so was Trent Edwards.

The Buffalo quarterback completed his first 10 passes and threw a touchdown pass to James Hardy late in the fourth quarter to guide the Bills to a 20-16 win over the hometown Jacksonville Jaguars on Sunday. Trent Edwards threw for 239 yards with a touchdown to help Buffalo improve to 2-0 on Sunday.Trent Edwards threw for 239 yards with a touchdown to help Buffalo improve to 2-0 on Sunday. (Doug Benc/Getty Images)

Edwards didn't let the searing temperatures in Florida slow him down one bit, as the Bills signal-caller finished 20-of-25 passing for 239 yards.

Marshawn Lynch ran for 59 yards and a score for the Bills, who are unbeaten in the first two games for the first time in five years. Buffalo joins two other teams — Carolina and Arizona — that were .500 or worse last season but are off to 2-0 starts in 2008.

The Jaguars (0-2) are off to their worst start since 2003 when they finished that season 5-11.

David Garrard has thrown three interceptions in two games, matching his total all of last season, while the normally potent duo of Fred Taylor and Maurice Jones-Drew has been limited to under 70 total yards rushing in each game. Jones-Drew scored Jacksonville's only touchdown on Sunday, from two yards out.

In other action from Week 2 of the NFL:

Cardinals 31, Dolphins 10

Kurt Warner tossed three touchdowns to Anquan Boldin, two of them in the first quarter, to lead Arizona (2-0). Warner threw for 361 yards, with Boldin and Larry Fitzgerald each over 140 yards receiving.

Miami (0-2) was limited to 236 yards of total offence, with Ronnie Brown scoring the lone touchdown on a short run.

Panthers 20, Bears 17

In Charlotte, the Carolina Panthers stopped the Bears on fourth-and-1 with less than two minutes left on the clock to post a 20-17 win over Chicago. The Panthers had last won a home opener in 2003.

The Panthers trailed 17-3 at one point, but for the second straight week posted a comeback win despite missing star receiver Steve Smith, who was suspended by the the team for punching teammate Ken Lucas in training camp.

Carolina (2-0) received a solid effort from rookie Jonathan Stewart, who rushed for 76 yards in the second half and scored two touchdowns, including the go-ahead score late in the fourth quarter

The Bears (1-1) couldn't build off last week's win in Indianapolis, despite 92 yards rushing from Matt Forte, also a rookie. The Bears also lost return specialist Devin Hester, who left in the third with an apparent rib injury.

Patriots 19, Jets 10

Quarterback Matt Cassel won in his first start since high school, completing 16 of 23 passes for 165 yards. In college, Cassel was a reserve at USC, and he has spent over three years as backup to Tom Brady, who suffered a season-ending knee injury last week.

"He did a good job of making good decisions," said New England coach Bill Belichick. "He didn't put us in any bad situations and made some good positive plays. I thought he managed the game well."

Brandon Meriweather intercepted a Brett Favre pass to set up New England's only touchdown, a one-yard run by Sammy Morris. Favre got the Jets back in the game with a two-yard pass to Chansi Stuckey. Favre completed 18 of 26 passes for 181 yards.

New England is 2-0, while New York dropped to 1-1. The Patriots are unbeaten in regular season contests since a loss to Miami on Dec. 10, 2006, a record span of 21 games.

Broncos 39, Chargers 38

In the wildest game of the day, Denver (2-0) appeared to benefit from a blown call and then successfully went for a two-point conversion to win instead of a kick to tie in the waning seconds.

Jay Cutler, who threw four touchdowns on the day, appeared to fumble deep in San Diego territory with less than a minute left. Officials blew the play dead, giving the Broncos another chance. Cutler connected with Eddie Royal for the touchdown with 24 seconds left.

Cutler after the game acknowledged it was probably a fumble.

Trailing 38-37, Denver coach Mike Shanahan went for the two-point conversion, and it paid off, with Cutler and Royal hooking up again.

"Sometimes you have to go with your gut," Shanahan said. "I just felt like it was a chance for us to put them away. I didn't want to count on the coin flip. I wanted to do it then, and obviously it worked out."

Wide receiver Brandon Marshall, playing his first game after serving a suspension for violating the league's personal conduct policy, scored a touchdown among his whopping 18 catches, two shy of the NFL record set in 2000 by Terrell Owens.

San Diego had fought back from a 21-3 deficit. Darren Sproles was the sparkplug for the Chargers, returning a kick 103 yards and then taking a Philip Rivers pass for a 66-yard score to put San Diego up 38-31 late in the fourth. The second Sproles score came after Cutler threw an interception in the Chargers' end zone. The ball squirts out of Jay Cutler's hands in a controversial play from the Denver-San Diego clash. The ball squirts out of Jay Cutler's hands in a controversial play from the Denver-San Diego clash. (Jack Dempsey/Associated Press)

Chargers coach Norv Turner was understandably fixated on the disputed call.

"[Referee] Ed [Hochuli] came over, the official, and said he blew it," said Turner. "And that's not acceptable to me. This is a high-level performance game and that's not acceptable to have a game decided on that play."

The Chargers (0-2) again find themselves down early in the season. San Diego bounced back from a 1-3 start last year to reach the AFC championship game.

Steelers 10, Browns 6

Ben Roethlisberger threw an 11-yard touchdown pass to Hines Ward in the second quarter for the only touchdown on a rainy and windy night in Cleveland.

Browns coach Romeo Crennel is 0-7 lifetime against Pittsburgh. The Steelers (2-0) have won 10 straight against Cleveland, dating back to October 2003.

Crennel was booed by the home fans for sending out Phil Dawson to kick a field goal with just over three minutes left. The Browns got the ball back with only a few seconds left, as Willie Parker gained several of his 105 yards rushing on Pittsburgh's final drive.

Cleveland has managed just 16 total points in their first two games at home, both losses.

The remnants of Hurricane Ike resulted in winds that whipped up to 90 km/h early in the game.

Giants 41, Rams 13

Defending Super Bowl champion New York relied on three Eli Manning touchdown passes to defeat the St. Louis Rams 41-13.

The Giants (2-0) sacked Rams quarterback Marc Bulger five times to win their 12th consecutive road game.

The Rams (0-2) were playing in their home opener, which also served as a tribute to former owner Georgia Frontiere, who passed away in January.

Colts 18, Vikings 15

In Minneapolis, Adam Vinateri booted a 47-yard field goal with three seconds left to lift the Indianapolis Colts to a 18-15 win over the Vikings.

The Colts (1-1) trailed 15-0 late in the third, but quarterback Peyton Manning led the comeback with a 32-yard touchdown pass to Reggie Wayne, and then found Wayne again to set up Vinateri's winning kick.

The Vikings are 0-2 to start the season. Adrian Peterson rushed for 160 yards on 29 carries, but the Vikings didn't reach the end zone, with Ryan Longwell making five of six field goal attempts.

Raiders 23, Chiefs 8

In Kansas City, rookie Darren McFadden ran for 164 yards and a touchdown to help the Oakland Raiders earn a 23-8 win over the Chiefs.

Sebastian Janikowski kicked a team-record 56-yard field goal for Oakland (1-1). The Raiders pummeled the Chiefs on the ground, picking up 300 yards rushing. Michael Bush gained 90 and scored a touchdown.

The win came amid an ESPN report Sunday that coach Lane Kiffin's job was in jeopardy regardless of the result. Kiffin has repeatedly clashed with owner Al Davis in just over one year on the job.

"I don't worry about things I can't control. That's not my decision whether I'll be here," Kiffin said after the game. "I'm going to prepare my staff for the game next week."

Kansas City (0-2) tried three quarterbacks on Sunday: Tyler Thigpen, Damon Huard and Marques Hagans. Only Thigpen had a modicum of success, finding Tony Gonzalez for a two-yard touchdown pass.

Buccaneers 24, Falcons 9

After enjoying a successful NFL debut against a struggling Detroit defence, quarterback Matt Ryan met a nasty Buccaneers bunch in Week 2, and the results were predictable.

Ryan completed 13 of 33 passes for 158 passes and threw two interceptions, which were turned into 10 points by the opposition.

Tampa Bay's Brian Griese, playing for injured Jeff Garcia, completed 18 of 31 passes for 160 yards and threw a touchdown to John Gilmore. Warrick Dunn and Earnest Graham each scored rushing touchdowns for the Bucs, who had local resident Tiger Woods on their sideline as a guest.

Both clubs are now 1-1.

Titans 24, Bengals 7

In Cincinnati, backup quarterback Kerry Collins stepped up in Vince Young's absence to guide the Titans to a 24-7 win over the Bengals.

Collins threw his first touchdown pass in two years and rookie running back Chris Johnson ran for 109 yards for Tennessee (2-0). Young is out for at least two weeks after suffering a knee injury in the opener.

The Bengals dropped to 0-2. Carlson Palmer has thrown for just 228 yards so far this season, with three interceptions.

Packers 48, Lions 25

Aaron Rodgers is making Packer fans forget all about Brett Favre.

Rogers threw three touchdown passes in the first four drives of his second career start to lead the Packers to a convincing 48-25 win over the Lions in Detroit.

Green Bay is now 2-0 under Rogers, who succeeded Favre as the team's starter after the Packers dealt the future Hall of Famer to the New York Jets in the off-season.

Green Bay led 21-0 midway through the second quarter, but trailed by a point with 7:41 left after Calvin Johnson caught his second TD in the fourth quarter for Detroit (0-2). Johnson has 13 catches in two games for the Lions.

The Packers regained the lead with a field goal on the ensuing drive, then wrestled complete control of the game away from the Lions thanks to three straight Jon Kitna interceptions. Charles Woodson of the Packers picked off two of the throws, returning one for a touchdown.

49ers 33, Seahawks 30 (OT)

Joe Nedney atoned for a miss at the end of regulation by kicking a 40-yard field goal in the first overtime game in the NFL this season.

Quarterback J.T. O'Sullivan got his first career win, leading the 49ers back from an 11-point deficit. O'Sullivan connected on 20 of 32 passes for 321 yards and a touchdown pass to Bryant Johnson.

The momentum changed in favour of San Francisco (1-1) when linebacker Patrick Willis intercepted a deflected Matt Hasselbeck pass and returned it 86 yards for a touchdown in the third quarter.

Julius Jones rushed for 127 yards and a touchdown for Seattle (0-2). Hasselbeck threw two interceptions in the game, with the Seattle receiving corps decimated by injury already this season.

The leading wide receiver for the Seahawks — with three catches for 48 yards — was Billy McMullen, signed on Wednesday and last in the NFL in 2006.

Redskins 29, Saints 22

Jason Campbell threw a 67-yard touchdown strike to Santana Moss late in the fourth quarter as the Washington Redskins came from behind to defeat the visiting New Orleans Saints 29-22.

Campbell ended up completing 24-of-36 passes for Washington (1-1), who trailed 24-22 with 3:29 left in the fourth quarter.

Reggie Bush returned a punt 55 yards for a touchdown that gave the Saints (1-1) a 24-15 lead at the end of the third quarter. New Orleans had announced a contract extension for coach Sean Payton before the game.

But the Redskins battled back with Clinton Portis scoring on an 8-yard touchdown run and Moss reeling in Campbell's throw.

With files from the Associated Press