19 Dec, 2013

1 commit


09 Nov, 2013

3 commits


01 Nov, 2013

1 commit


21 Oct, 2013

3 commits


24 Sep, 2013

4 commits

  • DFU spec mentions it as a method to upgrade firmware (software stored
    in writable non-volatile memory). It also says other potential uses of
    DFU is beyond scope of the spec.

    Here such a beyond the scope use is being attempted - directly pumping
    binary images from host via USB to RAM. This facility is a developer
    centric one in that it gives advantage over upgrading non-volatile
    memory for testing new images every time during development and/or
    testing.

    Directly putting image onto RAM would speed up upgrade process. This and
    convenience was the initial thoughts that led to doing this, speed
    improvement over MMC was only 1 second though - 6 sec on RAM as opposed
    to 7 sec on MMC in beagle bone, perhaps enabling cache and/or optimizing
    DFU framework to avoid multiple copy for ram (if worth) may help, and
    on other platforms and other boot media like NAND maybe improvement
    would be higher.

    And for a platform that doesn't yet have proper DFU suppport for
    non-volatile media's, DFU to RAM can be used.

    Another minor advantage would be to increase life of mmc/nand as it
    would be less used during development/testing.

    usage: ram
    eg. kernel ram 0x81000000 0x1000000

    Downloading images to RAM using DFU is not something new, this is
    acheived in openmoko also.

    DFU on RAM can be used for extracting RAM contents to host using dfu
    upload. Perhaps this can be extended to io for squeezing out register
    dump through usb, if it is worth.

    Signed-off-by: Afzal Mohammed
    Cc: Heiko Schocher
    Cc: Marek Vasut
    Cc: Lukasz Majewski
    Cc: Pantelis Antoniou
    Cc: Gerhard Sittig
    Acked-by: Marek Vasut
    Acked-by: Lukasz Majewski
    Acked-by: Heiko Schocher

    Afzal Mohammed
     
  • MMC and NAND independently defines same enumerators for read/write.
    Unify them by defining enum in dfu header. RAM support that is being
    added newly also can make use of it.

    Signed-off-by: Afzal Mohammed
    Cc: Heiko Schocher
    Cc: Marek Vasut
    Cc: Lukasz Majewski
    Cc: Pantelis Antoniou
    Acked-by: Lukasz Majewski
    Acked-by: Marek Vasut
    Acked-by: Heiko Schocher

    Afzal Mohammed
     
  • New dfu_init_env_entities() function has been extracted from cmd_dfu.c and
    stored at dfu core.

    This is a dfu centric code, so it shall be processed in the core.

    Change-Id: I756c5de922fa31399d8804eaadc004ee98844ec2
    Signed-off-by: Lukasz Majewski
    Tested-by: Heiko Schocher

    Lukasz Majewski
     
  • Correct error message if overflow is detected.

    Change-Id: I8a915c7353d49822c046fbc36241237b370e6c98
    Signed-off-by: Lukasz Majewski

    Lukasz Majewski
     

27 Aug, 2013

1 commit

  • updating an ubi partition needs a completely erased mtd partition,
    see:
    http://lists.infradead.org/pipermail/linux-mtd/2011-May/035416.html

    So, add partubi alt setting for the dfu_alt_info environment
    variable to mark this partition as an ubi partition. In case we
    update an ubi partition, we erase after flashing the image into the
    partition, the remaining sektors.

    Signed-off-by: Heiko Schocher
    Cc: Pantelis Antoniou
    Cc: Tom Rini
    Cc: Lukasz Majewski
    Cc: Kyungmin Park
    Cc: Marek Vasut
    Cc: Wolfgang Denk
    Cc: Scott Wood

    Heiko Schocher
     

30 Jul, 2013

1 commit


24 Jul, 2013

1 commit


03 Jul, 2013

3 commits


01 Jul, 2013

1 commit

  • Dfu transfer uses a buffer before writing data to the
    raw storage device. Make the size (in bytes) of this buffer
    configurable through environment variable "dfu_bufsiz".
    Defaut value is configurable through CONFIG_SYS_DFU_DATA_BUF_SIZE

    Signed-off-by: Heiko Schocher
    Cc: Pantelis Antoniou
    Cc: Tom Rini
    Cc: Lukasz Majewski
    Cc: Kyungmin Park
    Cc: Marek Vasut
    Cc: Wolfgang Denk
    Acked-by: Tom Rini

    Heiko Schocher
     

25 Jun, 2013

1 commit

  • before writing the received buffer to nand, erase the nand
    sectors. If not doing this, nand write fails. See for
    more info here:

    http://lists.denx.de/pipermail/u-boot/2013-June/156361.html

    Using the nand erase option "spread", maybe overwrite
    blocks on, for example another mtd partition, if the
    erasing range contains bad blocks.
    So a limit option is added to nand_erase_opts()

    Signed-off-by: Heiko Schocher
    Cc: Scott Wood
    Cc: Pantelis Antoniou
    Cc: Lukasz Majewski
    Cc: Kyungmin Park
    Cc: Marek Vasut
    Cc: Tom Rini
    Signed-off-by: Scott Wood

    Heiko Schocher
     

10 Apr, 2013

2 commits

  • Support for NAND storage devices to work with the DFU framework.

    Signed-off-by: Pantelis Antoniou
    Signed-off-by: Tom Rini
    Acked-by: Scott Wood

    Pantelis Antoniou
     
  • Previously we didn't support upload/download larger than available
    memory. This is pretty bad when you have to update your root filesystem
    for example.

    This patch removes that limitation (and the crashes when you transfered
    any file larger than 4MB) by making raw image writes be done in chunks
    and making file maximum size be configurable.

    The sequence number is a 16 bit counter; make sure we handle rollover
    correctly. This fixes the wrong transfers for large (> 256MB) images.

    Also utilize a variable to handle initialization, so that we don't rely
    on just the counter sent by the host.

    Signed-off-by: Pantelis Antoniou
    Signed-off-by: Tom Rini

    Pantelis Antoniou
     

09 Apr, 2013

1 commit

  • Following commit:
    "cmd_ext4: BREAK and correct ext4write parameter order"
    SHA1:0171d52c410cbaa9290b1b214e695697c835bfe5

    introduced cleanup of ext4write semantics to be consistent with other
    filesystem's writing commands (e.g. fatwrite).
    This commit provides correct ext4write command generation at DFU eMMC
    code.

    Signed-off-by: Lukasz Majewski
    Signed-off-by: Kyungmin Park

    Łukasz Majewski
     

17 Mar, 2013

1 commit


21 Sep, 2012

2 commits


01 Sep, 2012

2 commits