From patchwork Mon Jan 28 08:59:25 2013 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Piotr Wilczek X-Patchwork-Id: 216125 X-Patchwork-Delegate: trini@ti.com Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from theia.denx.de (theia.denx.de [85.214.87.163]) by ozlabs.org (Postfix) with ESMTP id F33132C007C for ; Mon, 28 Jan 2013 20:00:34 +1100 (EST) Received: from localhost (localhost [127.0.0.1]) by theia.denx.de (Postfix) with ESMTP id C47F14A02E; Mon, 28 Jan 2013 10:00:24 +0100 (CET) X-Virus-Scanned: Debian amavisd-new at theia.denx.de Received: from theia.denx.de ([127.0.0.1]) by localhost (theia.denx.de [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 9QkaJvl9Mo8x; Mon, 28 Jan 2013 10:00:24 +0100 (CET) Received: from theia.denx.de (localhost [127.0.0.1]) by theia.denx.de (Postfix) with ESMTP id 301CE4A0B8; Mon, 28 Jan 2013 10:00:13 +0100 (CET) Received: from localhost (localhost [127.0.0.1]) by theia.denx.de (Postfix) with ESMTP id D54ED4A0AF for ; Mon, 28 Jan 2013 10:00:10 +0100 (CET) X-Virus-Scanned: Debian amavisd-new at theia.denx.de Received: from theia.denx.de ([127.0.0.1]) by localhost (theia.denx.de [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id Oq3M6q3Z+i3c for ; Mon, 28 Jan 2013 09:59:59 +0100 (CET) X-policyd-weight: NOT_IN_SBL_XBL_SPAMHAUS=-1.5 NOT_IN_SPAMCOP=-1.5 NOT_IN_BL_NJABL=-1.5 (only DNSBL check requested) Received: from mailout2.samsung.com (mailout2.samsung.com [203.254.224.25]) by theia.denx.de (Postfix) with ESMTP id 83F0F4A0A9 for ; Mon, 28 Jan 2013 09:59:51 +0100 (CET) Received: from epcpsbgm2.samsung.com (epcpsbgm2 [203.254.230.27]) by mailout2.samsung.com (Oracle Communications Messaging Server 7u4-24.01(7.0.4.24.0) 64bit (built Nov 17 2011)) with ESMTP id <0MHB00GD1VNO2GA0@mailout2.samsung.com> for u-boot@lists.denx.de; Mon, 28 Jan 2013 17:59:48 +0900 (KST) X-AuditID: cbfee61b-b7fb06d000000f28-55-51063e044a59 Received: from epmmp2 ( [203.254.227.17]) by epcpsbgm2.samsung.com (EPCPMTA) with SMTP id D9.A5.03880.40E36015; Mon, 28 Jan 2013 17:59:48 +0900 (KST) Received: from mcdsrvbld02.digital.local ([106.116.37.23]) by mmp2.samsung.com (Oracle Communications Messaging Server 7u4-24.01 (7.0.4.24.0) 64bit (built Nov 17 2011)) with ESMTPA id <0MHB00HLGVN69Z00@mmp2.samsung.com> for u-boot@lists.denx.de; Mon, 28 Jan 2013 17:59:48 +0900 (KST) From: Piotr Wilczek To: u-boot@lists.denx.de Date: Mon, 28 Jan 2013 09:59:25 +0100 Message-id: <1359363565-19313-3-git-send-email-p.wilczek@samsung.com> X-Mailer: git-send-email 1.7.10 In-reply-to: <1359363565-19313-1-git-send-email-p.wilczek@samsung.com> References: <1359363565-19313-1-git-send-email-p.wilczek@samsung.com> X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFnrEJMWRmVeSWpSXmKPExsVy+t9jQV0WO7ZAg7+fDCze7u1kd2D0OHtn B2MAYxSXTUpqTmZZapG+XQJXxrJtfUwFi/kq2r5MZW9g3M3dxcjJISFgInF7zgJWCFtM4sK9 9WxdjFwcQgLTGSV2/1sPlhASWMwksWVuEYjNJqAtsfzNG0YQW0RAQuJX/1VGkAZmgVeMElM+ 7AVq4OAQFjCQ+DlXHaSGRUBVovf5DbA5vAKuEp2TjzBCLJOXeHq/jw3E5hRwk9j2/j7ULleJ O58nME9g5F3AyLCKUTS1ILmgOCk910ivODG3uDQvXS85P3cTI9jnz6R3MK5qsDjEKMDBqMTD +yONJVCINbGsuDL3EKMEB7OSCG/MGdZAId6UxMqq1KL8+KLSnNTiQ4zSHCxK4ryMp54ECAmk J5akZqemFqQWwWSZODilGhh7DVbPuK0Xz7lsStNl6+1XmaQOX11bN8HN962M3e6QpJIl3f/a El76/73IMCdgq/iL3A3dNldjDaMuZ7TZn1/xV0psv1XQyqDMX4zMxV6HGxmO+Lp432VY+eGa YNnc/yx/9yk88fa9tEkqwY1dN+jIzh9zpV8ydTXHTLj550Wei2+xklGAwnIlluKMREMt5qLi RAAqeavn9QEAAA== Cc: Stephen Warren , Piotr Wilczek , Kyungmin Park , Tom Rini Subject: [U-Boot] [PATCH 2/2] gpt: fix partion size limit X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.11 Precedence: list List-Id: U-Boot discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Sender: u-boot-bounces@lists.denx.de Errors-To: u-boot-bounces@lists.denx.de Currently, in gpt command, partion size is converted from string to unsigned long type using 'ustrtol' function. That type limits the partition size to 4GB. This patch changes the conversion function to 'ustrtoll' to return unsigned long long type. Signed-off-by: Piotr Wilczek Signed-off-by: Kyungmin Park --- common/cmd_gpt.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/common/cmd_gpt.c b/common/cmd_gpt.c index da7705d..efd7934 100644 --- a/common/cmd_gpt.c +++ b/common/cmd_gpt.c @@ -27,6 +27,7 @@ #include #include #include +#include #ifndef CONFIG_PARTITION_UUIDS #error CONFIG_PARTITION_UUIDS must be enabled for CONFIG_CMD_GPT to be enabled @@ -131,6 +132,7 @@ static int set_gpt_info(block_dev_desc_t *dev_desc, int p_count; disk_partition_t *parts; int errno = 0; + uint64_t size_ll, start_ll; debug("%s: MMC lba num: 0x%x %d\n", __func__, (unsigned int)dev_desc->lba, (unsigned int)dev_desc->lba); @@ -217,8 +219,8 @@ static int set_gpt_info(block_dev_desc_t *dev_desc, } if (extract_env(val, &p)) p = val; - parts[i].size = ustrtoul(p, &p, 0); - parts[i].size /= dev_desc->blksz; + size_ll = ustrtoull(p, &p, 0); + parts[i].size = lldiv(size_ll, dev_desc->blksz); free(val); /* start address */ @@ -226,8 +228,8 @@ static int set_gpt_info(block_dev_desc_t *dev_desc, if (val) { /* start address is optional */ if (extract_env(val, &p)) p = val; - parts[i].start = ustrtoul(p, &p, 0); - parts[i].start /= dev_desc->blksz; + start_ll = ustrtoull(p, &p, 0); + parts[i].start = lldiv(start_ll, dev_desc->blksz); free(val); } }