From mboxrd@z Thu Jan 1 00:00:00 1970 From: Scott Wood Date: Wed, 24 Jul 2013 14:08:54 -0500 Subject: [U-Boot] [PATCH v4] dfu, nand, ubi: add partubi alt settings for updating ubi partition In-Reply-To: <51EF587F.30206@denx.de> (from hs@denx.de on Tue Jul 23 23:30:55 2013) Message-ID: <1374692934.15592.57@snotra> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de On 07/23/2013 11:30:55 PM, Heiko Schocher wrote: > Hello Scott, > > Am 24.07.2013 01:22, schrieb Scott Wood: >> On 07/18/2013 11:32:14 PM, Heiko Schocher wrote: >>> +static int dfu_flush_medium_nand(struct dfu_entity *dfu) >>> +{ >>> + int ret = 0; >>> + >>> + /* in case of ubi partition, erase rest of the partition */ >>> + if (dfu->data.nand.ubi) { >>> + nand_info_t *nand; >>> + nand_erase_options_t opts; >>> + >>> + if (nand_curr_device < 0 || >>> + nand_curr_device >= CONFIG_SYS_MAX_NAND_DEVICE || >>> + !nand_info[nand_curr_device].name) { >>> + printf("%s: invalid nand device\n", __func__); >>> + return -1; >>> + } >>> + >>> + nand = &nand_info[nand_curr_device]; >>> + >>> + memset(&opts, 0, sizeof(opts)); >>> + opts.offset = dfu->data.nand.start + dfu->offset + >>> + dfu->bad_skip; >>> + opts.length = dfu->data.nand.start + >>> + dfu->data.nand.size - opts.offset; >> >> opts.length is equivalent to dfu->data.nand.size - dfu->offset - >> dfu->bad_skip. Is this correct? dfu->data.nand.size includes >> dfu->offset, but dfu->data.nand.start doesn't? > > Yes, it is correct! No need to shout... > I could not parse "dfu->data.nand.size includes dfu->offset, but > dfu->data.nand.start doesn't" ... What do you mean? I think my confusion was over what dfu->offset and nand.start represent. If nand.start/nand.size describe the raw partition, and dfu->offset is the offset into that partition that the image starts at, then this looks OK. -Scott