The Kilkenny fighter floored Richards twice before another standing count for the Swede quickly ended the contest.
O'Neill, 30, will now take on top seed Abdulkadir Abdullayev from Azerbaijan for a place in the semi-finals.
The top three men will earn a place for their country in their division at the Rio Games this summer.
David Oliver Joyce had a unanimous points victory over Otar Eranosyan from Georgia in the lightweight division.
But world bronze medallist Michael O'Reilly, the number one seed in the middleweight class, lost to Ilari Kijala of Finland in a unanimous points decision.
Ireland's Darren O'Neill stopped Gabriel Richards in the first round at the European Olympic Qualifying event in Samsun, Turkey, on Tuesday.