summaryrefslogtreecommitdiffstats
path: root/src/soc/qualcomm/common
diff options
context:
space:
mode:
authorRavi Kumar Bokka <rbokka@codeaurora.org>2021-07-17 00:02:23 +0530
committerShelley Chen <shchen@google.com>2021-09-21 19:59:48 +0000
commit6c3ad1341f3532e0ac4c20d6e7a049a53ee1c724 (patch)
tree679fc53e730750b06870a097e6f2461e8712a16e /src/soc/qualcomm/common
parent4744c6ec1a161fb214200eef4136fa2f5a392fa9 (diff)
downloadcoreboot-6c3ad1341f3532e0ac4c20d6e7a049a53ee1c724.tar.gz
coreboot-6c3ad1341f3532e0ac4c20d6e7a049a53ee1c724.tar.bz2
coreboot-6c3ad1341f3532e0ac4c20d6e7a049a53ee1c724.zip
soc/qualcomm/common/spi: Configure SPI QUP driver
This implements the SPI driver for the QUP core. BUG=b:182963902 TEST=Validated on qualcomm sc7180 and sc7280 development board. Signed-off-by: Rajesh Patil <rajpat@codeaurora.org> Change-Id: I7e5d3ad07f68255727958d53e6919944d3038260 Reviewed-on: https://review.coreboot.org/c/coreboot/+/56399 Reviewed-by: Shelley Chen <shchen@google.com> Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Diffstat (limited to 'src/soc/qualcomm/common')
-rw-r--r--src/soc/qualcomm/common/spi.c13
1 files changed, 13 insertions, 0 deletions
diff --git a/src/soc/qualcomm/common/spi.c b/src/soc/qualcomm/common/spi.c
index b4db3e589c51..aee124dd59ad 100644
--- a/src/soc/qualcomm/common/spi.c
+++ b/src/soc/qualcomm/common/spi.c
@@ -3,6 +3,7 @@
#include <spi-generic.h>
#include <spi_flash.h>
#include <soc/qspi_common.h>
+#include <soc/qupv3_spi_common.h>
static const struct spi_ctrlr qspi_ctrlr = {
.claim_bus = qspi_claim_bus,
@@ -12,12 +13,24 @@ static const struct spi_ctrlr qspi_ctrlr = {
.max_xfer_size = QSPI_MAX_PACKET_COUNT,
};
+const struct spi_ctrlr spi_qup_ctrlr = {
+ .claim_bus = qup_spi_claim_bus,
+ .release_bus = qup_spi_release_bus,
+ .xfer = qup_spi_xfer,
+ .max_xfer_size = 65535,
+};
+
const struct spi_ctrlr_buses spi_ctrlr_bus_map[] = {
{
.ctrlr = &qspi_ctrlr,
.bus_start = CONFIG_BOOT_DEVICE_SPI_FLASH_BUS,
.bus_end = CONFIG_BOOT_DEVICE_SPI_FLASH_BUS,
},
+ {
+ .ctrlr = &spi_qup_ctrlr,
+ .bus_start = 0,
+ .bus_end = 15,
+ },
};
const size_t spi_ctrlr_bus_map_count = ARRAY_SIZE(spi_ctrlr_bus_map);