stm32_rproc.c (41d91ec3de8a90167159275bde7ed65768723556) stm32_rproc.c (e29ff72b779426c7fe462ead93c7ad77fe562935)
1// SPDX-License-Identifier: GPL-2.0
2/*
3 * Copyright (C) STMicroelectronics 2018 - All Rights Reserved
4 * Authors: Ludovic Barre <ludovic.barre@st.com> for STMicroelectronics.
5 * Fabien Dessenne <fabien.dessenne@st.com> for STMicroelectronics.
6 */
7
8#include <linux/arm-smccc.h>

--- 491 unchanged lines hidden (view full) ---

500
501static struct rproc_ops st_rproc_ops = {
502 .start = stm32_rproc_start,
503 .stop = stm32_rproc_stop,
504 .kick = stm32_rproc_kick,
505 .load = rproc_elf_load_segments,
506 .parse_fw = stm32_rproc_parse_fw,
507 .find_loaded_rsc_table = rproc_elf_find_loaded_rsc_table,
1// SPDX-License-Identifier: GPL-2.0
2/*
3 * Copyright (C) STMicroelectronics 2018 - All Rights Reserved
4 * Authors: Ludovic Barre <ludovic.barre@st.com> for STMicroelectronics.
5 * Fabien Dessenne <fabien.dessenne@st.com> for STMicroelectronics.
6 */
7
8#include <linux/arm-smccc.h>

--- 491 unchanged lines hidden (view full) ---

500
501static struct rproc_ops st_rproc_ops = {
502 .start = stm32_rproc_start,
503 .stop = stm32_rproc_stop,
504 .kick = stm32_rproc_kick,
505 .load = rproc_elf_load_segments,
506 .parse_fw = stm32_rproc_parse_fw,
507 .find_loaded_rsc_table = rproc_elf_find_loaded_rsc_table,
508 .sanity_check = rproc_elf32_sanity_check,
508 .sanity_check = rproc_elf_sanity_check,
509 .get_boot_addr = rproc_elf_get_boot_addr,
510};
511
512static const struct of_device_id stm32_rproc_match[] = {
513 { .compatible = "st,stm32mp1-m4" },
514 {},
515};
516MODULE_DEVICE_TABLE(of, stm32_rproc_match);

--- 103 unchanged lines hidden (view full) ---

620 ret = dma_coerce_mask_and_coherent(dev, DMA_BIT_MASK(32));
621 if (ret)
622 return ret;
623
624 rproc = rproc_alloc(dev, np->name, &st_rproc_ops, NULL, sizeof(*ddata));
625 if (!rproc)
626 return -ENOMEM;
627
509 .get_boot_addr = rproc_elf_get_boot_addr,
510};
511
512static const struct of_device_id stm32_rproc_match[] = {
513 { .compatible = "st,stm32mp1-m4" },
514 {},
515};
516MODULE_DEVICE_TABLE(of, stm32_rproc_match);

--- 103 unchanged lines hidden (view full) ---

620 ret = dma_coerce_mask_and_coherent(dev, DMA_BIT_MASK(32));
621 if (ret)
622 return ret;
623
624 rproc = rproc_alloc(dev, np->name, &st_rproc_ops, NULL, sizeof(*ddata));
625 if (!rproc)
626 return -ENOMEM;
627
628 rproc_coredump_set_elf_info(rproc, ELFCLASS32, EM_NONE);
628 rproc->has_iommu = false;
629 ddata = rproc->priv;
630 ddata->workqueue = create_workqueue(dev_name(dev));
631 if (!ddata->workqueue) {
632 dev_err(dev, "cannot create workqueue\n");
633 ret = -ENOMEM;
634 goto free_rproc;
635 }

--- 93 unchanged lines hidden ---
629 rproc->has_iommu = false;
630 ddata = rproc->priv;
631 ddata->workqueue = create_workqueue(dev_name(dev));
632 if (!ddata->workqueue) {
633 dev_err(dev, "cannot create workqueue\n");
634 ret = -ENOMEM;
635 goto free_rproc;
636 }

--- 93 unchanged lines hidden ---