In this paper, we propose a method for user selection and channel estimation for the multiple-input multiple-output (MIMO) broadcast channel for the downlink of a cellular mobile or local-area wireless communication system. A distributed self-selection procedure is combined with a code-division multiple access (CDMA) uplink signaling strategy to reduce the uplink signaling bandwidth, and the computational complexity of user selection at the base station. We exploit recent advances in sparse signal recovery, which we apply to the uplink multi-user detection and channel estimation problems to reduce the signaling bandwidth. We establish that full channel state information (and not just channel quality) for each self-selecting user can be obtained at the base station via a compressed-sensing technique with no increase in overhead for the uplink feedback channel. We demonstrate the new method as a medium access technique for MIMO downlink broadcast with transmitter precoding and linear receiver processing.