lkml.org 
[lkml]   [2023]   [Mar]   [31]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH v2 5/7] soc: microchip: mpfs: add auto-update subdev to system controller
    Date
    The PolarFire SoC's system controller offers the ability to re-program
    the FPGA from a user application via two, related, mechanisms.
    In-Application Programming (IAP) is not ideal for use in Linux, as it
    will immediately take down the system when requested. Auto Update is
    preferred, as it will only take affect at device power up*, allowing the
    OS (and potential applications in AMP) to be shut down gracefully.

    * Auto Update occurs at device initialisation, which can also be
    triggered by device reset - possible with the v2023.02 version of the
    Hart Software Services (HSS) and reference design.

    Signed-off-by: Conor Dooley <conor.dooley@microchip.com>
    ---
    drivers/soc/microchip/mpfs-sys-controller.c | 9 +++++++--
    1 file changed, 7 insertions(+), 2 deletions(-)

    diff --git a/drivers/soc/microchip/mpfs-sys-controller.c b/drivers/soc/microchip/mpfs-sys-controller.c
    index 1b7680e05cc0..0b94fdcc805d 100644
    --- a/drivers/soc/microchip/mpfs-sys-controller.c
    +++ b/drivers/soc/microchip/mpfs-sys-controller.c
    @@ -118,7 +118,11 @@ static struct platform_device subdevs[] = {
    {
    .name = "mpfs-generic-service",
    .id = -1,
    - }
    + },
    + {
    + .name = "mpfs-auto-update",
    + .id = -1,
    + },
    };

    static int mpfs_sys_controller_probe(struct platform_device *pdev)
    @@ -160,7 +164,6 @@ static int mpfs_sys_controller_probe(struct platform_device *pdev)

    platform_set_drvdata(pdev, sys_controller);

    - dev_info(&pdev->dev, "Registered MPFS system controller\n");

    for (i = 0; i < ARRAY_SIZE(subdevs); i++) {
    subdevs[i].dev.parent = dev;
    @@ -168,6 +171,8 @@ static int mpfs_sys_controller_probe(struct platform_device *pdev)
    dev_warn(dev, "Error registering sub device %s\n", subdevs[i].name);
    }

    + dev_info(&pdev->dev, "Registered MPFS system controller\n");
    +
    return 0;
    }

    --
    2.39.2
    \
     
     \ /
      Last update: 2023-03-31 09:21    [W:3.563 / U:0.048 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site