From patchwork Fri Oct 19 15:44:07 2012 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: =?utf-8?q?=C5=81ukasz_Majewski?= X-Patchwork-Id: 192760 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 930142C0080 for ; Sat, 20 Oct 2012 02:48:51 +1100 (EST) Received: from localhost (localhost [127.0.0.1]) by theia.denx.de (Postfix) with ESMTP id AABAD4A5CC; Fri, 19 Oct 2012 17:47:28 +0200 (CEST) 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 ogDqQeOFGd8y; Fri, 19 Oct 2012 17:47:28 +0200 (CEST) Received: from theia.denx.de (localhost [127.0.0.1]) by theia.denx.de (Postfix) with ESMTP id 8FEB34A5D4; Fri, 19 Oct 2012 17:46:31 +0200 (CEST) Received: from localhost (localhost [127.0.0.1]) by theia.denx.de (Postfix) with ESMTP id 696314A4BF for ; Fri, 19 Oct 2012 17:46:26 +0200 (CEST) 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 zjBc0zTVUpdy for ; Fri, 19 Oct 2012 17:46:25 +0200 (CEST) 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 mailout3.samsung.com (mailout3.samsung.com [203.254.224.33]) by theia.denx.de (Postfix) with ESMTP id 720954A58C for ; Fri, 19 Oct 2012 17:45:44 +0200 (CEST) Received: from epcpsbgm1.samsung.com (epcpsbgm1 [203.254.230.26]) by mailout3.samsung.com (Oracle Communications Messaging Server 7u4-24.01(7.0.4.24.0) 64bit (built Nov 17 2011)) with ESMTP id <0MC500H4PD28WN00@mailout3.samsung.com> for u-boot@lists.denx.de; Sat, 20 Oct 2012 00:45:43 +0900 (KST) X-AuditID: cbfee61a-b7f976d000001eb9-25-508175a6f976 Received: from epmmp1.local.host ( [203.254.227.16]) by epcpsbgm1.samsung.com (EPCPMTA) with SMTP id CC.E4.07865.6A571805; Sat, 20 Oct 2012 00:45:43 +0900 (KST) Received: from mcdsrvbld02.digital.local ([106.116.37.23]) by mmp1.samsung.com (Oracle Communications Messaging Server 7u4-24.01 (7.0.4.24.0) 64bit (built Nov 17 2011)) with ESMTPA id <0MC500FFND1YC320@mmp1.samsung.com> for u-boot@lists.denx.de; Sat, 20 Oct 2012 00:45:42 +0900 (KST) From: Lukasz Majewski To: u-boot@lists.denx.de Date: Fri, 19 Oct 2012 17:44:07 +0200 Message-id: <1350661451-1273-21-git-send-email-l.majewski@samsung.com> X-Mailer: git-send-email 1.7.10 In-reply-to: <1350661451-1273-1-git-send-email-l.majewski@samsung.com> References: <1350661451-1273-1-git-send-email-l.majewski@samsung.com> X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFnrIJMWRmVeSWpSXmKPExsVy+t9jAd3lpY0BBk/6mC3e7u1kd2D0OHtn B2MAYxSXTUpqTmZZapG+XQJXRs/uC2wFvfwVp+ZvZWpgPMzTxcjJISFgItH8q5sZwhaTuHBv PRuILSSwiFHi7puALkYuIHsxk8S0I2uYQBJsAnoSn+8+BbNFBCQkfvVfZQQpYhZ4wCjxpWkl WEJYIFGia+IMsKksAqoS5/u2sXcxcnDwCrhJ3OszglgmL/H0fh8bSJgTKPzqdznEXleJC813 WSYw8i5gZFjFKJpakFxQnJSea6hXnJhbXJqXrpecn7uJEezxZ1I7GFc2WBxiFOBgVOLh/XW7 IUCINbGsuDL3EKMEB7OSCK8be2OAEG9KYmVValF+fFFpTmrxIUZpDhYlcd5mj5QAIYH0xJLU 7NTUgtQimCwTB6dUA2PV5gzHWQsYvyz0bOdi1mwxDLzKW+SYv2mjZKfMrYWhrnznJp04cE6z 0jbw9NHpBzqPmUgLFAWIbBTYsHN9v1X43d6rNQGHJgr0bpws4W+cWBEeve1t8nv1ep3Wg8HZ ftMvtXPYz/Ozr/59tUHzt9NLLjknhi/Tg+WbT2u88lxxcs0cxW+H05VYijMSDbWYi4oTAQwj zjT0AQAA Cc: Jaehoon Chung , Kyungmin Park , Tom Rini Subject: [U-Boot] [PATCH v3 20/24] arm:trats:pmic: Support for charging battery at Samsung's TRATS board 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 The battery connected to Samsung's Trats development board is now charged when voltage drops below threshold. Signed-off-by: Lukasz Majewski Signed-off-by: Kyungmin Park Cc: Minkyu Kang --- Changes for v2: - Define separate *p_{} pointer instances for each power device available at Trats - Only basic checks performed - Core responsible for battery charging moved to separate file - ./drivers/power/bat_trats.c Changes for v3: - None Changes for v3: - change code according to struct pmic redesign --- board/samsung/trats/trats.c | 29 +++++++++++++++++++++++++++++ 1 files changed, 29 insertions(+), 0 deletions(-) diff --git a/board/samsung/trats/trats.c b/board/samsung/trats/trats.c index a8a97bf..8252a00 100644 --- a/board/samsung/trats/trats.c +++ b/board/samsung/trats/trats.c @@ -281,12 +281,41 @@ static int pmic_init_max8997(void) int power_init_board(void) { + int chrg; + struct power_battery *pb; + struct pmic *p_fg, *p_chrg, *p_muic, *p_bat; pmic_init(I2C_5); pmic_init_max8997(); power_fg_init(I2C_9); power_muic_init(I2C_5); power_bat_init(0); + p_fg = pmic_get("MAX17042_FG"); + p_chrg = pmic_get("MAX8997_PMIC"); + p_muic = pmic_get("MAX8997_MUIC"); + p_bat = pmic_get("BAT_TRATS"); + + p_fg->parent = p_bat; + p_chrg->parent = p_bat; + p_muic->parent = p_bat; + + p_bat->low_power_mode = trats_low_power_mode; + p_bat->pbat->battery_init(p_bat, p_fg, p_chrg, p_muic); + + pb = p_bat->pbat; + chrg = p_muic->chrg->chrg_type(p_muic); + debug("CHARGER TYPE: %d\n", chrg); + + if (!p_chrg->chrg->chrg_bat_present(p_chrg)) { + puts("No battery detected\n"); + return -1; + } + + p_fg->fg->fg_battery_check(p_fg, p_bat); + + if (pb->bat->state == CHARGE && chrg == CHARGER_USB) + puts("CHARGE Battery !\n"); + return 0; }