mirror of
https://github.com/torvalds/linux.git
synced 2026-11-07 06:17:02 +01:00
mtd: spi-nor: move spi_nor_post_bfpt_fixups() into sfdp
Move spi_nor_post_bfpt_fixups() into the sfdp module because it's really only needed there. While at it, add some documentation. Reviewed-by: Miquel Raynal <miquel.raynal@bootlin.com> Signed-off-by: Michael Walle <mwalle@kernel.org>
This commit is contained in:
parent
0ede46b4f5
commit
69d9d7dabb
|
|
@ -2581,26 +2581,6 @@ void spi_nor_init_uniform_erase_map(struct spi_nor_erase_map *map,
|
|||
map->n_regions = 1;
|
||||
}
|
||||
|
||||
int spi_nor_post_bfpt_fixups(struct spi_nor *nor,
|
||||
const struct sfdp_parameter_header *bfpt_header,
|
||||
const struct sfdp_bfpt *bfpt)
|
||||
{
|
||||
int ret;
|
||||
|
||||
if (nor->manufacturer && nor->manufacturer->fixups &&
|
||||
nor->manufacturer->fixups->post_bfpt) {
|
||||
ret = nor->manufacturer->fixups->post_bfpt(nor, bfpt_header,
|
||||
bfpt);
|
||||
if (ret)
|
||||
return ret;
|
||||
}
|
||||
|
||||
if (nor->info->fixups && nor->info->fixups->post_bfpt)
|
||||
return nor->info->fixups->post_bfpt(nor, bfpt_header, bfpt);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int spi_nor_select_read(struct spi_nor *nor,
|
||||
u32 shared_hwcaps)
|
||||
{
|
||||
|
|
|
|||
|
|
@ -684,10 +684,6 @@ void spi_nor_mask_erase_type(struct spi_nor_erase_type *erase);
|
|||
void spi_nor_init_uniform_erase_map(struct spi_nor_erase_map *map,
|
||||
u8 erase_mask, u64 flash_size);
|
||||
|
||||
int spi_nor_post_bfpt_fixups(struct spi_nor *nor,
|
||||
const struct sfdp_parameter_header *bfpt_header,
|
||||
const struct sfdp_bfpt *bfpt);
|
||||
|
||||
void spi_nor_init_default_locking_ops(struct spi_nor *nor);
|
||||
bool spi_nor_has_default_locking_ops(struct spi_nor *nor);
|
||||
void spi_nor_try_unlock_all(struct spi_nor *nor);
|
||||
|
|
|
|||
|
|
@ -401,6 +401,37 @@ static void spi_nor_regions_sort_erase_types(struct spi_nor_erase_map *map)
|
|||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* spi_nor_post_bfpt_fixups() - Updates the flash's parameters and settings
|
||||
* after BFPT has been parsed. Called only for flashes that define JESD216 SFDP
|
||||
* tables.
|
||||
* @nor: pointer to a 'struct spi_nor'
|
||||
* @bfpt_header: pointer to the 'struct sfdp_parameter_header' describing
|
||||
* the Basic Flash Parameter Table length and version
|
||||
*
|
||||
* Used to tweak various flash parameters when information provided by the SFDP
|
||||
* tables are wrong.
|
||||
*/
|
||||
static int spi_nor_post_bfpt_fixups(struct spi_nor *nor,
|
||||
const struct sfdp_parameter_header *bfpt_header,
|
||||
const struct sfdp_bfpt *bfpt)
|
||||
{
|
||||
int ret;
|
||||
|
||||
if (nor->manufacturer && nor->manufacturer->fixups &&
|
||||
nor->manufacturer->fixups->post_bfpt) {
|
||||
ret = nor->manufacturer->fixups->post_bfpt(nor, bfpt_header,
|
||||
bfpt);
|
||||
if (ret)
|
||||
return ret;
|
||||
}
|
||||
|
||||
if (nor->info->fixups && nor->info->fixups->post_bfpt)
|
||||
return nor->info->fixups->post_bfpt(nor, bfpt_header, bfpt);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
/**
|
||||
* spi_nor_parse_bfpt() - read and parse the Basic Flash Parameter Table.
|
||||
* @nor: pointer to a 'struct spi_nor'
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user