Madrid will host a Formula One street race from 2026 onward, leaving a question mark over the future of the existing Spanish Grand Prix in Barcelona.