Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1755038AbbHXQuj (ORCPT ); Mon, 24 Aug 2015 12:50:39 -0400 Received: from mail-by2on0125.outbound.protection.outlook.com ([207.46.100.125]:32665 "EHLO na01-by2-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1750941AbbHXQuh (ORCPT ); Mon, 24 Aug 2015 12:50:37 -0400 Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=scottwood@freescale.com; Message-ID: <1440434073.30043.21.camel@freescale.com> Subject: Re: [PATCH v6 3/3] qe_common: add qe_muram_ functions to manage muram From: Scott Wood To: Zhao Qiang CC: , , , , , , Date: Mon, 24 Aug 2015 11:34:33 -0500 In-Reply-To: <1440408703-6113-3-git-send-email-qiang.zhao@freescale.com> References: <1440408703-6113-1-git-send-email-qiang.zhao@freescale.com> <1440408703-6113-3-git-send-email-qiang.zhao@freescale.com> Content-Type: text/plain; charset="UTF-8" X-Mailer: Evolution 3.16.0-fta1 MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Originating-IP: [2601:448:8100:f9f:12bf:48ff:fe84:c9a0] X-ClientProxiedBy: BLUPR13CA0029.namprd13.prod.outlook.com (25.160.191.39) To CY1PR03MB1488.namprd03.prod.outlook.com (25.163.17.18) X-Microsoft-Exchange-Diagnostics: 1;CY1PR03MB1488;2:+YjVBPKPtlai3huPRlKe6ON1+eZ5mn1V7l7I1rud0cBF6MfS6hyrnvLqrql2Ve3CO04k/NLWx0rxW9b7J8MIQ9/RD7d7LHOliZgN/St7yviawHRh3SkwZVOo3ot4mLI9lGuCcNqiHowPdfWUsDU+LOammEgCyqllZLDp7xEDNX0=;3:/czZrDhVXyn3EsJbcoaLIXpN9t8CgfDefsf0q8FXw109FpDIOpGTyhysZ+UlFBd6RnjW1WltR7dzp5zmKYru7GV85HmraNKJ9MWIiYFbZlpJ0NXcfKd5wPzlpcGTQv/aKQqqiR+clkIj5ssjXJD68Q==;25:Ip4bB1nY5sVhPtxlZJK1tu91HFeZOIf2qqxNojK6xeOd0+BSQVectRt2CeRX2H9NhiMzNv8ZgHv5gyzNizsS+MP3ehFApPshroD4XIzM7H2XNx9t4JaLlHphk2l5Q7ququaKbfQJ4W7o+xKgh3QWiHOCuiG+kXUMxMCsKp8J4xScHvQ295FDZmwoiZR8/fQwWTvRrKPKFHI/1X3qdYvl4wGtQ4XqxxMY6ehS3t0d+PNXm5SCKqi19mxmn4aRTX1d3EbK+Yict6X/N1hFAUW7RQ== X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:CY1PR03MB1488; X-Microsoft-Exchange-Diagnostics: 1;CY1PR03MB1488;20:/FsXgu87CcEp5T+hruOmFc+F/VqqMtWVLAkhTv22gmGHQejYbtEizURE8MEDXzHhk6b+mpSn7gHJ7B2EM0BF191elT0BRrZjaN8C//CbsW7VdvG8cqSVIO4YHZdNVzZ0hYvnXFLRasuz5yVH2WVYzO9M7inKgchT/ps9MEX8LoLF3KgXPW3F4wPMbG5UAa2cQXe/RZrjhZTTwAfgseIZuSoDsDGHV+RKFNVutewxkE+Q1xCPAKu8fnLF2B217REUviAxFKKarf2dibK/Ru0tQA27sfbEoOLcPu9AdSPVkiYOE17sYXt0a3HFX6tjI0sQeqFPvBYPgfGPNAi5CAX/kd6fBYgRTG8/16GqGw0jatGh+PpHri+E5e5X64ONUXKft6zrNRXrnCpyYyik/EhsuaJkTW+bpWVKGepNMJIhe/e3olxR9RueXnMpsr0rW3cwuD4/iQvtla8NbxP8WJVChyCSBM+omA1ZOFEjz40KKey1rC23uK8kzHZ7GuhYvJCQ;4:9ZL1uhAbjnKoCIXIuH39ScqvPS7BZDENRmDQ875ywCzveQShFXwql7GbhxwpkW/1plQ1TP6QxHIqr4EgWjM3SzcVDygaUIgZEBcScrUVnKj5YDUpITB3mudQrXa9tdstdqgNx4aUs9Mspn8LSUk/tl+IMxmM7ENlfp+7otMtD8kw19mFLbgRIfUruD8tGsUQiFliQBHQxepjZsSrMBDZrwx+ZEL72/5gsbTFDNjR+KLuH51ixKwdQq3axhOI5A1EdngLagEDXcCcUmZmaEwni39SAuo9FwFIrBT7kFbQnQoKvxKjIg6KhDY7xazohn26 X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(601004)(5005006)(8121501046)(3002001);SRVR:CY1PR03MB1488;BCL:0;PCL:0;RULEID:;SRVR:CY1PR03MB1488; X-Forefront-PRVS: 06780E24F8 X-Forefront-Antispam-Report: SFV:NSPM;SFS:(10019020)(6009001)(189002)(377424004)(24454002)(199003)(106356001)(42186005)(2950100001)(50226001)(46102003)(105586002)(50986999)(5820100001)(5007970100001)(33646002)(50466002)(19580395003)(19580405001)(5004730100002)(122386002)(92566002)(40100003)(103116003)(81156007)(5001860100001)(64706001)(4001450100002)(77096005)(36756003)(97736004)(4001540100001)(5001830100001)(62966003)(87976001)(68736005)(47776003)(189998001)(86362001)(101416001)(23676002)(77156002)(110136002)(5001960100002)(76176999)(99106002)(3826002)(5001840100002);DIR:OUT;SFP:1102;SCL:1;SRVR:CY1PR03MB1488;H:[IPv6:2601:448:8100:f9f:12bf:48ff:fe84:c9a0];FPR:;SPF:None;PTR:InfoNoRecords;MX:1;A:1;LANG:en; X-Microsoft-Exchange-Diagnostics: =?utf-8?B?MTtDWTFQUjAzTUIxNDg4OzIzOkEwbktqZlNtemRTaXowNDZlSDFQT2UzMzV6?= =?utf-8?B?UVVDaEFHZ2xBbWNCamlIaU9EcktqcGpQajVmWHRHcU9salJQdGpLUXA2Ky8z?= =?utf-8?B?eVNlWkZuOGNCUTdYRTdzdExiaHFaRGY1M0lBa1YwYlo3dXEza1A4c1VvV0Zq?= =?utf-8?B?N2N4enl5dUxqUk1LanBNZE1FeFFQTVh2di93WlVYWkNaazZMbkM2U3ArU3Zn?= =?utf-8?B?SW5SNXlqRzFzNzlDNGE1N0hvWFJoelc3ZjAwSUhCU01CMWhIeEVpMWl5ZXpK?= =?utf-8?B?azY2cmkzdk5DOWZZMDVrNDhCd0pvYWQ4RjdKTXlxcVlkWTZJR2d4eUEwbHpn?= =?utf-8?B?aXVrZUlvWCtUQ01VZ3J0OW90SGQyTVhEeWpkWXpoOWF0RlU1NDlDbGdsemZj?= =?utf-8?B?TXAxYTgzeUhNRW1pRjAyRnI5VmNoREZEU0JEVE5aOTU4Ykd6T0FlTlovMksr?= =?utf-8?B?ZnFnOGorTW0yLzlIMkRkb0d6RHE5WUEvSzdJbktHeFJqYXorNTA2WGpyaGhG?= =?utf-8?B?Qno0YVFRTmh2bVo4UGdnSHRJNzlLUGMwVjF3NnJCdjQxcU9DNFR1K05aS3ha?= =?utf-8?B?LytCYktXZ3JxNm5ka25CNmQwQklKUGp6R0Jad0l6ejlEdi9zTmphZHAwVlVx?= =?utf-8?B?ZytGZEdhcE84bFhLcHFWbksxSk5RemU0Y0IwVUNtdWNwY3NiSVVmdTI4ckkv?= =?utf-8?B?Y1daOXJWLzNYWU9SK0cwQU8vZ0U0c2N5Ny93blFPdmx0eklycEFOVm1mZ3B0?= =?utf-8?B?SmE2YTBKUUhzb3dGSFBDTUNVYWpOb0trUjMyYkdWSFp2MGZCcGZRcnBicEpn?= =?utf-8?B?VzhNZi96NDQ1di94Vnk5VGM5TVAyb1FBWXl0WXlEYlV0RjJ1Z1gvcG92R1dK?= =?utf-8?B?UklNbndkYmRGaXJtVm9Fc0RyYmlWdGJiVGo5YmZLNGhBdkdnVC9OUTdDRzNQ?= =?utf-8?B?KzJYMnhTVTlRZFlpZ2QxbnpsdlRWdWUrbWxrODk1V2tUMmZjYUpsa2VNSGNP?= =?utf-8?B?UU1aY2djQmVJWDVZSGo4cUtqbkVDck14b2ZJaXR3RkZ6VzR2SXZ0dE9xQlpU?= =?utf-8?B?cE43V1hqR3UwK3laakFnd09KUXlhSUxrLzlNNXFtMUxXVVdxTVRpVzBPbDl2?= =?utf-8?B?bFZHTXlkbjBXcDZNdXlMd0lQOVJ3M0xweDlMYkNVWi9kRUtmV2xkMDZLcVIx?= =?utf-8?B?RS9za0gxUmk1NzlHeTh3Uk0yelEraVZ4OVlKNVloNFl1VFVMUC82eWhPM3ZZ?= =?utf-8?B?eHdGU3hhWk55U2ZyZkc5US9jejdvalR4YzZIWTRnK0k2VnRGVHI4ZzJyemxG?= =?utf-8?B?QU1EcDEwSUdDL2RVQlNtK3VxTkRBVVg4UGg1Y0lVcGovZWllRVJyY3pBUWts?= =?utf-8?B?YVZ2cHBCSFRJUkU3L0F5NXNKNUpTdkZmVmV0UzlDRkpKeFNjUUh5VXVsdXcz?= =?utf-8?B?Rjkvd1ovOHhGT2JLUTBYalA2U0hIUWZYVWMzd004QWpMV2R2WmI3elF6Q3A3?= =?utf-8?B?ZVJFQldCdWJpT2JSYlBxWEVoTThEMzhIdGU2SjJldDErQlpLd2p1YW5TNmQw?= =?utf-8?B?aUZYV3FWT0J0bC9oQXplVWM3ak5pWFcwZmlHbTRSdlQ3ZFpCM21BS3hZekRh?= =?utf-8?B?S05odTcwazZoZ1VvbDcwTHhNZG9sU3Fkeloza1hmS1IrS3ZGQUdKc2d3SGJN?= =?utf-8?Q?H0eAMxLXi4JeOEh2Rt7MtLRGdwq/rybZ53I6tRJ?= X-Microsoft-Exchange-Diagnostics: 1;CY1PR03MB1488;5:6V/LccSTR64d1QTiqKarHL7QEKFe2mcg8Gg6mHtVT5pf5L/V6+l4hv/3nndm/TlQpK7eGsqEZ9uW5KXIDwpS2+oFBAr5AadwdSBl2AIe7tld9CrDQsjx+bGoVRvTyznp+DeewgvGXxv+SD+K6p2HFg==;24:LqXoKipg2+Ya4XkhDBb36wGjh7hepUl576lJuTDGnX4zDKfJxh9XAYic4g/7fMRH3Z7+jGP5FbO8uA70ZGqP1BtJb6DMAgJMPti4HobwouE=;20:63rqtRROY/ryooWKEu2o+6Cp9aR6GuA1NnWRaH1doC0U+sJmHX9GQSTg+XpUNIDaFT5L1PUByqb4qpHAn6YDDQ== X-OriginatorOrg: freescale.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 24 Aug 2015 16:34:39.6326 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY1PR03MB1488 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 3033 Lines: 97 On Mon, 2015-08-24 at 17:31 +0800, Zhao Qiang wrote: > muram is used for qe, add qe_muram_ functions to manage > muram. > > Signed-off-by: Zhao Qiang > --- > Changes for v2: > - no changes > Changes for v3: > - no changes > Changes for v4: > - no changes > Changes for v5: > - no changes > Changes for v5: > - using genalloc instead rheap to manage QE MURAM > - remove qe_reset from platform file, using > - subsys_initcall to call qe_init function. This patch should come before the one that moves the code. > diff --git a/drivers/soc/fsl/qe/qe_common.c b/drivers/soc/fsl/qe/qe_common.c > new file mode 100644 > index 0000000..7f1762c > --- /dev/null > +++ b/drivers/soc/fsl/qe/qe_common.c > @@ -0,0 +1,193 @@ > +/* > + * common qe code > + * > + * author: scott wood > + * > + * copyright 2007-2008,2010 freescale Semiconductor, Inc. > + * > + * some parts derived from commproc.c/qe2_common.c, which is: > + * copyright (c) 1997 dan error_act (dmalek@jlc.net) > + * copyright (c) 1999-2001 dan Malek > + * copyright (c) 2000 montavista Software, Inc (source@mvista.com) > + * 2006 (c) montavista software, Inc. > + * vitaly bordug Why did you lowercase everyone's names? Why is this copying code rather than moving it? > diff --git a/include/linux/genalloc.h b/include/linux/genalloc.h > index 55da07e..aaf3dc2 100644 > --- a/include/linux/genalloc.h > +++ b/include/linux/genalloc.h > @@ -30,6 +30,7 @@ > #ifndef __GENALLOC_H__ > #define __GENALLOC_H__ > > +#include > #include > > struct device; This does not belong in this patch. > @@ -187,12 +190,41 @@ static inline int qe_alive_during_sleep(void) > } > > /* we actually use cpm_muram implementation, define this for convenience */ > -#define qe_muram_init cpm_muram_init > -#define qe_muram_alloc cpm_muram_alloc > -#define qe_muram_alloc_fixed cpm_muram_alloc_fixed > -#define qe_muram_free cpm_muram_free > -#define qe_muram_addr cpm_muram_addr > -#define qe_muram_offset cpm_muram_offset > +int qe_muram_init(void); > + > +#if defined(CONFIG_QUICC_ENGINE) > +unsigned long qe_muram_alloc(unsigned long size, unsigned long align); > +int qe_muram_free(unsigned long offset); > +void __iomem *qe_muram_addr(unsigned long offset); > +unsigned long qe_muram_offset(void __iomem *addr); > +dma_addr_t qe_muram_dma(void __iomem *addr); > +#else > +static inline unsigned long qe_muram_alloc(unsigned long size, > + unsigned long align) > +{ > + return -ENOSYS; > +} What code calls these functions without CONFIG_QUICC_ENGINE? Are you converting qe without cpm? Why? -Scott -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/