Skip to content

Commit

Permalink
spi: intel: Add default partition and name to the second chip
Browse files Browse the repository at this point in the history
This should make it easier to identify the second chip and also allows
using "mtdparts=" and the like with this chip too.

Signed-off-by: Mika Westerberg <mika.westerberg@linux.intel.com>
Link: https://lore.kernel.org/r/20240201121638.207632-1-mika.westerberg@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
  • Loading branch information
Mika Westerberg authored and Mark Brown committed Feb 5, 2024
1 parent 88c2b56 commit e58db3b
Showing 1 changed file with 18 additions and 1 deletion.
19 changes: 18 additions & 1 deletion drivers/spi/spi-intel.c
Original file line number Diff line number Diff line change
Expand Up @@ -1346,6 +1346,7 @@ static int intel_spi_read_desc(struct intel_spi *ispi)
static int intel_spi_populate_chip(struct intel_spi *ispi)
{
struct flash_platform_data *pdata;
struct mtd_partition *parts;
struct spi_board_info chip;
int ret;

Expand Down Expand Up @@ -1376,7 +1377,23 @@ static int intel_spi_populate_chip(struct intel_spi *ispi)
if (ispi->host->num_chipselect < 2)
return 0;

chip.platform_data = NULL;
pdata = devm_kzalloc(ispi->dev, sizeof(*pdata), GFP_KERNEL);
if (!pdata)
return -ENOMEM;

pdata->name = devm_kasprintf(ispi->dev, GFP_KERNEL, "%s-chip1",
dev_name(ispi->dev));
pdata->nr_parts = 1;
parts = devm_kcalloc(ispi->dev, pdata->nr_parts, sizeof(*parts),
GFP_KERNEL);
if (!parts)
return -ENOMEM;

parts[0].size = MTDPART_SIZ_FULL;
parts[0].name = "BIOS1";
pdata->parts = parts;

chip.platform_data = pdata;
chip.chip_select = 1;

if (!spi_new_device(ispi->host, &chip))
Expand Down

0 comments on commit e58db3b

Please sign in to comment.