tobacco: Don't poll for input, wait for an interrupt