
int spi_sync(struct spi_device *spi, struct spi_message *message)
{
    int ret;

    mutex_lock(&spi->controller->bus_lock_mutex);
    ret = __spi_sync(spi, message);
    if (ret < 0) {
        pr_err("SPI sync failed: %d\n", ret);
        goto out_unlock;
    }

out_unlock:
    mutex_unlock(&spi->controller->bus_lock_mutex);
    return ret;
}
