From patchwork Thu Nov 26 07:57:59 2015 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Yao Yuan X-Patchwork-Id: 548965 X-Patchwork-Delegate: yorksun@freescale.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 AD5E91402CD for ; Thu, 26 Nov 2015 19:19:48 +1100 (AEDT) Received: from localhost (localhost [127.0.0.1]) by theia.denx.de (Postfix) with ESMTP id 583C54B8F8; Thu, 26 Nov 2015 09:19:46 +0100 (CET) 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 4yQs7hY-_8L8; Thu, 26 Nov 2015 09:19:46 +0100 (CET) Received: from theia.denx.de (localhost [127.0.0.1]) by theia.denx.de (Postfix) with ESMTP id C35CF4B8F3; Thu, 26 Nov 2015 09:19:45 +0100 (CET) Received: from localhost (localhost [127.0.0.1]) by theia.denx.de (Postfix) with ESMTP id 478164B8F3 for ; Thu, 26 Nov 2015 09:19:43 +0100 (CET) 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 eveDwjDD3EbS for ; Thu, 26 Nov 2015 09:19:43 +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 na01-by2-obe.outbound.protection.outlook.com (mail-by2on0109.outbound.protection.outlook.com [207.46.100.109]) by theia.denx.de (Postfix) with ESMTPS id 460A84B8F1 for ; Thu, 26 Nov 2015 09:19:39 +0100 (CET) Received: from BY2PR03CA070.namprd03.prod.outlook.com (10.141.249.43) by BN3PR03MB1461.namprd03.prod.outlook.com (10.163.35.12) with Microsoft SMTP Server (TLS) id 15.1.331.20; Thu, 26 Nov 2015 08:05:12 +0000 Received: from BL2FFO11FD036.protection.gbl (2a01:111:f400:7c09::124) by BY2PR03CA070.outlook.office365.com (2a01:111:e400:2c5d::43) with Microsoft SMTP Server (TLS) id 15.1.331.20 via Frontend Transport; Thu, 26 Nov 2015 08:05:12 +0000 Authentication-Results: spf=permerror (sender IP is 192.88.158.2) smtp.mailfrom=freescale.com; lists.denx.de; dkim=none (message not signed) header.d=none;lists.denx.de; dmarc=none action=none header.from=freescale.com; Received-SPF: PermError (protection.outlook.com: domain of freescale.com used an invalid SPF mechanism) Received: from az84smr01.freescale.net (192.88.158.2) by BL2FFO11FD036.mail.protection.outlook.com (10.173.161.132) with Microsoft SMTP Server (TLS) id 15.1.331.11 via Frontend Transport; Thu, 26 Nov 2015 08:05:11 +0000 Received: from titan.ap.freescale.net ([10.192.208.233]) by az84smr01.freescale.net (8.14.3/8.14.0) with ESMTP id tAQ858QV003408; Thu, 26 Nov 2015 01:05:09 -0700 From: Yuan Yao To: Date: Thu, 26 Nov 2015 15:57:59 +0800 Message-ID: <1448524683-48444-1-git-send-email-yao.yuan@freescale.com> X-Mailer: git-send-email 2.1.0.27.g96db324 X-EOPAttributedMessage: 0 X-Microsoft-Exchange-Diagnostics: 1; BL2FFO11FD036; 1:qrtVQ3RB8Z41yv4L2fRX860BbaxOOJmrSMW5opdQ8+w/QrjIacYFVgRYxSM5Ryn3xeBqjq+njVU1C+jBBM1zqR6RPcjkBRgRrpRcvKIrmzTYqcKirrgZs+seCEM8Zl/ix79MQc9yEs+F3+BdimDnEcre3WhKXtQBBKwVNr3AqHA68SgPXmgAHT+Om0tm+uXNNzpZLVkrCtJlMfZtYCOjQEUMZee1B8h/aOAKH3kuUe15hMctzgSTjEROex/vBaPo6gEjR/25PXRjnTQR9sczFUcNMX7QGn0j1cdnB7I0YPcDWM91wtNKoI1IMWoZKS4AkgG1xIWzYIKAHmTgIyHowM6Kh4XSTy5JiAX1aiD5bYom4B/U0wA/CSexcwkcmdgnbYucaA4hchlIHYJ1wOkjIiyezrEY/np4O7JpZHBjsJg= X-Forefront-Antispam-Report: CIP:192.88.158.2; CTRY:US; IPV:NLI; EFV:NLI; SFV:NSPM; SFS:(10019020)(6009001)(2980300002)(448002)(199003)(189002)(77096005)(36756003)(551934003)(50986999)(586003)(5003940100001)(4001450100002)(1220700001)(86362001)(450100001)(11100500001)(47776003)(2351001)(92566002)(2371004)(229853001)(19580405001)(87936001)(69596002)(110136002)(5008740100001)(85326001)(33646002)(189998001)(81156007)(6806005)(104016004)(5001960100002)(19580395003)(48376002)(50466002)(106466001)(50226001)(97736004)(1096002); DIR:OUT; SFP:1102; SCL:1; SRVR:BN3PR03MB1461; H:az84smr01.freescale.net; FPR:; SPF:PermError; PTR:InfoDomainNonexistent; A:1; MX:1; LANG:en; MIME-Version: 1.0 X-Microsoft-Exchange-Diagnostics: 1; BN3PR03MB1461; 2:m+aw+vp/Wq0JGL7aRRIYw3P9kIr1bgBJ1RquyJaboZoRP5JzyThDrwGgBAgwrggMdT7+6fBih2thNwRSbjyMxATakez4Ik4/BftxqOtkCIvxedE6pVJYqutResTDASPv6cayiKqEEsZVsKPmDQN1Xg==; 3:qFsMwPCNir4P7DPh+s5Z8WNhjIhs5z0itiGQEBjKijF9gyHs0NSdPSTdPjjFEGnxt1Vq5yejUxU9XyAq7mBC5CcKxFvNc1fLwdHsD6ErS0YJYpL1DTkCc+qwmT53HVUQnzE0dKV8rs8S/lBYH4axpqtXYw9ifw+5C+EKWMqQ3wpcLd4O8zjL62WflF33JpcmOfu6foo04VItAeptz7c4wiSM/B5XELeje23/Wooz3ds=; 25:Dh7pUVEnz+npHVKu5oEYXnpz20zGB5QhMLO+M9uQHA/BZgn3rK0y/3tXXfzGt8hj9O8RQNXejc6AUeJgw86aRKSYge/RpGzIej6Ht5TBKG7R/+z4ATS49Sq+isuP/B/AGCHFJ4+ja6VADAAVJ9vHfivE1HsI56RZ7em6RPnZeI5vuHpK5LzM4a+zslr8OTJHDSJmKpCY6RLVbtFZKGFplh+c1H+KEYyQ/PpPw8FtzBGVRcxNs5ryKtF/TDFC/7ttDDvtw8iZ+u9VRXjlbXPhZw== X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:BN3PR03MB1461; X-Microsoft-Exchange-Diagnostics: 1; BN3PR03MB1461; 20:tTLUTrAOWDOcOdiWX0+waTy+oxk1U+y4l9/p9H2DVTK43X890i9xXDA5OkeJRnWTEFqfHUXwK38gQ6b7sOtD+R4nqsjGWHCdnnS46N1wtWvAUFOnaVGFry5Wynz1A3BAAya3ZJXtTA+9KIsF5gJluUJQVZLTiIx97hSzAwmLNTSo4Nt2/5LNWBdfkbHHAOEnNKD5xvYhs2sKVcJQr9LJBgDGG71pQCgg3MmvXlM6JJtUIzz7xxRvEvP1FkrNQ00UfIjwJs1lqPFXlyW/ST/ZFkEMpD4tqTcIBtfde7XppdL7i5pZ+snzRt/Ofpm1TuccZPkY6X/q+cEHwdY0EKCwxbVFAB45TKw+Y5Jgc3aQDLE=; 4:rwOy8jvNUUaw8wDpFrkBvUe5SWFNfUaq9XyPNQYdEvz2jngjga7LHaGMHbywwazdFMyolcF6qtVE6FvEjTH0pkP1kK4AmCqH43cuhf3N1U8mT51ZLl1GbpsoiezhtNyCf86/I05iF9Xmu9DSvlVqE1jhh/MkJ+x9HlRhGwVS99Qnw6gqnLmVQVfICUdpRvGCQ5KuRHG1InRugihQWcbueL9UiSXd0CJWdK8E+fTLjOHxrNgkb+JWWIkoYu4LZneOfYEAPNgR+0erjizGs114D7u24Wxzd+op8ZrVKV+MY3WK24OLAG1juuObF/4BplDbtuTt+vYvMwlnJVKy24lMk1ULpvuv/fyHWfWSqSVCbpGYwyrZCD4CSZynALhIgWvvWY3NJY3lra+DC2ByZxO2gWUwEw2wo01sJ8O6Oh2dJ+S5N4aWAlc+IXAc+RvvDndb X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(101931422205132); X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(601004)(2401047)(520078)(5005006)(8121501046)(10201501046)(3002001); SRVR:BN3PR03MB1461; BCL:0; PCL:0; RULEID:; SRVR:BN3PR03MB1461; X-Forefront-PRVS: 0772E5DAD5 X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; BN3PR03MB1461; 23:RVfj8TDzdvAB2zKR6C9BOrzmikmDYU+rBBhXYchU7?= =?us-ascii?Q?k7Du5O87V/L4iZ+t6kmKj9rUXgXDSDcTvZcxP2PzPT2g7U5A0nOCshgvkPNW?= =?us-ascii?Q?PMtU/tiX7sxwewU0c4G/R7E9/j2EHM1NZyPnh4T0wviv3C86oJ2VvTTjs8b7?= =?us-ascii?Q?2xLm4lY931pAYphtQQmwzAlfx5fnqwH47D9LwHzhJIDvE5ILuwH3fcOSbZXu?= =?us-ascii?Q?ou3HEx1XHN49+t4A48P98XyUzxc6lYn4JXmzc2pewzVR/h3PoGmnseJ9G3BA?= =?us-ascii?Q?6xmn+sScdFlh/K+gjL7Xg5Es+kZar8tROogB5NWnCkZ+SRPfFBs54Fi0sXeM?= =?us-ascii?Q?qsTNujrVGpDLK/Rq48rlTNJmXG966sVGCLEEMFpoPjzEF3UOYWQk0CMMtmdc?= =?us-ascii?Q?T8yzE8TQATMLCmhZN5T0OH6Ce5LXWFwUXfmCje1atqFwkLuDWnPR+MdNxaLH?= =?us-ascii?Q?UVpIDvxBwzW6M2DqV7wChnBmNwLRpppZzJxiVpTXP7AJ/5i5YZTm2AFTNM0V?= =?us-ascii?Q?PTT01pUiR6RswQ0nvJMCGbLd8cIZfEpQAZ+bR+XK8cz8ojfIQj/wyCM0JwWF?= =?us-ascii?Q?VYTvTCT6W5NopCrzjE7pNf5JG64my9goUrYuBqCMahJJ4B5AGCkZhjY+3gW/?= =?us-ascii?Q?Pr1anuk2dDFO97NZDrUS/yAUiiIR/qCPVMMQeMpJph2ASM3s0/0ThYWQ3z7R?= =?us-ascii?Q?B8j0MLTdFlspD6m0GGk7Ngh78hwkU46iWjIepYOwcjywgNMQnehSjgCmgI/P?= =?us-ascii?Q?35gFl5NlrSqodwpnxxCPK6Ls0vcPxS7aup8DOx/aNuEsPrdhtqtrg6uI9rkg?= =?us-ascii?Q?We+EJBAdDeJ2DpgttArCAnSvGFalf7CbBDMVl+gUPaIPJXaCYj3YvQXngFxK?= =?us-ascii?Q?GK1c2XSksH3yKoNg5KYNFOkmhWguYr+LGy3L5twUaVBnOaDnlYZVR44Eecn9?= =?us-ascii?Q?RiCuZDljT0zUnpMiBO6jI+vFpPc/5uiLfxebL+OASz3f6VcsTR1ja+2Kf/a1?= =?us-ascii?Q?gX0By35Hp50WotfHjDPGDY/Pb3KUwHSHAl5u/ZIHnU+BzJvCJuL+wRry2Q9g?= =?us-ascii?Q?Iubi/cfJxT4fP8371AvfCZy2Uud?= X-Microsoft-Exchange-Diagnostics: 1; BN3PR03MB1461; 5:aVSB2SGoMNeeHos7ODJdxvWUEj3byi87gUKZbee+OG7fbjl1+h8LigJiTBYJEkFr5eXwAoxfxSnS4i0/yqL8Ndzuia1SiVNxrXL8NOi0B+BX/dOXugovUHaUlaw47FlMvOH01kmRNbgt06leOQ3F+Q==; 24:Iki5MICiN+DX8P0eXJeWUcuPOeop+4SgBvtHN+JLhl6ZgjOFtNwNK9Dak0cbdrOMHLZSN/kwIEWo+OJITxCGOUa5/+eza2/T68/fm/86UBc= X-OriginatorOrg: freescale.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Nov 2015 08:05:11.3117 (UTC) X-MS-Exchange-CrossTenant-Id: 710a03f5-10f6-4d38-9ff4-a80b81da590d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=710a03f5-10f6-4d38-9ff4-a80b81da590d; Ip=[192.88.158.2]; Helo=[az84smr01.freescale.net] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN3PR03MB1461 Cc: u-boot@lists.denx.de, alison.wang@freescale.com Subject: [U-Boot] [PATCH 1/5] arm: ls1021a: merge SoC specific code in a separate file X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.15 Precedence: list List-Id: U-Boot discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: u-boot-bounces@lists.denx.de Sender: "U-Boot" Create a soc.c file to put the code for soc special settings. Signed-off-by: Yuan Yao --- arch/arm/cpu/armv7/ls102xa/Makefile | 1 + arch/arm/cpu/armv7/ls102xa/soc.c | 66 +++++++++++++++++++++++++ arch/arm/include/asm/arch-ls102xa/ls102xa_soc.h | 12 +++++ board/freescale/ls1021aqds/ls1021aqds.c | 49 +----------------- board/freescale/ls1021atwr/ls1021atwr.c | 42 +--------------- 5 files changed, 83 insertions(+), 87 deletions(-) create mode 100644 arch/arm/cpu/armv7/ls102xa/soc.c create mode 100644 arch/arm/include/asm/arch-ls102xa/ls102xa_soc.h diff --git a/arch/arm/cpu/armv7/ls102xa/Makefile b/arch/arm/cpu/armv7/ls102xa/Makefile index 2311468..0228300 100644 --- a/arch/arm/cpu/armv7/ls102xa/Makefile +++ b/arch/arm/cpu/armv7/ls102xa/Makefile @@ -8,6 +8,7 @@ obj-y += cpu.o obj-y += clock.o obj-y += timer.o obj-y += fsl_epu.o +obj-y += soc.o obj-$(CONFIG_SCSI_AHCI_PLAT) += ls102xa_sata.o obj-$(CONFIG_OF_LIBFDT) += fdt.o diff --git a/arch/arm/cpu/armv7/ls102xa/soc.c b/arch/arm/cpu/armv7/ls102xa/soc.c new file mode 100644 index 0000000..0fdd6d4 --- /dev/null +++ b/arch/arm/cpu/armv7/ls102xa/soc.c @@ -0,0 +1,66 @@ +/* + * Copyright 2015 Freescale Semiconductor, Inc. + * + * SPDX-License-Identifier: GPL-2.0+ + */ + +#include +#include +#include +#include +#include + +unsigned int get_soc_major_rev(void) +{ + struct ccsr_gur __iomem *gur = (void *)(CONFIG_SYS_FSL_GUTS_ADDR); + unsigned int svr, major; + + svr = in_be32(&gur->svr); + major = SVR_MAJ(svr); + + return major; +} + +int arch_soc_init(void) +{ + struct ccsr_scfg *scfg = (struct ccsr_scfg *)CONFIG_SYS_FSL_SCFG_ADDR; + struct ccsr_cci400 *cci = (struct ccsr_cci400 *)CONFIG_SYS_CCI400_ADDR; + unsigned int major; + +#ifdef CONFIG_FSL_QSPI + out_be32(&scfg->qspi_cfg, SCFG_QSPI_CLKSEL); +#endif + +#ifdef CONFIG_FSL_DCU_FB + out_be32(&scfg->pixclkcr, SCFG_PIXCLKCR_PXCKEN); +#endif + + /* Configure Little endian for SAI, ASRC and SPDIF */ + out_be32(&scfg->endiancr, SCFG_ENDIANCR_LE); + + /* + * Enable snoop requests and DVM message requests for + * Slave insterface S4 (A7 core cluster) + */ + out_le32(&cci->slave[4].snoop_ctrl, + CCI400_DVM_MESSAGE_REQ_EN | CCI400_SNOOP_REQ_EN); + + major = get_soc_major_rev(); + if (major == SOC_MAJOR_VER_1_0) { + /* + * Set CCI-400 Slave interface S1, S2 Shareable Override + * Register All transactions are treated as non-shareable + */ + out_le32(&cci->slave[1].sha_ord, CCI400_SHAORD_NON_SHAREABLE); + out_le32(&cci->slave[2].sha_ord, CCI400_SHAORD_NON_SHAREABLE); + + /* Workaround for the issue that DDR could not respond to + * barrier transaction which is generated by executing DSB/ISB + * instruction. Set CCI-400 control override register to + * terminate the barrier transaction. After DDR is initialized, + * allow barrier transaction to DDR again */ + out_le32(&cci->ctrl_ord, CCI400_CTRLORD_TERM_BARRIER); + } + + return 0; +} diff --git a/arch/arm/include/asm/arch-ls102xa/ls102xa_soc.h b/arch/arm/include/asm/arch-ls102xa/ls102xa_soc.h new file mode 100644 index 0000000..f10cb91 --- /dev/null +++ b/arch/arm/include/asm/arch-ls102xa/ls102xa_soc.h @@ -0,0 +1,12 @@ +/* + * Copyright 2015 Freescale Semiconductor, Inc. + * + * SPDX-License-Identifier: GPL-2.0+ + */ + +#ifndef __FSL_LS102XA_SOC_H +#define __FSL_LS102XA_SOC_H + +unsigned int get_soc_major_rev(void); +int arch_soc_init(void); +#endif /* __FSL_LS102XA_SOC_H */ diff --git a/board/freescale/ls1021aqds/ls1021aqds.c b/board/freescale/ls1021aqds/ls1021aqds.c index d889ad5..be3358a 100644 --- a/board/freescale/ls1021aqds/ls1021aqds.c +++ b/board/freescale/ls1021aqds/ls1021aqds.c @@ -11,6 +11,7 @@ #include #include #include +#include #include #include #include @@ -140,17 +141,6 @@ unsigned long get_board_ddr_clk(void) return 66666666; } -unsigned int get_soc_major_rev(void) -{ - struct ccsr_gur __iomem *gur = (void *)(CONFIG_SYS_FSL_GUTS_ADDR); - unsigned int svr, major; - - svr = in_be32(&gur->svr); - major = SVR_MAJ(svr); - - return major; -} - int select_i2c_ch_pca9547(u8 ch) { int ret; @@ -193,8 +183,6 @@ int board_mmc_init(bd_t *bis) int board_early_init_f(void) { struct ccsr_scfg *scfg = (struct ccsr_scfg *)CONFIG_SYS_FSL_SCFG_ADDR; - struct ccsr_cci400 *cci = (struct ccsr_cci400 *)CONFIG_SYS_CCI400_ADDR; - unsigned int major; #ifdef CONFIG_TSEC_ENET /* clear BD & FR bits for BE BD's and frame data */ @@ -205,40 +193,7 @@ int board_early_init_f(void) init_early_memctl_regs(); #endif -#ifdef CONFIG_FSL_QSPI - out_be32(&scfg->qspi_cfg, SCFG_QSPI_CLKSEL); -#endif - -#ifdef CONFIG_FSL_DCU_FB - out_be32(&scfg->pixclkcr, SCFG_PIXCLKCR_PXCKEN); -#endif - - /* Configure Little endian for SAI, ASRC and SPDIF */ - out_be32(&scfg->endiancr, SCFG_ENDIANCR_LE); - - /* - * Enable snoop requests and DVM message requests for - * Slave insterface S4 (A7 core cluster) - */ - out_le32(&cci->slave[4].snoop_ctrl, - CCI400_DVM_MESSAGE_REQ_EN | CCI400_SNOOP_REQ_EN); - - major = get_soc_major_rev(); - if (major == SOC_MAJOR_VER_1_0) { - /* - * Set CCI-400 Slave interface S1, S2 Shareable Override - * Register All transactions are treated as non-shareable - */ - out_le32(&cci->slave[1].sha_ord, CCI400_SHAORD_NON_SHAREABLE); - out_le32(&cci->slave[2].sha_ord, CCI400_SHAORD_NON_SHAREABLE); - - /* Workaround for the issue that DDR could not respond to - * barrier transaction which is generated by executing DSB/ISB - * instruction. Set CCI-400 control override register to - * terminate the barrier transaction. After DDR is initialized, - * allow barrier transaction to DDR again */ - out_le32(&cci->ctrl_ord, CCI400_CTRLORD_TERM_BARRIER); - } + arch_soc_init(); #if defined(CONFIG_DEEP_SLEEP) if (is_warm_boot()) diff --git a/board/freescale/ls1021atwr/ls1021atwr.c b/board/freescale/ls1021atwr/ls1021atwr.c index 4918c11..8eaff5f 100644 --- a/board/freescale/ls1021atwr/ls1021atwr.c +++ b/board/freescale/ls1021atwr/ls1021atwr.c @@ -12,6 +12,7 @@ #include #include #include +#include #include #include #include @@ -138,17 +139,6 @@ int checkboard(void) return 0; } -unsigned int get_soc_major_rev(void) -{ - struct ccsr_gur __iomem *gur = (void *)(CONFIG_SYS_FSL_GUTS_ADDR); - unsigned int svr, major; - - svr = in_be32(&gur->svr); - major = SVR_MAJ(svr); - - return major; -} - void ddrmc_init(void) { struct ccsr_ddr *ddr = (struct ccsr_ddr *)CONFIG_SYS_FSL_DDR_ADDR; @@ -394,8 +384,6 @@ conflict: int board_early_init_f(void) { struct ccsr_scfg *scfg = (struct ccsr_scfg *)CONFIG_SYS_FSL_SCFG_ADDR; - struct ccsr_cci400 *cci = (struct ccsr_cci400 *)CONFIG_SYS_CCI400_ADDR; - unsigned int major; #ifdef CONFIG_TSEC_ENET /* clear BD & FR bits for BE BD's and frame data */ @@ -407,33 +395,7 @@ int board_early_init_f(void) init_early_memctl_regs(); #endif -#ifdef CONFIG_FSL_DCU_FB - out_be32(&scfg->pixclkcr, SCFG_PIXCLKCR_PXCKEN); -#endif - -#ifdef CONFIG_FSL_QSPI - out_be32(&scfg->qspi_cfg, SCFG_QSPI_CLKSEL); -#endif - - /* Configure Little endian for SAI, ASRC and SPDIF */ - out_be32(&scfg->endiancr, SCFG_ENDIANCR_LE); - - /* - * Enable snoop requests and DVM message requests for - * Slave insterface S4 (A7 core cluster) - */ - out_le32(&cci->slave[4].snoop_ctrl, - CCI400_DVM_MESSAGE_REQ_EN | CCI400_SNOOP_REQ_EN); - - major = get_soc_major_rev(); - if (major == SOC_MAJOR_VER_1_0) { - /* - * Set CCI-400 Slave interface S1, S2 Shareable Override - * Register All transactions are treated as non-shareable - */ - out_le32(&cci->slave[1].sha_ord, CCI400_SHAORD_NON_SHAREABLE); - out_le32(&cci->slave[2].sha_ord, CCI400_SHAORD_NON_SHAREABLE); - } + arch_soc_init(); #if defined(CONFIG_DEEP_SLEEP) if (is_warm_boot()) {