Dopo aver militato nelle file di Leith Emmett[1] e Wemyss Athletic[1], nel 1928 si trasferì nelle file degli Hearts[1]. Militò nelle file degli Hearts per due stagioni, totalizzando 7 presenze e 3 reti[2]. Nel 1930 passò al St. Bernard's[1]. Militò nel club per due stagioni, totalizzando 29 reti in 66 presenze[3]. Nel 1932 si trasferì all'Hibernian[4]. Il debutto con il club biancoverde avvenne il 24 agosto 1932, in Hibernian-Montrose (4-1)[5]. Segnò le sue prime due reti con la maglia dell'Hibernian il 1° ottobre 1932, in Hibernian-Arbroath (3-0)[6]. L'esperienza nelle file degli Hibees durò quattro stagioni, durante le quali Walls totalizzò 51 reti in 134 presenze. Nel 1936 passò all'Aldershot[7]. Nel 1937 si trasferì al Cowdenbeath[1]. Nella prima stagione, conclusasi con il sesto posto in Scottish Division Two[8], Walls mise a segno 34 reti[1]. La stagione successiva, culminata con il primo posto in First Division e la promozione in Scottish Division One[9], Walls siglò la cifra record di 54 reti in 33 incontri di campionato[1][3]. Nella stagione 1939-1940, con i campionati interrotti a causa della Seconda Guerra Mondiale, il Cowdenbeath disputò il Scottish War Emergency League, competizione dalla quale il club si ritirò nel febbraio 1940 ed in cui Walls siglò 15 reti in altrettante apparizioni[1]. Da febbraio a maggio 1940 giocò nell'Hibernian[4], totalizzando 6 presenze e 2 reti. Nel 1941 giocò la North Eastern League Series 1 con l'Aberdeen[10], totalizzando 4 presenze e 4 reti. Giocò un'ultima gara per il Cowdenbeath nel 1945, all'età di 37 anni[1]. È nella hall of fame del Cowdenbeath[1].