• Home
  • Help
  • Search
  • Login
  • Register
Pages: [1]
Author Topic: how to build costumed kernel on Marvell 6281 including Sheeva Plug  (Read 2479 times)
liudongmiao
Newbie
*

Karma: 0
Posts: 1


View Profile
« on: April 20, 2010, 03:12:34 AM »

Most of time, we can build a cross kernel, but it may not work, show some machine id or so.
We can set arcNumber and mainlineLinux in uboot, but it's hard to do, for example, have no JTAG/Serial Console.
For more information, please see attachment.

Code:
1. board support
   a. set arcNumber, for example 0x0831 (2097) to support SheevaPlug.
      of couse, we need to set mainlineLinux to yes
   b. add some code (8 bytes) on the front of zImage.
   Machine ID |
   ----------/
   XXYY is the machine id (arcNumber)
   0690 Marvell DB-88F6281-BP Development Board
   0691 Marvell RD-88F6192-NAS Development Board
   0692 Marvell RD-88F6281 Reference Board
   078c Marvell 88F6281 GTW GE Board
   0831 Marvell SheevaPlug Reference Board
   085b QNAP TS-119/TS-219
   0915 Marvell OpenRD Base Board
   . devio 'wl 0xe3a01cXX,4' 'wl 0xe38110YY,4'
   . (echo -en '\xXX\x1c\xa0\xe3\xYY\x10\x81\xe3'; cat zImage) > zImage.XXYY

2. MTD partation
   a. set mtdparts.
      ref. http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=blob;f=drivers/mtd/cmdlinepart.c
   b. modify codes
      http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=tree;f=arch/arm/mach-kirkwood
      ref. mtd_partition information in *-setup.c
      for example, my DB-88F6281-BP have a mtd like this: (cat /proc/mtd)
      | dev:    size   erasesize  name
      | mtd0: 00100000 00020000 "u-boot"
      | mtd1: 00600000 00020000 "uImage"
      | mtd2: 1f900000 00020000 "root"
      then i need to replace SZ_4M as 0x6000000.
      http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=blob;f=arch/arm/mach-kirkwood/db88f6281-bp-setup.c 

* linux-2.6.33.2.pkgbuild (3.27 KB - downloaded 171 times.)
« Last Edit: April 20, 2010, 03:43:28 AM by liudongmiao » Logged

Pages: [1]
Print
Jump to: