public inbox for u-boot@lists.denx.de
 help / color / mirror / Atom feed
From: Michal Simek <michal.simek@xilinx.com>
To: "Jorge Ramirez-Ortiz, Foundries" <jorge@foundries.io>,
	Michal Simek <michal.simek@xilinx.com>
Cc: <u-boot@lists.denx.de>
Subject: Re: Zynq UltraScale MPSoC, DMA driver
Date: Wed, 9 Jun 2021 11:55:22 +0200	[thread overview]
Message-ID: <53b670be-55db-905a-e873-7149f72ca846@xilinx.com> (raw)
In-Reply-To: <20210608123002.GA25130@trex>



On 6/8/21 2:30 PM, Jorge Ramirez-Ortiz, Foundries wrote:
> On 08/06/21, Michal Simek wrote:
>> Hi,
>>
>> On 6/7/21 8:41 PM, Jorge Ramirez-Ortiz, Foundries wrote:
>>> On 07/06/21, Jorge Ramirez-Ortiz, Foundries wrote:
>>>> hi Michal
>>>>
>>>> um, when we exchanged emails about enabling ECC support for MPSoC, I
>>>> left with the understanding that there already was a DMA driver
>>>> available in u-boot that I could use to initialize the memory.
>>>>
>>>> do you have something in the works or will I have to write such a
>>>> driver? compatible would be 'xlnx,zynqmp-dma-1.0'
>>>
>>> alternatively, would it be acceptable - upstream - If I just init ECC
>>> as done by FSBL (ie, without a proper DMA driver, just accessing the
>>> controller)?
>>
>> There are 2 things here.
>> The first thing that would be the best to do it proper framework which
>> is likely dma where dma_memset should be likely added.
>> The second that this code should land in SPL which can't be big that's
>> why this feature should be very small.
> 
> the way I am doing it ATM is just a verbatim of XFsbl_EccInit (grabs a
> channel and inits all memory to DEADBEEF). About 100 LOC total.
> 
> I belive the FSBL copyright notice allows for that (below excerpt).
> 
> [..] Permission is hereby granted, free of charge, to any person obtaining a copy
>  of this software and associated documentation files (the "Software"), to deal
>  in the Software without restriction, including without limitation the rights
>  to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
>  copies of the Software, and to permit persons to whom the Software is
>  furnished to do so,  [..]
> 
> but yes this just works as expected.

You should talk to lawyer about it and I can't give you any
recommendation about it.

> 
> a bit trickier is where to init from - for the particular product
> I am working on I can hardcode the addresses and sizes and init right
> after board_init_f in spl.c...havent had the time to think about
> something portable yet - if you have a suggestion I could send both
> patches (one for the spl_ecc_init(addr, len) function and another one
> calling it)

SPL dtb doesn't have memory node which is a surprise. But I expect ECC
is working on the memory which is written first. I am OK with adding
memory base/size for ECC to Kconfig till someone has time to take a look
at memory controller registers to find out which one has size in it that
can be read and use.

Thanks,
Michal

      parent reply	other threads:[~2021-06-09  9:55 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-06-07 16:27 Zynq UltraScale MPSoC, DMA driver Jorge Ramirez-Ortiz, Foundries
2021-06-07 18:41 ` Jorge Ramirez-Ortiz, Foundries
2021-06-08 11:04   ` Michal Simek
2021-06-08 12:30     ` Jorge Ramirez-Ortiz, Foundries
2021-06-08 12:33       ` Jorge Ramirez-Ortiz, Foundries
2021-06-09  9:55       ` Michal Simek [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=53b670be-55db-905a-e873-7149f72ca846@xilinx.com \
    --to=michal.simek@xilinx.com \
    --cc=jorge@foundries.io \
    --cc=u-boot@lists.denx.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox