From patchwork Fri Jun 29 12:59:02 2012 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Rajeshwari Shinde X-Patchwork-Id: 9711 Return-Path: X-Original-To: patchwork@peony.canonical.com Delivered-To: patchwork@peony.canonical.com Received: from fiordland.canonical.com (fiordland.canonical.com [91.189.94.145]) by peony.canonical.com (Postfix) with ESMTP id 5FF9C23E40 for ; Fri, 29 Jun 2012 12:56:25 +0000 (UTC) Received: from mail-yw0-f47.google.com (mail-yw0-f47.google.com [209.85.213.47]) by fiordland.canonical.com (Postfix) with ESMTP id 1A954A18758 for ; Fri, 29 Jun 2012 12:56:25 +0000 (UTC) Received: by yhjj56 with SMTP id j56so3346442yhj.20 for ; Fri, 29 Jun 2012 05:56:24 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=x-forwarded-to:x-forwarded-for:delivered-to:received-spf:x-auditid :from:to:cc:subject:date:message-id:x-mailer:in-reply-to:references :x-brightmail-tracker:x-tm-as-mml:x-gm-message-state; bh=/vMPs4Ou/te8EcDuyVx5BqO9a2VSxGHkaTnmiSU/5Ng=; b=b+fQqU3Gj2KwS/tBWqWkmeIuYzurHzR1/ucHTjcS9sDdgUUxa7YyfdPGuY8OX+2Yns P5KfMTDxyvFGOneCE5ZTMGkKXmCHfYd9Ln++UBBgE+FiPtjAPMJ5JcC6xJB6AAXUZ2L0 iDRj91G8bBFicDpuNaTwTE1orb2trJpyAMytfCQzHqvJK96rCePTzdbc70lfDHLTFDf8 QAYVvopbcQukuC68bgD4kZsvz5uXSu/a50Qw7baDiPmqSq6OGMemiPenPoU3rUzv+S91 3rp3sst8Z2rX8c4q0sTmICxo8KpctRTF7DJI3x3mdKtHp6Mt5V5Rc7S6eDaNwS818r3+ zIpg== Received: by 10.50.46.232 with SMTP id y8mr948093igm.57.1340974584350; Fri, 29 Jun 2012 05:56:24 -0700 (PDT) X-Forwarded-To: linaro-patchwork@canonical.com X-Forwarded-For: patch@linaro.org linaro-patchwork@canonical.com Delivered-To: patches@linaro.org Received: by 10.231.24.148 with SMTP id v20csp90902ibb; Fri, 29 Jun 2012 05:56:23 -0700 (PDT) Received: by 10.68.232.161 with SMTP id tp1mr6431040pbc.44.1340974583612; Fri, 29 Jun 2012 05:56:23 -0700 (PDT) Received: from mailout3.samsung.com (mailout3.samsung.com. [203.254.224.33]) by mx.google.com with ESMTP id tg7si8308894pbc.39.2012.06.29.05.56.23; Fri, 29 Jun 2012 05:56:23 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of rajeshwari.s@samsung.com designates 203.254.224.33 as permitted sender) client-ip=203.254.224.33; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of rajeshwari.s@samsung.com designates 203.254.224.33 as permitted sender) smtp.mail=rajeshwari.s@samsung.com Received: from epcpsbgm1.samsung.com (mailout3.samsung.com [203.254.224.33]) by mailout3.samsung.com (Oracle Communications Messaging Server 7u4-24.01(7.0.4.24.0) 64bit (built Nov 17 2011)) with ESMTP id <0M6D00AI4QJYLLE0@mailout3.samsung.com>; Fri, 29 Jun 2012 21:55:47 +0900 (KST) X-AuditID: cbfee61a-b7f086d000000e64-93-4feda5d30362 Received: from epmmp2 ( [203.254.227.17]) by epcpsbgm1.samsung.com (EPCPMTA) with SMTP id 59.1E.03684.3D5ADEF4; Fri, 29 Jun 2012 21:55:47 +0900 (KST) Received: from rajeshwari-linux.sisodomain.com ([107.108.215.115]) by mmp2.samsung.com (Oracle Communications Messaging Server 7u4-24.01(7.0.4.24.0) 64bit (built Nov 17 2011)) with ESMTPA id <0M6D00JE7QK7T260@mmp2.samsung.com>; Fri, 29 Jun 2012 21:55:47 +0900 (KST) From: Rajeshwari Shinde To: u-boot@lists.denx.de Cc: patches@linaro.org, sjg@chromium.org, mk7.kang@samsung.com, chander.kashyap@linaro.org, alim.akhtar@samsung.com, dofmind@gmail.com, jh80.chung@samsung.com Subject: [PATCH 02/10 V4] SMDK5250: SPL: Define parametric board initializer Date: Fri, 29 Jun 2012 18:29:02 +0530 Message-id: <1340974750-19969-3-git-send-email-rajeshwari.s@samsung.com> X-Mailer: git-send-email 1.7.4.4 In-reply-to: <1340974750-19969-1-git-send-email-rajeshwari.s@samsung.com> References: <1340974750-19969-1-git-send-email-rajeshwari.s@samsung.com> X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFnrJJMWRmVeSWpSXmKPExsVy+t9jQd3LS9/6Gzy6aGTxcP1NFosph7+w ODB53Lm2hy2AMYrLJiU1J7MstUjfLoEr49Hqa4wF76UqTs84yNbA+FK0i5GTQ0LARKLjx25m CFtM4sK99WxdjFwcQgLTGSXWbZ8B5Uxkkrhx5RYLSBWbgJHE1pPTGEFsEQEJiV/9VxlBipgF FjFK3O35xQ6SEBbwkZg86wsTiM0ioCqxY+5fsAZeAQ+J829Xs0KsU5A4NvUrmM0p4CnxZFMT mC0EVPPizUXWCYy8CxgZVjGKphYkFxQnpeca6hUn5haX5qXrJefnbmIEB8AzqR2MKxssDjEK cDAq8fBWLHnrL8SaWFZcmXuIUYKDWUmE9+FioBBvSmJlVWpRfnxRaU5q8SFGaQ4WJXHeJusL /kIC6YklqdmpqQWpRTBZJg5OqQZG0WM5b5WvF7yMr3V2982tu/2UL8h18RXm96cOX7ILVVD0 YbPMLNdbPN9l7hHtGRO8frsvy7K5oXtpvgXrMV7Xmb1yMqwqOWeKpaUs+aKO30uQY1i9Zetc d+nG6PvxakJH+NdfFZtp3TX3nuSzBRWhuVG3pfUn9GxZVtz69ukCMYsa1qDnn54psRRnJBpq MRcVJwIAWAatQfwBAAA= X-TM-AS-MML: No X-Gm-Message-State: ALoCoQkXgEGXfemWJz58dEGKQQFZtuaV5Ih+l+sqJe7RhME13jMrU5ysV8C5QHcpVWxIA+wz76l+ Define table-driven configuration mechanism for SMDK5250 rather than hard-coding board initialization parameters. Signed-off-by: Che-Liang Chiou Signed-off-by: Abhilash Kesavan Signed-off-by: Tom Wai-Hong Tam Signed-off-by: Simon Glass Signed-off-by: Rajeshwari Shinde --- Changes in V2: - None Changes in V3: - None Changes in V4: - None board/samsung/smdk5250/Makefile | 1 + board/samsung/smdk5250/smdk5250_spl.c | 68 +++++++++++++++++++++++++++++++++ 2 files changed, 69 insertions(+), 0 deletions(-) create mode 100644 board/samsung/smdk5250/smdk5250_spl.c diff --git a/board/samsung/smdk5250/Makefile b/board/samsung/smdk5250/Makefile index 226db1f..3675fad 100644 --- a/board/samsung/smdk5250/Makefile +++ b/board/samsung/smdk5250/Makefile @@ -29,6 +29,7 @@ SOBJS := lowlevel_init.o COBJS := clock_init.o COBJS += dmc_init.o COBJS += tzpc_init.o +COBJS += smdk5250_spl.o ifndef CONFIG_SPL_BUILD COBJS += smdk5250.o diff --git a/board/samsung/smdk5250/smdk5250_spl.c b/board/samsung/smdk5250/smdk5250_spl.c new file mode 100644 index 0000000..1d453ca --- /dev/null +++ b/board/samsung/smdk5250/smdk5250_spl.c @@ -0,0 +1,68 @@ +/* + * Copyright (c) 2012 The Chromium OS Authors. + * + * See file CREDITS for list of people who contributed to this + * project. + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License as + * published by the Free Software Foundation; either version 2 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + */ + +#include +#include +#include +#include + +#define SIGNATURE 0xdeadbeef + +/* Parameters of early board initialization in SPL */ +static struct spl_machine_param machine_param + __attribute__((section(".machine_param"))) = { + .signature = SIGNATURE, + .version = 1, + .params = "vmubfasirM", + .size = sizeof(machine_param), + + .mem_iv_size = 0x1f, + .mem_type = DDR_MODE_DDR3, + + /* + * Set uboot_size to 0x100000 bytes. + * + * This is an overly conservative value chosen to accommodate all + * possible U-Boot image. You are advised to set this value to a + * smaller realistic size via scripts that modifies the .machine_param + * section of output U-Boot image. + */ + .uboot_size = 0x100000, + + .boot_source = BOOT_MODE_OM, + .frequency_mhz = 800, + .arm_freq_mhz = 1700, + .serial_base = 0x12c30000, + .i2c_base = 0x12c60000, + .mem_manuf = MEM_MANUF_SAMSUNG, +}; + +struct spl_machine_param *spl_get_machine_params(void) +{ + if (machine_param.signature != SIGNATURE) { + /* Will hang if SIGNATURE dont match */ + while (1) + ; + } + + return &machine_param; +}