Skip to content
Snippets Groups Projects
  1. Apr 02, 2008
    • Jean-Christophe PLAGNIOL-VILLARD's avatar
      MPC8xx: Fix libfdt support introduced in commit 77ff7b74 · c2a545ce
      Jean-Christophe PLAGNIOL-VILLARD authored
      
      fdt.c: In function 'ft_cpu_setup':
      fdt.c:33: warning: implicit declaration of function 'do_fixup_by_prop_u32'
      fdt.c:39: warning: implicit declaration of function 'do_fixup_by_compat_u32'
      fdt.c:43: warning: implicit declaration of function 'fdt_fixup_ethernet'
      fdt.c:45: warning: implicit declaration of function 'fdt_fixup_memory'
      
      Signed-off-by: default avatarJean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
      c2a545ce
    • Andy Fleming's avatar
      Fix fdt set command to conform to dts spec · 4abd844d
      Andy Fleming authored
      
      The fdt set command was treating properties specified as <00> and <0011>
      as byte streams, rather than as an array of cells.  As we already have
      syntax for expressing the desire for a stream of bytes ([ xx xx ...]),
      we should use the <> syntax to describe arrays of cells, which are always
      32-bits per element.  If we imagine this likely (IMHO) scenario:
      
      > fdt set /ethernet-phy@1 reg <1>
      
      With the old code, this would create a bad fdt, since the reg cell would be
      made to be one byte in length.  But the cell must be 4 bytes, so this would
      break mysteriously.
      
      Also, the dts spec calls for constants inside the angle brackets (<>)
      to conform to C constant standards as they pertain to base.
      Take this scenario:
      
      > fdt set /ethernet@f00 reg <0xe250000\ 0x1000>
      
      The old fdt command would complain that it couldn't parse that.  Or, if you
      wanted to specify that a certain clock ran at 33 MHz, you'd be required to
      do this:
      
      > fdt set /mydev clock <1f78a40>
      
      Whereas the new code will accept decimal numbers.
      
      While I was in there, I extended the fdt command parser to handle property
      strings which are split across multiple arguments:
      
      > fdt set /ethernet@f00 interrupts < 33 2 34 2 36 2 >
      > fdt p /ethernet@f00
      ethernet@f00 {
      	interrupts = <0x21 0x2 0x22 0x2 0x24 0x2>;
      };
      
      Lastly, the fdt print code was rearranged slightly to print arrays of cells
      if the length of the property is a multiple of 4 bytes, and to not print
      leading zeros.
      
      Signed-off-by: default avatarAndy Fleming <afleming@freescale.com>
      4abd844d
  2. Apr 01, 2008
  3. Mar 29, 2008
  4. Mar 27, 2008
  5. Mar 26, 2008
Loading