Motivated by industrial and geophysical solidification problems such as segregation in metallic castings and brine expulsion from growing sea ice, we present and solve a model for steady convection in a two-dimensional mushy layer of a binary mixture. At sufficiently large amplitudes of convection, steady states are found in which plumes emanate from vertical chimneys (channels of zero solid fraction) in the mushy layer. The mush-liquid interface, including the chimney wall, is a free boundary whose shape and location we determine using local equilibrium conditions. We map out the changing structure of the system as the Rayleigh number varies, and compute various measures of the amplitude of convection including the flux of solute out of the mushy layer, through chimneys. We find that there are no steady states if the Rayleigh number is less than a global critical value, which is less than the linear critical value for convection to occur. At larger values of the Rayleigh number we find, in agreement with experiments, that the width of chimneys and the height of the mushy layer both decrease relative to the thermal-diffusion length, which is the scale height of the mushy layer in the absence of convection. We find evidence to suggest that the spacing between neighbouring chimneys at high Rayleigh numbers is smaller than the critical wavelengths of both the linear and global stability modes.