Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1756536AbcCUOkg (ORCPT ); Mon, 21 Mar 2016 10:40:36 -0400 Received: from mail-am1on0096.outbound.protection.outlook.com ([157.56.112.96]:42324 "EHLO emea01-am1-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1756505AbcCUOkc (ORCPT ); Mon, 21 Mar 2016 10:40:32 -0400 X-Greylist: delayed 938 seconds by postgrey-1.27 at vger.kernel.org; Mon, 21 Mar 2016 10:40:32 EDT Authentication-Results: spf=pass (sender IP is 193.47.165.134) smtp.mailfrom=mellanox.com; vger.kernel.org; dkim=none (message not signed) header.d=none;vger.kernel.org; dmarc=pass action=none header.from=mellanox.com; From: Noam Camus To: , , CC: , , "Noam Camus" Subject: [PATCH v6 0/3] Adding NPS400 drivers Date: Mon, 21 Mar 2016 16:24:29 +0200 Message-ID: <1458570272-23037-1-git-send-email-noamca@mellanox.com> X-Mailer: git-send-email 1.7.1 MIME-Version: 1.0 Content-Type: text/plain X-TM-AS-Product-Ver: SMEX-11.0.0.1191-8.000.1202-22206.007 X-TM-AS-Result: No--11.678900-8.000000-31 X-TM-AS-User-Approved-Sender: No X-TM-AS-User-Blocked-Sender: No X-EOPAttributedMessage: 0 X-Forefront-Antispam-Report: CIP:193.47.165.134;IPV:NLI;CTRY:IL;EFV:NLI;SFV:NSPM;SFS:(10009020)(6009001)(2980300002)(438002)(189002)(54534003)(199003)(1220700001)(87936001)(101416001)(6806005)(586003)(50986999)(81166005)(19580395003)(19580405001)(1096002)(86362001)(33646002)(49486002)(5003940100001)(47776003)(36756003)(189998001)(50226001)(92566002)(107886002)(4001430100002)(2906002)(50466002)(5001770100001)(15975445007)(11100500001)(48376002)(77096005)(229853001)(5008740100001)(106466001)(2201001);DIR:OUT;SFP:1101;SCL:1;SRVR:AM3PR05MB0678;H:mtlcas13.mtl.com;FPR:;SPF:Pass;MLV:sfv;MX:1;A:1;LANG:en; X-Microsoft-Exchange-Diagnostics: 1;AM1FFO11FD041;1:lR9WIn3a1vUh4le7fU09BTwVlG4wOgLh4vhh3WwUBf7rmcyRI2HT5wYIHJ5cLoj4bkVAjW3tLztxjqvXz+llHIRetWht49BEhrzMSt7sZi6b8v9nA2eKFYRCngkL+FF6eRS6kwpp4wN5BtAYKmA5XFVlUVZaR0apWlxMIDjvRN53oGMLRAb+jAH5GPPdXHpilDWNMOijE8apDZie/7FbROwLn85M8Yv1y+n6UD3CxIlEC44D4HvA/bJ88+41v+dqE+HypkhNPWw2kgBxRui/y68PCVRWfQVsQTfQFdRsXsUJEQei/clUlJwFaqcVBhfl0wbfgrE1s/+1aSjlGns3tDxBfCZh/6e53OhBxdU6WfeR30NIcCfifqBA69DaMi4tGfE/cLij4wmzEtxdxeHN6zekRWxt8G84vA76GC/4nN5C0or8DrTCBbASNIjgjwAmsbX458MBflTe54fguoLPGtc4wM3amac4G4wUtGMiHm0fH5tRTCmwMWc3A3bBcA0R X-MS-Office365-Filtering-Correlation-Id: 73ce5477-ce81-4b88-b0ac-08d351949028 X-Microsoft-Exchange-Diagnostics: 1;AM3PR05MB0678;2:Yr0MHRBI2HHnaNUrcHw0rGuZKIFUO+qb+yzt4cmFiFodiNgk4GVCF1SGjALBzIc3AmEfnzBXCXiolBNs+CitocRgagaYRxVevnnQTglTvHlj61Sdh4eDzHZ/+GdiNAc+V0c8srhycpNwb2/xppPeiEylWQOtGicC2zlr/zB+fGscUr1soAgdhOoR0bSk+BI1;3:AKTp0MzeKZIuWEhw0jFk3MXJu3nMM/SI4j/tpqG5+s8b2NB/2vrqqlH2ofEJTm6RSjxM40KSXsRZQmdUZtAUM5UzO996bOxR/SXbu6N1kMYZ+oBuso8kVTkekMeEqji/ou4jtnSCICyeWj9bDEvI1wwNi3bq+s0UHWuHbjAe3l51lVzjcEdy8jqoT8nsfBO3iHp/0bsVVUIUSKtS494hYSEw/5lJ22VS4V317z295F6l2hVHj/Jg68qczPuvfBz1Drl1s8Clk2DQlA4+MGxZ+w== X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:(8251501002);SRVR:AM3PR05MB0678; X-Microsoft-Exchange-Diagnostics: 1;AM3PR05MB0678;25:PC3uaMRZHapLSXoYvKUBK/gGFHYyBAilcK0XNUR/rGXVoJFQmp0tptZ6/yMPlY6kO06Zcn46c+heDqXT979vn8a8Vpm2jp4FJ0uovVmkRfaEZ726iwd5+7+fITN9Yl6rF635RUEj4U6hCTln63+Vuq4BH/HS8qjwfwr0K0CYlJhJNqPxqQPXSki3xmXwOSdNLY+lhUlHQaoQ9NqE0Q36jtNJsXO3+sOGYH558gAudFfHYTDG8rnP7mMeboKS6H0+24uvXSUEFVlQh172GM1Jdxa1P//z7N+2uscEhyMYzdXFQdglHkNe91ERBXOkGrMe2l1cMVQSBLp2+Fk1hEvdIKcdnfUdouR6sGROQdgei9oo8ksWcMJ2Do6lb31sxwpoQWtzSMtDySOi96pyZpIR4XKR5fTpeH34vJctVVR1fP/9NH6tsWFTDYf548KciKJXmyPOdGQ5vmYnzt3eguISK/7FbuGsJYh/SZ63S46j+WtrKYir9J0Dhm72jprEvERGGW+gIrq6SIKDBgKeag9kfzdVB25VLqu8bzCn67Q29iHAGFkYOnYhhsIF6YrYXIQld7oVC1XPL/bnbrSTV8q7CydpVSnnYjz7EO3HUfx2X5A= X-Microsoft-Exchange-Diagnostics: 1;AM3PR05MB0678;20:UvjlFT5R5k8D5Cg9J8BtT+6Eaya7av0/pNr1iUI0kaueCNseRNRktfMcn+FqSEFhyW7KAIQmhQxdBvsir9OWdzOEv8tvR+alWoRVpOQGZhue0ScDgSVesV3DwZAdMhJT58tnD854ysZsYKM7XEGOo5TsIdv7y1yMYb/PpCqejoEJY+psLqk8PscuK1hRmULOUBLwETy4WXwM1fAt0EN/mUDc2xwklnrJIRiA8s0xcZNI7A3NAfNs+S7vUzSkk/zBrXjLqCZJStcg+DD4pXEQyV1LsxDDTlliTnb0GWIPYMhgKqmubV/n0UltbgT2yCW68CGor+zy0Gx/l0cUpDTNNwW4KhJ3Cr0bz0ofdlPjfkgSvoAC4yWmWqXJBR64ihJZA1HakSB74Jgoc3TYpRVI9WoCaUWHDM58a8smutgi5OkXisiGEROFyLIjzIb1qIG7IF1I3OxgDIZoWTS5pwLdDOSCyv+LeXcLyl5K+dBr2W4YozlF9WVKu/gXRHrV5L52 X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(601004)(2401047)(5005006)(13018025)(13023025)(13017025)(13015025)(13024025)(8121501046)(3002001)(10201501046);SRVR:AM3PR05MB0678;BCL:0;PCL:0;RULEID:;SRVR:AM3PR05MB0678; X-Microsoft-Exchange-Diagnostics: 1;AM3PR05MB0678;4:W3xVXZnYxq/DDRWzCnA7VCeJvrp2U9Qc/i+Qghzsy2j3eqoo5UebAm7nSmzLLQybJEYquxFYtcyAIHSDvAEqXU4FpfM4x4qbKt7HlfW0j9o5pKtEYjXApl6NQq8tp5USsUYYaE1z9hCLzVOHa9yzTtbu4Yq2Aia/hqRH+4XxQcd/5lm937PP+Hn2puHtTIgoss3zQJ6jIYRyvbj16QFR/d5YUjc6wI5xLWlMj7LCbqyuWoCzOxfsIZaYKD6oiWpaPgYWIM6q5DZYZZdfs3jKTyyDUEleabQYt7kpzbyU4wrei12v6OofgSLssR4fAH3KN8iyQwCbA16qv88dousXFUw9bld0txXyju+mDWzdUGQqpoHEMtLLwnt2N4YlQxCv0ipGVAFpwo/ahwwjGSPwNrX30b35VykV+zwJKbipACkAcYjQRm76+esNfaIopoxlvy4mNTR14EToyPMJ8og4Ag== X-Forefront-PRVS: 0888B1D284 X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1;AM3PR05MB0678;23:ToZy6hVpCBSK4eoAxLOUCjTjHm5gTulIPo05aJRMc?= =?us-ascii?Q?AsXgs1nJMolOhzYSEHXxlmXS9b3pQoKmITLoM4xIEongYYBoihG/HkNkVH6O?= =?us-ascii?Q?jJw1s34J31r8t57TSjQTMteY8e/mdJa8hQi5z2QEmU6BQJD4MbkARq8XZOOQ?= =?us-ascii?Q?6fxYYmzoqyGlfIn0DD3jIUaskMy64PjqJlROsUWi30fGSb8/pXd77N7KXACh?= =?us-ascii?Q?v94xhBOuHFV02+lPka9Z9tzSk7+fHwpM2mwdKzHJv3LrCNgyoxPCXZgUyd+B?= =?us-ascii?Q?1jArtKbBCeNi73bE/tR6kUZyLGm5Ar+mv+nAJ2kOE2esNujpZeTxlVaBlqxl?= =?us-ascii?Q?0MrN9iAY5MNeKeD6eba0THL1DqSIYziieon+tSLVO1uVcIYSnbeZNptZDzjS?= =?us-ascii?Q?hK7Rm/T9CjUnjYgG79VnQXRjMrF25zZ48QcbJyfw+eywqsCBmBQtJty0yHw5?= =?us-ascii?Q?MDH4ffP6RJNebMCxSeWZuzrES8LD4z4U43a3zE7q5jeb53/Qs0mPk91M7e6z?= =?us-ascii?Q?tt2apGb5H1XdzqwFKcPS5FPqbt1wADoM9Ol5P/36mvLxkTwlru5BcJdEvddR?= =?us-ascii?Q?yIxufZ9NmaYCKyjbgauEwU/MineRXo/tL41fWlxvj51PQ34cUkZ0DmufO8pV?= =?us-ascii?Q?KZHxO+s38Gttq06tLcwVwumTF8ddO8YnuCZfBTZ0PE8cC/4IZdtH31SO/s8O?= =?us-ascii?Q?GpoRk/Jv+8qU9xXPakz0KEORP8SA3SyEs8aTQ8nI1EJv5Akx575k6NW3riZs?= =?us-ascii?Q?DbwXUwpA0cR0JRovC0l2I2ypUcYg6rmmeNZLeOLRZv1qDUe1p8xwMY8iToZb?= =?us-ascii?Q?OaVJCehwb0a4l/11SXUSLpT4GcqmCfK+oUgcPdlZG97JKs3NreFGHi4FClMw?= =?us-ascii?Q?UH/rNkUVpTGqySmnLINf/vv9AjPa9UWOfuB0GleAxv/SU31H3rjw2PHuuR2e?= =?us-ascii?Q?oime8Rn0F4DsZg4LofKxu+gOsggTlC9BEITGUgVbHyJavv7pjDzG1tiR2LsJ?= =?us-ascii?Q?OPo2l3eEe+d54KFpPLBtYwfaAnSVUvkj3tCYP4bEL32Bg=3D=3D?= X-Microsoft-Exchange-Diagnostics: 1;AM3PR05MB0678;5:/W8Suio0fiSatxmkIv+o8r335G09BKEXwC+ZoXejUQAwhK9QSC/B7Snu1ZuatcEyqaK9DXK+t3fqdjG0yYc8wbjlNh+iJUM4M2hPrtbK0NNODZAyEWTicIlbROKVemT+yrl6JCBbBw+Qz17tW3UACw==;24:P2NfwVaUlHnWSyTa5fa6KTvOxAU9ny8xrmd+ArjQcXMHdkBkQgZxGavNys2gaz7yRYj8pXQaTBBcbOA2OxklVsREPm8OXcRcr5MBPwABx2o= SpamDiagnosticOutput: 1:23 SpamDiagnosticMetadata: NSPM X-OriginatorOrg: Mellanox.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 21 Mar 2016 14:24:50.3095 (UTC) X-MS-Exchange-CrossTenant-Id: a652971c-7d2e-4d9b-a6a4-d149256f461b X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=a652971c-7d2e-4d9b-a6a4-d149256f461b;Ip=[193.47.165.134];Helo=[mtlcas13.mtl.com] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM3PR05MB0678 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 3024 Lines: 75 From: Noam Camus Change Log-- v6: Files headers changed to start with: Copyright (c) 2016, Mellanox Technologies ... This is due to the acquisition of EZchip made by Mellanox. One can still find "EZchip" used in tree, and this is ok. This patch set is a requierement before I can insert new platform to ARC, one that supports the NPS400 SoC. v5: Clocksource, irqchip - Fix gracefull return. replace call to panic() with pr_err() and proper return value. v4: clocksource -- Apply all Daniel comments (Thanks) Handle gracefull return and also using clocksoure mmio driver at init v3: irqchip - Fix ARM build failure by adding missing include of linux/irq.h clocksource -- Avoid 64bit arch's to build driver by adding new dependency !PHYS_ADDR_T_64BIT This is since we use explicit io access of 32 bit. So for test coverage we allow not only build for ARC, but restrict it to 32 bit arch's. irqchip - Apply all Thomas comments (Thank you) v2: Add header file include/soc/nps/common.h. Now to build we do not depend on ARC subtree. General summay: Both drivers are now apart of previous basic patch set of new platform for ARC. The rest is now can be seen at ARC srctree: https://git.kernel.org/cgit/linux/kernel/git/vgupta/arc.git/ Now ARC is supporting DT for clockevents and the interrupt controller ARC uses irq domain handling. Compare to last version now clocksource driver do not include clockevent registration since NPS400 can use ARC generic driver. Compare to last version now irqchip driver sets domain as default since it is the root domain. Also mapping of IPI is done in this driver. Last thing is that drivers can be build cleanly for i386 (still runs only for ARC) Note: in order to build we need to merge drivers into srctree which includes new header: soc/nps/common.h This header is part of patch set applied to ARC srctree. Regards, Noam Camus Noam Camus (3): soc: Support for EZchip SoC clocksource: Add NPS400 timers driver irqchip: add nps Internal and external irqchips .../interrupt-controller/ezchip,nps400-ic.txt | 17 ++ .../bindings/timer/ezchip,nps400-timer.txt | 15 ++ drivers/clocksource/Kconfig | 10 ++ drivers/clocksource/Makefile | 1 + drivers/clocksource/timer-nps.c | 98 ++++++++++++ drivers/irqchip/Kconfig | 6 + drivers/irqchip/Makefile | 1 + drivers/irqchip/irq-eznps.c | 165 +++++++++++++++++++ include/soc/nps/common.h | 166 ++++++++++++++++++++ 9 files changed, 479 insertions(+), 0 deletions(-) create mode 100644 Documentation/devicetree/bindings/interrupt-controller/ezchip,nps400-ic.txt create mode 100644 Documentation/devicetree/bindings/timer/ezchip,nps400-timer.txt create mode 100644 drivers/clocksource/timer-nps.c create mode 100644 drivers/irqchip/irq-eznps.c create mode 100644 include/soc/nps/common.h