From: "Chai, Chong Yi" <chong.yi.c...@intel.com> These patches are to enable SPI features in Baytrail. The patches are targeted to merge into Yocto-kernel-cache on branch yocto-3.14.
1/10 [ Author: Jingoo Han Email: jg1....@samsung.com Date: Tue, 29 Apr 2014 17:19:38 +0900 Subject: [PATCH 019/164] spi: pxa2xx: remove unnecessary OOM messages The site-specific OOM messages are unnecessary, because they duplicate the MM subsystem generic OOM message. Signed-off-by: Jingoo Han <jg1....@samsung.com> Signed-off-by: Mark Brown <broo...@linaro.org> (cherry picked from commit 9deae4592b66c0b2a7832fefa192e7a506ce047e) Signed-off-by: Maurice Petallo <mauricex.r.peta...@intel.com> ] 2/10 [ Author: Mika Westerberg Email: mika.westerb...@linux.intel.com Date: Thu, 8 May 2014 17:30:31 +0300 Subject: [PATCH 020/164] spi/pxa2xx: Prevent DMA from transferring too many bytes In case we are doing DMA transfer and the size of the buffer is not multiple of 4 bytes the driver truncates that to 4-byte boundary and tries to handle remaining bytes using PIO. Or that is what it tried to do. What actually happens is that it calls ALIGN() to the buffer size which aligns it to the next 4-byte boundary (doesn't truncate). Doing this results 1-3 bytes extra to be transferred. Furthermore we handle remaining bytes using PIO which results one extra byte to be transferred. In worst case the driver transfers 4 extra bytes. While investigating this it turned out that the DMA hardware doesn't even have such limitation so we can solve this by dropping the code that tries to handle unaligned bytes. Reported-by: Chiau Ee Chew <chiau.ee.c...@intel.com> Reported-by: Hock Leong Kweh <hock.leong.k...@intel.com> Signed-off-by: Mika Westerberg <mika.westerb...@linux.intel.com> Signed-off-by: Mark Brown <broo...@linaro.org> (cherry picked from commit 111e0a9dc71ed75baa5e739289b9bdb06fda13be) Signed-off-by: Maurice Petallo <mauricex.r.peta...@intel.com> ] 3/10 [ Author: Antonio Ospite Email: a...@ao2.it Date: Fri, 30 May 2014 18:18:09 +0200 Subject: [PATCH 021/164] spi/pxa2xx: fix runtime PM enabling order In commit 7dd62787334ac6e0e2a0ef3f20bb1936ac431b04 (spi/pxa2xx: Convert to core runtime PM) master->auto_runtime_pm was set to true. In this case pm_runtime_enable() must be called *before* spi_register_master(), otherwise the kernel hangs with this error message: spi_master spi0: Failed to power device: -13 A similar fix, but for spi/hspi, was applied in 268d76430d1b68c340687357ffd18b4b12d02269. Signed-off-by: Antonio Ospite <a...@ao2.it> Signed-off-by: Mark Brown <broo...@linaro.org> (cherry picked from commit 836d1a22db9ee0a466301465e873bc94da86cb15) Signed-off-by: Maurice Petallo <mauricex.r.peta...@intel.com> ] 4/10 [ Author: "Chew, Chiau Ee" Email: chiau.ee.c...@intel.com Date: Fri, 6 Jun 2014 01:45:09 +0800 Subject: [PATCH 022/164] spi/pxa2xx: change default supported DMA burst size to 1 This is to fix the SPI DMA transfer failure for speed less than 1M. If using current DMA burst size setting (16), the Rx data bytes are invalid due to each data byte is multiplied according to the burst size setting. Let's said supposedly we shall receive the following 18 bytes of data: 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 Instead, the data bytes received consist of "16 bytes of '01' + 2 bytes of '02'" : 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 02 02 Signed-off-by: Chew, Chiau Ee <chiau.ee.c...@intel.com> Acked-by: Mika Westerberg <mika.westerb...@linux.intel.com> Signed-off-by: Mark Brown <broo...@linaro.org> (cherry picked from commit 01d7aafb3fbaafe2403780ef9ed497b3289ab1b9) Signed-off-by: Maurice Petallo <mauricex.r.peta...@intel.com> ] 5/10 [ Author: "Chew, Chiau Ee" Email: chiau.ee.c...@intel.com Date: Fri, 13 Jun 2014 23:57:25 +0800 Subject: [PATCH 023/164] spi/pxa2xx: fix incorrect SW mode chipselect setting for BayTrail LPSS SPI It was observed that after module removal followed by insertion, the SW mode chipselect is not properly set. Thus causing transfer failure due to incorrect CS toggling. Signed-off-by: Chew, Chiau Ee <chiau.ee.c...@intel.com> Acked-by: Mika Westerberg <mika.westerb...@linux.intel.com> Signed-off-by: Mark Brown <broo...@linaro.org> (cherry picked from commit e61f487fd596ce570e87ccfdc0a7fc9fa87aced9) Signed-off-by: Maurice Petallo <mauricex.r.peta...@intel.com> ] 6/10 [ Author: Mika Westerberg Email: mika.westerb...@linux.intel.com Date: Tue, 19 Aug 2014 20:29:19 +0300 Subject: [PATCH 087/164] spi/pxa2xx: Don't use slave_id of dma_slave_config That field has been deprecated in favour of getting the necessary information from ACPI/DT. However, we still need to deal systems that are PCI only (no ACPI to back up). In order to support such systems, we allow the DMA filter function and its corresponding parameter via pxa2xx_spi_master platform data. Then when the pxa2xx_spi_dma_setup() doesn't find the channel via ACPI, it falls back to use the given filter function. Suggested-by: Arnd Bergmann <a...@arndb.de> Signed-off-by: Mika Westerberg <mika.westerb...@linux.intel.com> Signed-off-by: Andy Shevchenko <andriy.shevche...@linux.intel.com> Acked-by: Mark Brown <broo...@linaro.org> Signed-off-by: Vinod Koul <vinod.k...@intel.com> (cherry picked from commit b729bf34535ed413667b397a2f59cfa81266facf) Signed-off-by: Wan Ahmad Zainie <wan.ahmad.zainie.wan.moha...@intel.com> ] 7/10 [ Author: Wan Ahmad Zainie Email: wan.ahmad.zainie.wan.moha...@intel.com Date: Fri, 24 Jul 2015 11:39:17 +0800 Subject: [PATCH 141/164] spi/pxa2xx: auto switch between PIO and DMA with configurable threshold size This commit introduces a mode where spidev driver can enable/disable an automatic switching for data transfer to be performed in PIO mode or DMA mode upon reaching a configurable data transfer threshold size. If the data transfer size larger than the threshold size and less than the value of MAX_DMA_LEN, the transfer is performed in DMA mode. Signed-off-by: Wan Ahmad Zainie <wan.ahmad.zainie.wan.moha...@intel.com> ] 8/10 [ Author: Wan Ahmad Zainie Email: wan.ahmad.zainie.wan.moha...@intel.com Date: Thu, 6 Aug 2015 14:08:18 +0800 Subject: [PATCH 142/164] spi: modify spidev_test to test automatic PIO/DMA switching This commit adds two options to the existing spidev_test application, -P --auto-pio to enable automatic PIO/DMA switching mode, and -T --thresh <value> to set the threshold value to perform the switching between PIO and DMA. Signed-off-by: Wan Ahmad Zainie <wan.ahmad.zainie.wan.moha...@intel.com> ] 9/10 [ Author: Wan Ahmad Zainie Email: wan.ahmad.zainie.wan.moha...@intel.com Date: Thu, 6 Aug 2015 16:40:20 +0800 Subject: [PATCH 143/164] spi/pxa2xx: Add new ioctl for configuring FIFO trigger level in runtime This commit is to enable user space application to configure the the FIFO trigger level for Rx and Tx. Signed-off-by: Wan Ahmad Zainie <wan.ahmad.zainie.wan.moha...@intel.com> ] 10/10 [ Author: Wan Ahmad Zainie Email: wan.ahmad.zainie.wan.moha...@intel.com Date: Thu, 6 Aug 2015 17:05:30 +0800 Subject: [PATCH 144/164] spi: modify spidev_test to test modifying FIFO trigger level during runtime This commit adds three options to the existing spidev_test application, -r --rx-thr Rx FIFO trigger level -t --txlo-thr Tx (low) FIFO trigger level -h --txhi-thr Tx (high) FIFO trigger level to set the new FIFO trigger level value. If no value provided, the current FIFO trigger value will be used. Use with care as there is not checking on the validity of the input. Signed-off-by: Wan Ahmad Zainie <wan.ahmad.zainie.wan.moha...@intel.com> ] Chai, Chong Yi (1): spi: pxa2xx: remove unnecessary OOM message features/soc/baytrail/baytrail.scc | 10 + ...spidev_test-to-test-automatic-PIO-DMA-swi.patch | 93 ++++++++ ...spidev_test-to-test-modifying-FIFO-trigge.patch | 134 ++++++++++++ ...Add-new-ioctl-for-configuring-FIFO-trigge.patch | 112 ++++++++++ ...xx-Don-t-use-slave_id-of-dma_slave_config.patch | 240 +++++++++++++++++++++ ...Prevent-DMA-from-transferring-too-many-by.patch | 70 ++++++ ...auto-switch-between-PIO-and-DMA-with-conf.patch | 106 +++++++++ ...change-default-supported-DMA-burst-size-t.patch | 43 ++++ ...fix-incorrect-SW-mode-chipselect-setting-.patch | 51 +++++ .../spi-pxa2xx-fix-runtime-PM-enabling-order.patch | 57 +++++ ...pi-pxa2xx-remove-unnecessary-OOM-messages.patch | 50 +++++ 11 files changed, 966 insertions(+) create mode 100644 features/soc/baytrail/spi-modify-spidev_test-to-test-automatic-PIO-DMA-swi.patch create mode 100644 features/soc/baytrail/spi-modify-spidev_test-to-test-modifying-FIFO-trigge.patch create mode 100644 features/soc/baytrail/spi-pxa2xx-Add-new-ioctl-for-configuring-FIFO-trigge.patch create mode 100644 features/soc/baytrail/spi-pxa2xx-Don-t-use-slave_id-of-dma_slave_config.patch create mode 100644 features/soc/baytrail/spi-pxa2xx-Prevent-DMA-from-transferring-too-many-by.patch create mode 100644 features/soc/baytrail/spi-pxa2xx-auto-switch-between-PIO-and-DMA-with-conf.patch create mode 100644 features/soc/baytrail/spi-pxa2xx-change-default-supported-DMA-burst-size-t.patch create mode 100644 features/soc/baytrail/spi-pxa2xx-fix-incorrect-SW-mode-chipselect-setting-.patch create mode 100644 features/soc/baytrail/spi-pxa2xx-fix-runtime-PM-enabling-order.patch create mode 100644 features/soc/baytrail/spi-pxa2xx-remove-unnecessary-OOM-messages.patch -- 1.9.1 -- _______________________________________________ linux-yocto mailing list linux-yocto@yoctoproject.org https://lists.yoctoproject.org/listinfo/linux-yocto