<feed xmlns='http://www.w3.org/2005/Atom'>
<title>u-boot.git/drivers/ram/k3-ddrss, branch v2024.01</title>
<subtitle>Unnamed repository; edit this file 'description' to name the repository.</subtitle>
<id>http://cgit.235523.xyz/u-boot.git/atom/drivers/ram/k3-ddrss?h=v2024.01</id>
<link rel='self' href='http://cgit.235523.xyz/u-boot.git/atom/drivers/ram/k3-ddrss?h=v2024.01'/>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/'/>
<updated>2023-11-10T16:01:50Z</updated>
<entry>
<title>tree-wide: Replace http:// link with https:// link for ti.com</title>
<updated>2023-11-10T16:01:50Z</updated>
<author>
<name>Nishanth Menon</name>
<email>nm@ti.com</email>
</author>
<published>2023-11-01T20:56:03Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=a94a4071d449e12c9fb5ac37d6362d22efcb27da'/>
<id>urn:sha1:a94a4071d449e12c9fb5ac37d6362d22efcb27da</id>
<content type='text'>
Replace instances of http://www.ti.com with https://www.ti.com

Signed-off-by: Nishanth Menon &lt;nm@ti.com&gt;
</content>
</entry>
<entry>
<title>treewide: use dev_read_addr_*_ptr() where appropriate</title>
<updated>2023-10-13T20:01:42Z</updated>
<author>
<name>Matthias Schiffer</name>
<email>matthias.schiffer@ew.tq-group.com</email>
</author>
<published>2023-09-27T13:33:34Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=5fecea171de3b66e9e3a199c588bf12c6b1d3084'/>
<id>urn:sha1:5fecea171de3b66e9e3a199c588bf12c6b1d3084</id>
<content type='text'>
A follow-up to commit 842fb5de424e
("drivers: use devfdt_get_addr_size_index_ptr when cast to pointer")
and commit 320a1938b6f7
("drivers: use devfdt_get_addr_index_ptr when cast to pointer").

In addition to using the *_ptr variants of these functions where the
address is cast to a pointer, this also changes devfdt_get_addr_*() to
dev_read_addr_*() in a few places. Some variable and field types are
changed from fdt_addr_t or phys_addr_t to void* where the cast was
happening later.

This patch fixes a number of compile warnings when building a 32bit
U-Boot with CONFIG_PHYS_64BIT=y. In some places, it also fixes error
handling where the return value of dev_read_addr() etc. was checked for
NULL instead of FDT_ADDR_T_NONE.

Signed-off-by: Matthias Schiffer &lt;matthias.schiffer@ew.tq-group.com&gt;
Reviewed-by: Simon Glass &lt;sjg@chromium.org&gt;
</content>
</entry>
<entry>
<title>ram: k3-ddrss: do not touch ctrl regs during training</title>
<updated>2023-07-21T19:32:12Z</updated>
<author>
<name>Bryan Brattlof</name>
<email>bb@ti.com</email>
</author>
<published>2023-07-17T22:15:26Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=af7c33c103450e06aecf8adba8cbc8c522295be1'/>
<id>urn:sha1:af7c33c103450e06aecf8adba8cbc8c522295be1</id>
<content type='text'>
During LPDDR initialization we will loop through a series of frequency
changes in order to train at the various operating frequencies. During
this training, accessing the DRAM_CLASS bitfield could happen during a
frequency change and cause the read to hang.

Store the DRAM type into the main structure to avoid multiple readings
while the independent phy is training.

Signed-off-by: Bryan Brattlof &lt;bb@ti.com&gt;
</content>
</entry>
<entry>
<title>ram: k3-ddrss: add am62a controller support</title>
<updated>2022-12-09T19:10:28Z</updated>
<author>
<name>Bryan Brattlof</name>
<email>bb@ti.com</email>
</author>
<published>2022-11-04T00:13:53Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=f54febe1b126b5ebede3d9784e07c10b9da299a1'/>
<id>urn:sha1:f54febe1b126b5ebede3d9784e07c10b9da299a1</id>
<content type='text'>
TI's am62a family of SoCs uses a new 32bit DDR controller that shares
much of the same functionality with the existing am64 and j721e
controllers.

Select this controller by default when u-boot is build for the am62a

Signed-off-by: Bryan Brattlof &lt;bb@ti.com&gt;
Reviewed-by: Tom Rini &lt;trini@konsulko.com&gt;
</content>
</entry>
<entry>
<title>ram: k3-ddrss: add auto-generated macros for am62a support</title>
<updated>2022-12-09T19:10:28Z</updated>
<author>
<name>Bryan Brattlof</name>
<email>bb@ti.com</email>
</author>
<published>2022-10-24T21:53:28Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=ee31be429ba4be734fcb7bcb037d38afc82cc052'/>
<id>urn:sha1:ee31be429ba4be734fcb7bcb037d38afc82cc052</id>
<content type='text'>
The new 32bit DDR controller for TI's am62a family of SoCs shares much
of the same functionality with the existing 16bit (am64) and 32bit
(j721e) controllers, so this patch reorganizes the existing
auto-generated macros for the 16bit and 32bit controllers to make room
for the macros for the am62a's controller

This patch consists mostly of header/macro renames and additions with a
new Kconfig option (K3_AM62A_DDRSS) allowing us to select these new
macros during compilation.

Signed-off-by: Bryan Brattlof &lt;bb@ti.com&gt;
</content>
</entry>
<entry>
<title>ram: k3-ddrss: Allow use of dt provided initial frequency</title>
<updated>2022-04-20T15:14:39Z</updated>
<author>
<name>Dave Gerlach</name>
<email>d-gerlach@ti.com</email>
</author>
<published>2022-04-08T21:46:50Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=270f7fd25b3d1e825d3364eee652c3ccc9d5aae4'/>
<id>urn:sha1:270f7fd25b3d1e825d3364eee652c3ccc9d5aae4</id>
<content type='text'>
Allow device tree to provide ti,ddr-freq0 to be used as the initial DDR
frequency that is set for lpddr4 before initialization of the
controller. Make this optional and continue to use PLL bypass frequency
as is done currently if ti,ddr-freq0 is not provided.

Signed-off-by: Dave Gerlach &lt;d-gerlach@ti.com&gt;
</content>
</entry>
<entry>
<title>ram: k3-ddrss: Fix register name and explain its usage</title>
<updated>2022-04-20T15:14:39Z</updated>
<author>
<name>Dominic Rath</name>
<email>rath@ibv-augsburg.net</email>
</author>
<published>2022-04-06T09:56:47Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=b4c80f245b7a986b23c8c487ec1c15229c85af8a'/>
<id>urn:sha1:b4c80f245b7a986b23c8c487ec1c15229c85af8a</id>
<content type='text'>
The k3-ddrss driver wants to configure the DDRSS_V2A_CTL_REG to reflect
the maximum possible SDRAM of 2 GB for AM64x (instead of the register's
default that says 8 GB, which the AM64x DDR controller wouldn't support).

The offset 0x20 was correct, but the register name DDRSS_V2A_R1_MAT_REG
was that of the next register at offset 0x24.

Signed-off-by: Dominic Rath &lt;rath@ibv-augsburg.net&gt;
</content>
</entry>
<entry>
<title>ram: k3-ddrss: Introduce ECC Functionality for full memory space</title>
<updated>2022-04-04T23:02:04Z</updated>
<author>
<name>Dave Gerlach</name>
<email>d-gerlach@ti.com</email>
</author>
<published>2022-03-17T17:03:43Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=f861ce90ca9538fefd76dbd1985f0c69f53e3b77'/>
<id>urn:sha1:f861ce90ca9538fefd76dbd1985f0c69f53e3b77</id>
<content type='text'>
Introduce ECC Functionality for full memory space as implemented in the
DDRSS. The following is done to accomplish this:

 * Introduce a memory region "ss" to allow dt to provide DDRSS region,
   which is not the same as "ctl" which is the controller region.

 * Introduce a "ti,ecc-enable" flag which allows a memorycontroller
   instance to enable ecc.

 * Introduce functionality to properly program the DDRSS registers to
   enable ECC for the full DDR memory space if enabled with above flag.

 * Expose a k3_ddrss_ddr_fdt_fixup call to allow fixup of fdt blob to
   account from DDR memory that must be reserved for ECC operation.

Signed-off-by: Dave Gerlach &lt;d-gerlach@ti.com&gt;
</content>
</entry>
<entry>
<title>ram: k3-ddrss: Rename ddrss_ss_regs to ddrss_ctl_regs</title>
<updated>2022-04-04T23:02:04Z</updated>
<author>
<name>Dave Gerlach</name>
<email>d-gerlach@ti.com</email>
</author>
<published>2022-03-17T17:03:42Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=71eb527476e8bb32f3b9af5e472cb9fde1fdb127'/>
<id>urn:sha1:71eb527476e8bb32f3b9af5e472cb9fde1fdb127</id>
<content type='text'>
The current address being read from dt actually represents the ddrss_ctl
memory region, while ddrss_ss region is something else. Introduce
ddrss_ctl_regs and use it to free up ddrss_ss_regs for its proper
purpose later so that we can avoid confusion.

Signed-off-by: Dave Gerlach &lt;d-gerlach@ti.com&gt;
</content>
</entry>
<entry>
<title>ram: k3-ddrss: Add support for configuring MSMC subsystem in case of Multiple DDR subsystems</title>
<updated>2022-02-08T14:41:26Z</updated>
<author>
<name>Aswath Govindraju</name>
<email>a-govindraju@ti.com</email>
</author>
<published>2022-01-25T15:26:30Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=a48fc5cc6f380c048b1edeea548b81dd13ca7320'/>
<id>urn:sha1:a48fc5cc6f380c048b1edeea548b81dd13ca7320</id>
<content type='text'>
In Multi DDR subystems with interleaving support, the following needs to
configured,

- interleaving granular size and region
- EMIFs to be enabled
- EMIFs with ecc to be enabled
- EMIF separated or interleaved
- number of cycles of unsuccessful EMIF arbitration to wait before
  arbitrating for a different EMIF port, by default set to 3

Add support for configuring all the above by using a MSMC device

Signed-off-by: Aswath Govindraju &lt;a-govindraju@ti.com&gt;
</content>
</entry>
</feed>
