On Wed, Feb 22, 2017 at 1:32 PM, Jagan Teki <ja...@openedev.com> wrote: > On Wed, Feb 22, 2017 at 5:03 AM, Maxime Ripard > <maxime.rip...@free-electrons.com> wrote: >> Hi Jagan, >> >> On Tue, Feb 21, 2017 at 10:50:34AM +0530, Jagan Teki wrote: >>> On Mon, Jan 23, 2017 at 7:16 PM, Maxime Ripard >>> <maxime.rip...@free-electrons.com> wrote: >>> > The CHIP Pro is a SoM made by NextThing Co, and that embeds a GR8 SIP, an >>> > AXP209 PMIC, a WiFi BT chip and a 512MB SLC NAND. >>> > >>> > Since the first Allwinner device coming whit an SLC NAND that doesn't have >>> > the shortcomings (and breakages) the MLC NAND has, we can finally enable >>> > the NAND support on a board by default. >>> > >>> > This is the occasion to introduce a bunch of additions needed imo to be >>> > able to come up with a sane NAND support for our users. >>> > >>> > The biggest pain point is that the BROM uses a different ECC and >>> > randomizer >>> > configuration than for the rest of the NAND. In order to lessen the number >>> > of bitflips, you also need to pad with random data the SPL image. >>> > >>> > Since it's quite tedious to do right (and most users won't be able to >>> > figure it out) and since if it is not done right, it will eventually turn >>> > into an unusable system (which is bad UX), we think that the best solution >>> > is to generate an SPL image that already embeds all this. We'll possible >>> > have to do the same thing for the U-Boot image (at least for the random >>> > padding) on MLC NANDs. >>> > >>> > The only drawback from that is that you need to flash it raw, instead of >>> > using the usual nand write, but it's just a different command, nothing >>> > major anyway. >>> > >>> > In order to flash it, from a device switched in FEL, on your host: >>> > sunxi-fel spl spl/sunxi-spl.bin >>> > sunxi-fel write 0x4a000000 u-boot-dtb.bin >>> > sunxi-fel write 0x43000000 spl/sunxi-spl-with-ecc.bin >>> > sunxi-fel exe 0x4a000000 >>> > >>> > And on the board, once u-boot is running (assuming the NAND is already >>> > erased): >>> > >>> > nand write.raw.noverify 0x43000000 0 40 >>> > nand write.raw.noverify 0x43000000 0x400000 40 >>> > >>> > nand write 0x4a000000 0x800000 0xc0000 >>> > >>> > I also encountered some weird bug in the private libgcc that prevents >>> > U-Boot from loading. Disabling CONFIG_USE_PRIVATE_LIBGCC fixes that. >>> > >>> > Let me know what you think, >>> > Maxime >>> > >>> > Changes from v3: >>> > - Bring new Kconfig patches from Boris >>> > - Do not define Kconfig defaults in our board Kconfig but directly in >>> > the >>> > option declaration >>> > - Sync the DT with the kernel >>> > - Fixed build breakages >>> > >>> > Changes from v2: >>> > - Move CMD_NAND and CMD_UBI default to cmd/Kconfig >>> > - Define the env Kconfig options only for ARCH_SUNXI to avoid build >>> > breakages >>> > - Define CMD_MTDPARTS only for ARCH_SUNXI >>> > >>> > Changes from v1: >>> > - Allowed to build lib/bch.c for the host, and used that in the image >>> > builder >>> > - Fixed a bug in the NAND driver >>> > - Wrote a documentation on how to flash a NAND image on an Allwinner >>> > board >>> > - Fixed a few compilation breakages and issues >>> > - Moved U-boot offset out of the config header and into Kconfig >>> > - Moved the environment into UBI >>> > - Moved the environment selection to Kconfig >>> > - Moved the CMD_MTDPARTS options to Kconfig >>> > - Provide MTDIDS_DEFAULT and MTDPARTS_DEFAULT options through Kconfig >>> > - Added the tags from everyone >>> > >>> > Boris Brezillon (3): >>> > mtd: ubi: Select RBTREE option from MTD_UBI Kconfig entry >>> > cmd: Expose a Kconfig option to enable UBIFS commands >>> > cmd: nand: Expose optional suboptions in Kconfig >>> > >>> > Hans de Goede (1): >>> > sunxi: Enable UBI and NAND support >>> > >>> > Maxime Ripard (12): >>> > nand: sunxi: Fix modulo by zero error >>> > bch: Allow to build for the host >>> > tools: sunxi: Add spl image builder >>> > common: Move environment choice to Kconfig >>> > cmd: Add Kconfig option for CMD_MTDPARTS and related options >>> > mtd: sunxi: Select the U-Boot location config option >>> > mtd: sunxi: Change U-Boot offset >>> > sunxi: Add the default mtdids and mtdparts to our env >>> > nand: sunxi: Add options for the SPL NAND configuration >>> > scripts: sunxi: Build an raw SPL image >>> > sunxi: Sync GR8 DTS and AXP209 with the kernel >>> > sunxi: Add support for the CHIP Pro >>> >>> Reviewed-by: Jagan Teki <ja...@openedev.com> >> >> I'm still getting up to speed wrt. how you merge patches. Are you >> waiting for someone, or do you want to merge them through your tree >> directly? > > I've some merge conflicts, trying to resolve and apply directly > otherwise I will let you know to resend.
Patches with include/configs/sunxi-common.h changes trigger merge conflicts, can you rebase and send it again. thanks! -- Jagan Teki Free Software Engineer | www.openedev.com U-Boot, Linux | Upstream Maintainer Hyderabad, India. _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot