mirror of
https://review.coreboot.org/flashrom.git
synced 2025-04-27 15:12:36 +02:00
spi_master: Make use of new register_spi_master() API
Some more spi masters are now ready to get the advantage of new API and pass pointers to dynamically allocated data to register_spi_master(). This way we can avoid some mutable globals. BUG=b:185191942 TEST=./flashrom --programmer raiden_debug_spi -r $(mktemp) ./flashrom --programmer raiden_debug_spi -v /tmp/tmp.Fch5QLVb4R Change-Id: If72f54c28a95b402b3565fd14ea481f734e1c970 Signed-off-by: Anastasia Klimchuk <aklm@chromium.org> Reviewed-on: https://review.coreboot.org/c/flashrom/+/54889 Reviewed-by: Edward O'Callaghan <quasisec@chromium.org> Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
This commit is contained in:
parent
89a16e4df6
commit
45e0a071f1
@ -504,7 +504,7 @@ exit:
|
||||
return rv;
|
||||
}
|
||||
|
||||
static struct spi_master spi_master_ene = {
|
||||
static const struct spi_master spi_master_ene = {
|
||||
.max_data_read = 256,
|
||||
.max_data_write = 256,
|
||||
.command = ene_spi_send_command,
|
||||
@ -568,11 +568,10 @@ int ene_lpc_init()
|
||||
ene_enter_flash_mode(ctx_data);
|
||||
|
||||
internal_buses_supported |= BUS_LPC;
|
||||
spi_master_ene.data = ctx_data;
|
||||
|
||||
if (register_shutdown(ene_leave_flash_mode, ctx_data))
|
||||
goto init_err_cleanup_exit;
|
||||
register_spi_master(&spi_master_ene, NULL);
|
||||
register_spi_master(&spi_master_ene, ctx_data);
|
||||
msg_pdbg("%s: successfully initialized ene\n", __func__);
|
||||
|
||||
return 0;
|
||||
|
@ -397,7 +397,7 @@ mec1308_spi_send_command_exit:
|
||||
return rc;
|
||||
}
|
||||
|
||||
static struct spi_master spi_master_mec1308 = {
|
||||
static const struct spi_master spi_master_mec1308 = {
|
||||
.max_data_read = 256, /* FIXME: should be MAX_DATA_READ_UNLIMITED? */
|
||||
.max_data_write = 256, /* FIXME: should be MAX_DATA_WRITE_UNLIMITED? */
|
||||
.command = mec1308_spi_send_command,
|
||||
@ -505,11 +505,10 @@ int mec1308_init(void)
|
||||
goto init_err_cleanup_exit;
|
||||
|
||||
internal_buses_supported |= BUS_LPC; /* for LPC <--> SPI bridging */
|
||||
spi_master_mec1308.data = ctx_data;
|
||||
|
||||
if (register_shutdown(mec1308_shutdown, ctx_data))
|
||||
goto init_err_cleanup_exit;
|
||||
register_spi_master(&spi_master_mec1308, NULL);
|
||||
register_spi_master(&spi_master_mec1308, ctx_data);
|
||||
msg_pdbg("%s(): successfully initialized mec1308\n", __func__);
|
||||
|
||||
return 0;
|
||||
|
@ -1597,7 +1597,7 @@ loop_end:
|
||||
data->in_ep = in_endpoint;
|
||||
data->out_ep = out_endpoint;
|
||||
|
||||
spi_config->data = data;
|
||||
spi_config->data = data; /* data is needed to configure protocol below */
|
||||
/*
|
||||
* The SPI master needs to be configured based on the device connected.
|
||||
* Using the device protocol interrogation, we will set the limits on
|
||||
@ -1614,7 +1614,7 @@ loop_end:
|
||||
return SPI_GENERIC_ERROR;
|
||||
}
|
||||
|
||||
register_spi_master(spi_config, NULL);
|
||||
register_spi_master(spi_config, data);
|
||||
register_shutdown(raiden_debug_spi_shutdown, spi_config);
|
||||
|
||||
return 0;
|
||||
|
@ -410,7 +410,7 @@ static int realtek_mst_i2c_spi_write_aai(struct flashctx *flash, const uint8_t *
|
||||
return SPI_GENERIC_ERROR;
|
||||
}
|
||||
|
||||
static struct spi_master spi_master_i2c_realtek_mst = {
|
||||
static const struct spi_master spi_master_i2c_realtek_mst = {
|
||||
.max_data_read = 16,
|
||||
.max_data_write = 8,
|
||||
.command = realtek_mst_i2c_spi_send_command,
|
||||
@ -513,9 +513,7 @@ int realtek_mst_i2c_spi_init(void)
|
||||
data->fd = fd;
|
||||
data->reset = reset;
|
||||
ret |= register_shutdown(realtek_mst_i2c_spi_shutdown, data);
|
||||
|
||||
spi_master_i2c_realtek_mst.data = data;
|
||||
ret |= register_spi_master(&spi_master_i2c_realtek_mst, NULL);
|
||||
ret |= register_spi_master(&spi_master_i2c_realtek_mst, data);
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user