Citation: 6B_545/2015 E. 7

Au vu de ce qui précède, le recours doit être partiellement admis, l'arrêt attaqué annulé et la cause renvoyée à l'autorité précédente pour nouvelle décision. Le recourant a requis l'assistance judiciaire. Dans la mesure où il obtient partiellement gain de cause, il ne sera pas perçu de frais (art. 66 al. 1 et 4 LTF) et le recourant obtiendra des dépens réduits de la part du canton de Genève (art. 68 al. 1 LTF). La requête d'assistance judiciaire est pour cette partie de la procédure sans objet. Pour le surplus, les conditions de l'assistance judiciaires sont réunies (art. 64 al. 1 LTF). Il y a lieu de désigner Me Nicola Meier en qualité d'avocat d'office pour la présente procédure fédérale et de fixer ses honoraires, qui seront supportés par la caisse du Tribunal fédéral (art. 64 al. 2 LTF). Par ces motifs, le Tribunal fédéral prononce :