Ah wait. You're checking the input direction, arecord -L, *not* the output aplay -L? That explains. The recent fixes changed front and iec958 to be output-only. I guess this is a bad move as applications depend on "front" capture as well. (Basically iec958 could be also captured, so it's no output-only, either.)