← Back to team overview

linaro-pkg team mailing list archive

[Bug 652117] Re: linaro u-boot: get_sdr_cs_offset() ignores CS1STARTLOW field

 

** Changed in: u-boot-linaro
       Status: In Progress => Fix Released

-- 
You received this bug notification because you are a member of Linaro
Maintainers, which is the registrant for Linaro U-Boot.
https://bugs.launchpad.net/bugs/652117

Title:
  linaro u-boot: get_sdr_cs_offset() ignores CS1STARTLOW field

Status in Linaro U-Boot:
  Fix Released

Bug description:
  http://git.linaro.org/gitweb?p=boot/u-boot-linaro-
  next.git;a=blob;f=arch/arm/cpu/armv7/omap3/sdrc.c;h=8905224439b5e7d07204c2b5b2b4f180c5599ce8;hb=HEAD#l94

  arch/arm/cpu/armv7/omap3/sdrc.c:get_sdr_cs_offset() does this:

          offset = readl(&sdrc_base->cs_cfg);
          offset = (offset & 15) << 27 | (offset & 0x30) >> 17;

  which is clearly shifting the offset&0x30 field off the right hand
  side of the value so it is effectively ignored. Looking at the
  OMAP35xx TRM (which defines bits [9:8] as CS1STARTLOW, lower address
  bits a1:a0, and [3:0] as CS1STARTHIGH, upper address bits a5:a4:a3:a2)
  I think that this should read "<< 17".

  This doesn't have any visible effect on the h/w I have access to
  (beagleboard) because CS1STARTLOW is zero anyway. I found it by code
  inspection while trying to track down a different problem in qemu.

To manage notifications about this bug go to:
https://bugs.launchpad.net/u-boot-linaro/+bug/652117/+subscriptions