/* Read interupts and clear them immediately */
intr = bcm_spi_readb(bs->regs, SPI_INT_STATUS);
- bcm_spi_writeb(SPI_INTR_CLEAR_ALL, bs->regs, SPI_INT_STATUS);
+ bcm_spi_writeb(SPI_INTR_CLEAR_ALL, bs->regs, SPI_INT_MASK);
/* A tansfer completed */
if (intr & SPI_INTR_CMD_DONE) {
bs->fifo_size = pdata->fifo_size;
ret = request_irq(irq, bcm63xx_spi_interrupt, 0,
- pdev->dev.bus_id, master);
+ pdev->name, master);
if (ret) {
printk(KERN_ERR PFX " unable to request irq\n");
goto out_unmap;
/* Initialize hardware */
clk_enable(bs->clk);
- bcm_spi_writew(SPI_CMD_HARD_RESET, bs->regs, SPI_CMD);
bcm_spi_writeb(SPI_INTR_CLEAR_ALL, bs->regs, SPI_INT_MASK);
dev_info(&pdev->dev, " at 0x%08x (irq %d, FIFOs size %d) v%s\n",