RE: [PATCHV4] OMAP3: SDRC : Errata 1.176 Fix - Accesses to DDR stall in SDRC after a Warm-reset

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Paul,

> -----Original Message-----
> From: Paul Walmsley [mailto:paul@xxxxxxxxx]
> Sent: Wednesday, May 19, 2010 6:03 AM
> To: Reddy, Teerth
> Cc: linux-omap@xxxxxxxxxxxxxxx; Sripathy, Vishwanath
> Subject: Re: [PATCHV4] OMAP3: SDRC : Errata 1.176 Fix - Accesses to DDR
> stall in SDRC after a Warm-reset
> 
> Hello Teerth,
> 
> On Fri, 23 Apr 2010, Reddy, Teerth wrote:
> 
> > From: Teerth Reddy <teerth@xxxxxx>
> >
> > This patch has the workaround for errata 1.176.
> > In some cases, user is not able to access DDR memory after
> > warm-reset.This situation occurs while the warm-reset
> > happens during a read access to DDR memory. In that
> > particular conditions, DDR memory does not respond to a
> > corrupted read command due to the warm reset occurence but
> > SDRC is waiting for read completion.SDRC is not sensitive to
> > the warm reset, but the interconect is reset on the fly,
> > thus causing a misalignment between SDRC logic, interconect
> > logic and DDR memory state.
> >
> > Root cause description: A corrupted read transaction is
> > issued to a closed row: (address0, bank0) instead of the
> > expected read access, violating protocol.
> >
> > Failure signature: Once the failure occurs and system has
> > restarted, memory content is not accessible.SDRC registers
> > can be accessed successfully, until 1st access to memory
> > location is performed. After 1st access to memory is done,
> > SDRC is stuck.
> >
> > WORKAROUND
> > Steps to perform before a SW reset is trigged, if user needs
> > to generate a SW reset and keep DDR memory content:
> > 1. Enable self-refresh on idle request
> > 2. Put SDRC in idle
> > 3. Wait until SDRC goes to idle
> > 4. Generate SW reset
> >
> > Steps to perform after warm reset occurs:
> > If HW warm reset is the source, apply below steps before
> > any accesses to SDRAM:
> > 1. Reset SMS and SDRC
> > 2. Re-initialize SMS, SDRC and memory
> >
> > This would need the u-boot/x-loader workaround changes
> > as well for the reboot to work correctly.
> >
> > Thanks to Paul Walmsley <paul@xxxxxxxxx> for suggesting
> > usefull changes.
> >
> > Signed-off-by: Teerth Reddy <teerth@xxxxxx>
> 
> This patch doesn't work on the BeagleBoard Rev C2 here.  After running
> 'init 6' to reboot the system, the kernel hangs after:
> 
> Rebooting... Restarting system.
> 
> Could you please doublecheck this patch?

This is not working on Zoom3 too. There is not much change with the rebase on latest LO. The previous version did work fine. Will debug to check what changes are causing this hang.

> 
> This patch also adds a sparse warning - please fix
> that too,
> 
> 
> - Paul

Regards
Teerth
--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Arm (vger)]     [ARM Kernel]     [ARM MSM]     [Linux Tegra]     [Linux WPAN Networking]     [Linux Wireless Networking]     [Maemo Users]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Trails]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux