Tens of thousands of anti-government protesters have flooded a major highway in Bahrain, demanding a halt to this weekend's Formula One race.
As practise runs take place on the track, the Gulf kingdom's crown prince vowed the country's premier sporting event would go ahead.
Bahraini authorities stepped up security around the Formula One circuit after clashes between protesters and security forces intensified ahead of Sunday's Grand Prix race.
Last year, a wave of anti-government protests by the island's Shia majority and a violent crackdown by the Sunni rulers forced organisers to cancel the 2011 Bahrain GP.
At least 50 people have been killed since the start of Bahrain's uprising, inspired by other Arab Spring revolts, and violence continues to roil the island.
The rally was organised by Shia political blocs, including the main groups Al Wefaq and Al Waad. Protesters shouted slogans against the ruling Sunni dynasty - the main backer of the F1 race. The crown prince owns rights to the event.
Opposition supporters chanted against King Hamad bin Isa Al Khalifa, as they massed on the main highway leading out of the capital, Manama, about 12 miles north of the Formula One track.
The rally was given a permit by the government. But riot police fired stun grenades and tear gas at a group of about a hundred protesters who broke away from the rally and headed to Pearl Square, the now heavily guarded roundabout in the capital that had served as opposition's hub during the first weeks of last year's uprising. There were no immediate reports of injuries.
Bahrain's most senior Shia cleric, Sheik Isa Qassim, condemned the Sunni rulers for staging the F1 race despite opposition protests. In a strongly worded sermon during Friday prayers, the cleric said the rulers have cracked down on dissent aggressively ahead of the event, "as if we are entering a war".
The grand prix race is Bahrain's premier international event, part of the tiny island kingdom's attempts to boost its prestige in recent years. During a visit to the circuit on Friday, Crown Prince Salman bin Hamad Al Khalifa told reporters the F1 race should go ahead on Sunday. "I genuinely believe this race is a force for good, it unites many people from many different religious backgrounds, sects and ethnicities," he said.