Hi Brian, Thanks for your work on this. It looks amazing, nice piece of code :) On 7 March 2015 at 02:18, Brian Norris <computersforpeace@xxxxxxxxx> wrote: > This adds (long in coming) support for the Broadcom BCM7xxx Set-Top Box NAND > controller. This controller has been used in a variety of Broadcom SoCs. > > There are a few more features I'd like add in the near future, mostly to > support more SoCs, but this is the base set, which should only need relatively > minor additions to support chips like BCM63138, BCM3384, and Cygnus/iProc. > Particularly, we may need to straighten out some endianness issues for the data > path on iProc, and interrupt enabling/acking on iProc, BCM63xxx, BCM3xxx, and > others. After applying workaround for not working IRQ, it seems I have some problem with endianess on my BCM4708 (SoC with 6.01 controller). Let me start with dumps of "nvram" MTD partition. 1) Dumping with Netgear's original firmware: # hexdump -C -n 16 mtdblock1.bin 00000000 46 4c 53 48 40 79 00 00 84 01 00 00 47 01 1c 08 |FLSH@y......G...| 2) Dumping with OpenWrt and its bcm_nand.c: root@OpenWrt:/# hexdump -C -n 16 /dev/mtdblock1 00000000 46 4c 53 48 38 79 00 00 cb 01 00 00 47 01 1c 08 |FLSH8y......G...| This makes me feel that bcm_nand.c driver is OK. Unfortunately when using brcmstb_nand.c my bcm47xxpart partition driver didn't detect any partition at all. This means I couldn't use any /dev/mtdblockX, not even user space as it wasn't mounted. So since I didn't have user space, I decided to add some debugging to bcm47xxpart itself. There is what I got: 1) OpenWrt and its bcm_nand.c: [bcm47xxpart_parse] 0x80000 46 4c 53 48 38 79 00 00 cb 01 00 00 47 01 1c 08 2) OpenWrt and brcmstb_nand.c: [bcm47xxpart_parse] 0x80000 48 53 4c 46 00 00 79 38 00 00 01 cb 08 1c 01 47 So obviously data returned by brcmstb_nand.c seems to be all endianess-flipped. Could you take a loo at this? -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html