Commit b60500e9 authored by Linus Torvalds's avatar Linus Torvalds
Browse files
Pull spi fixes from Mark Brown:
 "A few small driver specific fixes and device ID updates for SPI.

  The Apple change flags the driver as being compatible with the core's
  GPIO chip select support, fixing support for some systems"

* tag 'spi-fix-v6.13-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/spi:
  spi: omap2-mcspi: Fix the IS_ERR() bug for devm_clk_get_optional_enabled()
  spi: intel: Add Panther Lake SPI controller support
  spi: apple: Set use_gpio_descriptors to true
  spi: mpc52xx: Add cancel_work_sync before module remove
parents 35b7b337 4c6ac544
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -493,6 +493,7 @@ static int apple_spi_probe(struct platform_device *pdev)
	ctlr->prepare_message = apple_spi_prepare_message;
	ctlr->set_cs = apple_spi_set_cs;
	ctlr->transfer_one = apple_spi_transfer_one;
	ctlr->use_gpio_descriptors = true;
	ctlr->auto_runtime_pm = true;

	pm_runtime_set_active(&pdev->dev);
+2 −0
Original line number Diff line number Diff line
@@ -86,6 +86,8 @@ static const struct pci_device_id intel_spi_pci_ids[] = {
	{ PCI_VDEVICE(INTEL, 0xa324), (unsigned long)&cnl_info },
	{ PCI_VDEVICE(INTEL, 0xa3a4), (unsigned long)&cnl_info },
	{ PCI_VDEVICE(INTEL, 0xa823), (unsigned long)&cnl_info },
	{ PCI_VDEVICE(INTEL, 0xe323), (unsigned long)&cnl_info },
	{ PCI_VDEVICE(INTEL, 0xe423), (unsigned long)&cnl_info },
	{ },
};
MODULE_DEVICE_TABLE(pci, intel_spi_pci_ids);
+1 −0
Original line number Diff line number Diff line
@@ -520,6 +520,7 @@ static void mpc52xx_spi_remove(struct platform_device *op)
	struct mpc52xx_spi *ms = spi_controller_get_devdata(host);
	int i;

	cancel_work_sync(&ms->work);
	free_irq(ms->irq0, ms);
	free_irq(ms->irq1, ms);

+3 −3
Original line number Diff line number Diff line
@@ -1561,10 +1561,10 @@ static int omap2_mcspi_probe(struct platform_device *pdev)
	}

	mcspi->ref_clk = devm_clk_get_optional_enabled(&pdev->dev, NULL);
	if (mcspi->ref_clk)
		mcspi->ref_clk_hz = clk_get_rate(mcspi->ref_clk);
	else
	if (IS_ERR(mcspi->ref_clk))
		mcspi->ref_clk_hz = OMAP2_MCSPI_MAX_FREQ;
	else
		mcspi->ref_clk_hz = clk_get_rate(mcspi->ref_clk);
	ctlr->max_speed_hz = mcspi->ref_clk_hz;
	ctlr->min_speed_hz = mcspi->ref_clk_hz >> 15;