diff options
| -rw-r--r-- | drivers/misc/fastrpc.c | 7 | ||||
| -rw-r--r-- | drivers/misc/habanalabs/goya/goya.c | 9 | ||||
| -rw-r--r-- | drivers/power/supply/goldfish_battery.c | 2 |
3 files changed, 11 insertions, 7 deletions
diff --git a/drivers/misc/fastrpc.c b/drivers/misc/fastrpc.c index 39f832d27288..36d0d5c9cfba 100644 --- a/drivers/misc/fastrpc.c +++ b/drivers/misc/fastrpc.c | |||
| @@ -1184,6 +1184,7 @@ static int fastrpc_cb_probe(struct platform_device *pdev) | |||
| 1184 | struct fastrpc_session_ctx *sess; | 1184 | struct fastrpc_session_ctx *sess; |
| 1185 | struct device *dev = &pdev->dev; | 1185 | struct device *dev = &pdev->dev; |
| 1186 | int i, sessions = 0; | 1186 | int i, sessions = 0; |
| 1187 | int rc; | ||
| 1187 | 1188 | ||
| 1188 | cctx = dev_get_drvdata(dev->parent); | 1189 | cctx = dev_get_drvdata(dev->parent); |
| 1189 | if (!cctx) | 1190 | if (!cctx) |
| @@ -1213,7 +1214,11 @@ static int fastrpc_cb_probe(struct platform_device *pdev) | |||
| 1213 | } | 1214 | } |
| 1214 | cctx->sesscount++; | 1215 | cctx->sesscount++; |
| 1215 | spin_unlock(&cctx->lock); | 1216 | spin_unlock(&cctx->lock); |
| 1216 | dma_set_mask(dev, DMA_BIT_MASK(32)); | 1217 | rc = dma_set_mask(dev, DMA_BIT_MASK(32)); |
| 1218 | if (rc) { | ||
| 1219 | dev_err(dev, "32-bit DMA enable failed\n"); | ||
| 1220 | return rc; | ||
| 1221 | } | ||
| 1217 | 1222 | ||
| 1218 | return 0; | 1223 | return 0; |
| 1219 | } | 1224 | } |
diff --git a/drivers/misc/habanalabs/goya/goya.c b/drivers/misc/habanalabs/goya/goya.c index ea979ebd62fb..3c509e19d69d 100644 --- a/drivers/misc/habanalabs/goya/goya.c +++ b/drivers/misc/habanalabs/goya/goya.c | |||
| @@ -1688,12 +1688,11 @@ static void goya_init_golden_registers(struct hl_device *hdev) | |||
| 1688 | 1688 | ||
| 1689 | /* | 1689 | /* |
| 1690 | * Workaround for H2 #HW-23 bug | 1690 | * Workaround for H2 #HW-23 bug |
| 1691 | * Set DMA max outstanding read requests to 240 on DMA CH 1. Set it | 1691 | * Set DMA max outstanding read requests to 240 on DMA CH 1. |
| 1692 | * to 16 on KMD DMA | 1692 | * This limitation is still large enough to not affect Gen4 bandwidth. |
| 1693 | * We need to limit only these DMAs because the user can only read | 1693 | * We need to only limit that DMA channel because the user can only read |
| 1694 | * from Host using DMA CH 1 | 1694 | * from Host using DMA CH 1 |
| 1695 | */ | 1695 | */ |
| 1696 | WREG32(mmDMA_CH_0_CFG0, 0x0fff0010); | ||
| 1697 | WREG32(mmDMA_CH_1_CFG0, 0x0fff00F0); | 1696 | WREG32(mmDMA_CH_1_CFG0, 0x0fff00F0); |
| 1698 | 1697 | ||
| 1699 | goya->hw_cap_initialized |= HW_CAP_GOLDEN; | 1698 | goya->hw_cap_initialized |= HW_CAP_GOLDEN; |
| @@ -3693,7 +3692,7 @@ static int goya_validate_dma_pkt_mmu(struct hl_device *hdev, | |||
| 3693 | * WA for HW-23. | 3692 | * WA for HW-23. |
| 3694 | * We can't allow user to read from Host using QMANs other than 1. | 3693 | * We can't allow user to read from Host using QMANs other than 1. |
| 3695 | */ | 3694 | */ |
| 3696 | if (parser->hw_queue_id > GOYA_QUEUE_ID_DMA_1 && | 3695 | if (parser->hw_queue_id != GOYA_QUEUE_ID_DMA_1 && |
| 3697 | hl_mem_area_inside_range(le64_to_cpu(user_dma_pkt->src_addr), | 3696 | hl_mem_area_inside_range(le64_to_cpu(user_dma_pkt->src_addr), |
| 3698 | le32_to_cpu(user_dma_pkt->tsize), | 3697 | le32_to_cpu(user_dma_pkt->tsize), |
| 3699 | hdev->asic_prop.va_space_host_start_address, | 3698 | hdev->asic_prop.va_space_host_start_address, |
diff --git a/drivers/power/supply/goldfish_battery.c b/drivers/power/supply/goldfish_battery.c index ad969d9fc981..c2644a9fe80f 100644 --- a/drivers/power/supply/goldfish_battery.c +++ b/drivers/power/supply/goldfish_battery.c | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | // SPDX-License-Identifier: GPL | 1 | // SPDX-License-Identifier: GPL-2.0 |
| 2 | /* | 2 | /* |
| 3 | * Power supply driver for the goldfish emulator | 3 | * Power supply driver for the goldfish emulator |
| 4 | * | 4 | * |
