summaryrefslogtreecommitdiff
path: root/include/fsl_ifc.h
AgeCommit message (Collapse)Author
2025-06-27nxp: Prepare macros for KVM changesIlias Apalodimas
A following patch is replacing our IO accessors with do { ... } while(0) ones in order to make them usable with KVM. That leads to an error eventually looking like this: arch/arm/include/asm/io.h:62:9: error: expected expression before 'do' 62 | do { \ | ^~ arch/arm/include/asm/io.h:211:41: note: in expansion of macro '__raw_writel' 211 | #define out_arch(type,endian,a,v) __raw_write##type(cpu_to_##endian(v),a) | ^~~~~~~~~~~ arch/arm/include/asm/io.h:223:25: note: in expansion of macro 'out_arch' 223 | #define out_be32(a,v) out_arch(l,be32,a,v) | ^~~~~~~~ drivers/spi/fsl_dspi.c:127:17: note: in expansion of macro 'out_be32' 127 | out_be32(addr, val) : out_le32(addr, val); | ^~~~~~~~ So adjust the current macros and code to be compatible with the upcoming change. Signed-off-by: Ilias Apalodimas <[email protected]> Reviewed-by: Tom Rini <[email protected]>
2024-07-29include: Remove duplicate newlinesMarek Vasut
Drop all duplicate newlines. No functional change. Signed-off-by: Marek Vasut <[email protected]>
2024-05-20Restore patch series "arm: dts: am62-beagleplay: Fix Beagleplay Ethernet"Tom Rini
As part of bringing the master branch back in to next, we need to allow for all of these changes to exist here. Reported-by: Jonas Karlman <[email protected]> Signed-off-by: Tom Rini <[email protected]>
2024-05-19Revert "Merge patch series "arm: dts: am62-beagleplay: Fix Beagleplay Ethernet""Tom Rini
When bringing in the series 'arm: dts: am62-beagleplay: Fix Beagleplay Ethernet"' I failed to notice that b4 noticed it was based on next and so took that as the base commit and merged that part of next to master. This reverts commit c8ffd1356d42223cbb8c86280a083cc3c93e6426, reversing changes made to 2ee6f3a5f7550de3599faef9704e166e5dcace35. Reported-by: Jonas Karlman <[email protected]> Signed-off-by: Tom Rini <[email protected]>
2024-05-07fsl_ifc.h: Add <asm/ppc.h>Tom Rini
In the case of PowerPC, this file needs to include <asm/ppc.h> in order to resolve all of the references it makes. Signed-off-by: Tom Rini <[email protected]>
2023-11-07include: Drop <common.h> from include listsTom Rini
At this point, we don't need to have <common.h> be included because of properties in the header itself, it only includes other common header files. We've also audited the code enough at this point that we can drop <common.h> from being included in headers and rely on code to have the correct inclusions themselves, or at least <common.h>. Signed-off-by: Tom Rini <[email protected]>
2022-12-05global: Move remaining CONFIG_SYS_* to CFG_SYS_*Tom Rini
The rest of the unmigrated CONFIG symbols in the CONFIG_SYS namespace do not easily transition to Kconfig. In many cases they likely should come from the device tree instead. Move these out of CONFIG namespace and in to CFG namespace. Signed-off-by: Tom Rini <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2021-03-23fsl_ifc: fix typo in the NOR CSOR register definitionAleksandar Gerasimovski
The name of the define must indicate 'Asynchronous', so 'ASYNC' is more appropriate. AYSNC is probably a typo, and checkpatch script is throwing a warning if this is set in the board include files. It is save to change this now as none of the existing designs is using it so far, but we will use it in our design it help to make IFC settings more transparent. Signed-off-by: Aleksandar Gerasimovski <[email protected]> Reviewed-by: Priyanka Jain <[email protected]>
2020-12-10drivers: ifc: add define for IFC_CSPRn TE bitAleksandar Gerasimovski
To drive TE pin high is supported IFC configuration that can be used on some designs. Signed-off-by: Aleksandar Gerasimovski <[email protected]> Reviewed-by: Priyanka Jain <[email protected]>
2020-05-18common: Drop part.h from common headerSimon Glass
Move this uncommon header out of the common header. Signed-off-by: Simon Glass <[email protected]>
2018-12-06drivers: ifc: dynamic chipselect mapping supportPankit Garg
IFC driver changes to implement the chipselect mappings at run time. Defines init_early_memctl_regs and init_final_memctl_regs with chipselect dynamic mapping for nor and nand boot. Signed-off-by: Pankit Garg <[email protected]> Signed-off-by: Rajesh Bhagat <[email protected]> [YS: fix checkpatch issues] Reviewed-by: York Sun <[email protected]>
2018-12-06driver/ifc: replace __ilog2 with LOG2 macroRajesh Bhagat
Replaces __ilog2 function call with LOG2 macro, required to use macros in global variables. Also, corrects the value passed in LOG2 for some PowerPC platforms. Minimum value that can be configured is is 64K for IFC IP. Signed-off-by: Pankit Garg <[email protected]> Signed-off-by: Rajesh Bhagat <[email protected]> [YS: fix white space around operator] Reviewed-by: York Sun <[email protected]>
2018-05-09mtd: nand: fsl_ifc: Fix eccstat array overflow for IFC ver >= 2.0.0Jagdish Gediya
Number of ECC status registers i.e. (ECCSTATx) has been increased in IFC version 2.0.0 due to increase in SRAM size. This is causing eccstat array to over flow. So, replace eccstat array with u32 variable to make it fail-safe and independent of number of ECC status registers or SRAM size. Signed-off-by: Prabhakar Kushwaha <[email protected]> Signed-off-by: Jagdish Gediya <[email protected]> Reviewed-by: York Sun <[email protected]>
2018-05-07SPDX: Convert all of our single license tags to Linux Kernel styleTom Rini
When U-Boot started using SPDX tags we were among the early adopters and there weren't a lot of other examples to borrow from. So we picked the area of the file that usually had a full license text and replaced it with an appropriate SPDX-License-Identifier: entry. Since then, the Linux Kernel has adopted SPDX tags and they place it as the very first line in a file (except where shebangs are used, then it's second line) and with slightly different comment styles than us. In part due to community overlap, in part due to better tag visibility and in part for other minor reasons, switch over to that style. This commit changes all instances where we have a single declared license in the tag as both the before and after are identical in tag contents. There's also a few places where I found we did not have a tag and have introduced one. Signed-off-by: Tom Rini <[email protected]>
2017-06-05common: arm: freescale: layerscape: Move header files out of common.hSimon Glass
We should not have an arch-specific header file in common.h. Adjust the board files a little so it is not needed, and drop it. Signed-off-by: Simon Glass <[email protected]>
2015-08-25nand: Sync with Linux v4.1Scott Wood
Update the NAND code to match Linux v4.1. The previous sync was from Linux v3.15 in commit 4e67c57125290b25. CONFIG_SYS_NAND_RESET_CNT is removed, as the upstream Linux code now has its own timeout. Plus, CONFIG_SYS_NAND_RESET_CNT was undocumented and not selected by any board. Signed-off-by: Scott Wood <[email protected]>
2015-04-23driver/ifc: Add 64KB page supportJaiprakash Singh
IFC has two register pages.Till IFC version 1.4 each register page is 4KB each.But IFC ver 2.0 register page size is 64KB each.IFC regiters structure is break into two viz FCM and RUNTIME.FCM(Flash control machine) registers are defined in PAGE0 and controls IFC generic functionality. RUNTIME registers are defined in PAGE1 and controls NAND and GPCM funcinality. FCM and RUNTIME structures defination is common for IFC version 1.4 and 2.0. Signed-off-by: Jaiprakash Singh <[email protected]> Signed-off-by: York Sun <[email protected]>
2014-07-22driver/nand: Add support of 16K SRAM for IFC 2.0Prabhakar Kushwaha
Internal SRAM has been incresed from 8KB to 16KB for IFC cotroller ver 2.0. Update the page offset calculation logic to support the same. Signed-off-by: Prabhakar Kushwaha <[email protected]> Reviewed-by: York Sun <[email protected]>
2014-07-22driver/nand: Update SRAM initialize logic for IFC.Prabhakar Kushwaha
IFC controller v1.1.0 requires internal SRAM initialize by reading NAND flash. Higher controller versions have provided "SRAM init" bit in NCFGR register space. update SRAM initialize logic to reflect the same. Also print error message in case of Page read error. Signed-off-by: Prabhakar Kushwaha <[email protected]> Reviewed-by: York Sun <[email protected]>
2014-04-22driver/fsl_ifc: Add a function to finalize CS0 address bindingYork Sun
For fsl-lsch3 NOR flash boot, IFC CS0 needs to be binded with address within 32-bit at fist. After u-boot relocates to DDR, CS0 can be binded to higher address to support large space. Signed-off-by: York Sun <[email protected]> CC: Prabhakar Kushwaha <[email protected]>
2014-02-03driver/ifc:Change accessor function to take care of endiannessPrabhakar Kushwaha
IFC registers can be of type Little Endian or big Endian depending upon Freescale SoC. Here SoC defines the register type of IFC IP. So update acessor functions with common IFC acessor functions to take care both type of endianness. Signed-off-by: Prabhakar Kushwaha <[email protected]> Acked-by: York Sun <[email protected]>
2013-12-02Merge branch 'master' of git://git.denx.de/u-boot-mpc85xxTom Rini
2013-11-25Driver/IFC: Move Freescale IFC driver to a common driverYork Sun
Freescale IFC controller has been used for mpc8xxx. It will be used for ARM-based SoC as well. This patch moves the driver to driver/misc and fix the header file includes. Signed-off-by: York Sun <[email protected]>