From mboxrd@z Thu Jan 1 00:00:00 1970 From: Albert ARIBAUD Date: Fri, 12 Jul 2013 09:35:19 +0200 Subject: [U-Boot] [RFC PATCH] arm: arm926ejs: flush cache before disable it In-Reply-To: <20130710173445.GA7512@Hardy> References: <51D9FABE.7000705@gmail.com> <20130708122257.5f0100ec@lilith> <20130708120846.GA4824@Hardy> <20130708143216.22906bf7@lilith> <20130708140722.GA6642@Hardy> <20130708215551.1c16cb06@lilith> <20130709061134.GA3176@Hardy> <20130709102813.63de0b18@lilith> <20130710100510.GB2450@Hardy> <20130710143030.37221f93@lilith> <20130710173445.GA7512@Hardy> Message-ID: <20130712093519.7e234692@lilith> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de Hi Sughosh, On Wed, 10 Jul 2013 23:04:45 +0530, Sughosh Ganu wrote: > hi Albert, > > On Wed Jul 10, 2013 at 02:30:30PM +0200, Albert ARIBAUD wrote: > > > > > You are correct re the other policies of the DDI0198E (ARM926EJ-S > > > > TRM) MMU -- page 3-11, bits 3-2 of the section descriptor. Note however > > > > that you may have to refer to your specific SoC's TRM or equivalent, as > > > > the SoC designer may have defined its own system-level cache and MMU > > > > architecture. > > > > > > > > Note in any case that none of the policies mentioned in DDI0198E is > > > > described as read-allocate (let alone "read-allocate only" where writes > > > > would bypass the enabled cache); on the contrary, the only cache > > > > policies mentioned are write-through and write-back, both of which > > > > contradict cache bypass on write. > > > > > > I was referring to the cache allocation policy mentioned in section > > > 4.1 in the DDI0198E document -- this is also mentioned in table 12.1 > > > in chapter 12 of the arm developers guide. > > > > Can you please quote the exact part of 4.1 which describes the cache > > policy and then explain what you think it means exactly? > > I was referring to this particular point in section 4.1 > "Allocate on read-miss is supported. The caches perform critical-word > first cache refilling." This is not equivalent to "the cache policy is read-allocate". This paragraph does not specify the cache's general policy, only a read policy, and only the *read allocation* policy. Its write policies are not defined or even constrained by this paragraph. > Based on the cache line allocation policies described in section > 12.3.3 in the arm developers guide, my interpretation of 'allocate on > read-miss' was as above. The ARM926EJ-S is "allocate on read-miss" as well as "allocate on write-miss"; and none of its write policies bypasses the cache. > -sughosh Amicalement, -- Albert.