Smith was quickly released on bail, the NFL website reported. He was arrested after he hit a tree about 7 a.m. in San Jose, Calif.
"The initial investigation revealed that he was driving under the influence of alcohol," Sgt. Heather Randol, a San Jose police spokeswoman, said.
Sgt. Kurtis Stenderup, a Santa Clara County sheriff's deputy, said Smith was also charged with possessing marijuana before he posted $5,250 bail.
Smith refused to comment on the arrest at the 49ers practice later Friday. His coach, Jim Harbaugh, said he expects Smith to play Sunday against the Indianapolis Colts.
"I'm disappointed, and I felt like he needs to go to work, face his teammates and soldier through it," Harbaugh said.
The arrest for driving under the influence is Smith's second. His first was last year in Miami-Dade County in Florida, where he completed a program for first-time offenders and the charge was reduced to reckless driving, the website said.