summaryrefslogtreecommitdiff
path: root/arch/powerpc/include/asm
AgeCommit message (Collapse)Author
2017-10-02powerpc: Use asm-generic/io.hPaul Burton
Convert the powerpc architecture to make use of the new asm-generic/io.h to provide address mapping functions. As powerpc can actually perform non-identity mapping between physical & virtual addresses we can't simply make use of the generic phys_to_virt() & virt_to_phys() functions. However since map_physmem() already effectively implemented the same thing as virt_to_phys() we can simply implement virt_to_phys() instead of map_physmem() & use the generic map_physmem(). We also drop the no-op unmap_physmem(). This has only been build-tested, feedback from architecture maintainers is welcome. Signed-off-by: Paul Burton <[email protected]> Cc: Wolfgang Denk <[email protected]>
2017-08-26powerpc: Rework interrupt_init_cpu()Tom Rini
The function interrupt_init_cpu() is given an int return type but does not return anything but 0. Rework this to be a void function. Signed-off-by: Tom Rini <[email protected]> Acked-by: Mario Six <[email protected]>
2017-08-07Move PHYLIB to KconfigAlexandru Gagniuc
Signed-off-by: Alexandru Gagniuc <[email protected]> Acked-by: Joe Hershberger <[email protected]>
2017-07-23powerpc: Remove 8260 remaindersChristophe Leroy
commit 2eb48ff7a210d ("powerpc, 8260: remove support for mpc8260") removed support for 8260 CPU. This patch remove some remainders. Signed-off-by: Christophe Leroy <[email protected]>
2017-07-23powerpc, 8xx: fix missing function declarations.Christophe Leroy
Add missing .h and add missing declarations in .h Declare local functions as static. Make interrupt_init_cpu function signatures consistent with how decrementer_count is declared. Based on warnings reported by 'make C=2' Signed-off-by: Christophe Leroy <[email protected]> [trini: drop cpu_init_f as 8xx/83xx are different from the rest, rework interrupt_init_cpu/decrementer_count] Signed-off-by: Tom Rini <[email protected]>
2017-07-22powerpc: move get_pvr() and get_svr() into CChristophe Leroy
Avoid unnecessary assembly functions when they can easily be written in C. Signed-off-by: Christophe Leroy <[email protected]>
2017-07-22powerpc, 8xx: move cache helper into CChristophe Leroy
Avoid unnecessary assembly functions when they can easily be written in C. Signed-off-by: Christophe Leroy <[email protected]>
2017-07-22powerpc, 8xx: move get_immr() into CChristophe Leroy
Avoid unnecessary assembly functions when they can easily be written in C. Signed-off-by: Christophe Leroy <[email protected]>
2017-07-22powerpc: Remove unneccessary #ifdefs in reginfoChristophe Leroy
reginfo command is calling mpc8xx_reginfo(), mpc85xx_reginfo() or mpc86xx_reginfo() based on CONFIG_ symbol. As those 3 functions can't me defined at the same time, let's rename them print_reginfo() to avoid the #ifdefs The name is kept generic as it is not at all dependent on powerpc arch and any other arch could want to also print such information. In addition, as the Makefile compiles cmd/reginfo.c only when CONFIG_CMD_REGINFO is set, there is no need to enclose the U_BOOT_CMD definition inside a #ifdef CONFIG_CMD_REGINFO Lets all remove the #ifdefs around the U_BOOT_CMD as this file is only compiled when CONFIG_CMD_REGINFO is defined Finally, this is a PowerPC-only command, disable it on a number of non-PowerPC platforms. Signed-off-by: Christophe Leroy <[email protected]> Signed-off-by: Tom Rini <[email protected]>
2017-07-22powerpc: move set_msr() and get_msr() into .hChristophe Leroy
set_msr() and get_msr() are defined and used twice. This patch moves them into ppc.h Signed-off-by: Christophe Leroy <[email protected]>
2017-07-08powerpc, 8xx: Migrate to KconfigChristophe Leroy
Signed-off-by: Christophe Leroy <[email protected]> Reviewed-by: Heiko Schocher <[email protected]>
2017-07-08powerpc, 8xx: Handle checkpatch errors and some of the warnings/checksChristophe Leroy
Signed-off-by: Christophe Leroy <[email protected]> Reviewed-by: Heiko Schocher <[email protected]>
2017-07-08powerpc, 8xx: Use IO accessors to access IO memoryChristophe Leroy
Signed-off-by: Christophe Leroy <[email protected]> Reviewed-by: Heiko Schocher <[email protected]>
2017-07-08powerpc: Partialy restore core of mpc8xxChristophe Leroy
CS Systemes d'Information (CSSI) manufactures 8xx boards for critical communication systems. Those boards have been running U-Boot since 2010 and will have to be maintained until at least 2027. commit 5b8e76c35ec312a3f73126bd1a2d2c0965b98a9f ("powerpc, 8xx: remove support for 8xx") orphaned those boards by removing support for the mpc8xx CPU. This commit partially restores support for the 8xx, with the following limitations: - Restores support for MPC866 and MPC885 only - Does not restore IDE, PCMCIA, I2C, USB - Does not restore examples - Does not restore POST - Does not restore Ethernet on SCC - Does not restore console on SCC - Does not restore bedbug and kgdb support As the 866 and 885 do not support the following features, they are not restored either: - VIDEO / LCD - RTC clock The CPM uCODE patch is not restored either, because: - 866 and 885 already have support for I2C and SPI relocation without a uCODE patch - relocation of SMC, I2C or SPI is only needed for using SCCs for Ethernet or QMC The dynamic setup/calculation of clocks is removed, we expect the target being use with the clock and PLPRCR register defined in the configuration. All the clock settings for 8xx prior to 866 is removed as well as we now only support 866 and 885. This code is mature and addresses mature boards. Therefore all code enclosed in '#if 0/#endif' and '#if XX_DEBUG/#endif' is unneeded. The following files are not restored by this patch: - arch/powerpc/cpu/mpc8xx/bedbug_860.c - arch/powerpc/cpu/mpc8xx/fec.h - arch/powerpc/cpu/mpc8xx/kgdb.S - arch/powerpc/cpu/mpc8xx/plprcr_write.S - arch/powerpc/cpu/mpc8xx/scc.c - arch/powerpc/cpu/mpc8xx/upatch.c - arch/powerpc/cpu/mpc8xx/video.c - arch/powerpc/include/asm/status_led.h - arch/powerpc/lib/ide.c - arch/powerpc/lib/ide.h - doc/README.MPC866 - drivers/pcmcia/mpc8xx_pcmcia.c - drivers/rtc/mpc8xx.c - drivers/usb/gadget/mpc8xx_udc.c - drivers/video/mpc8xx_lcd.c - examples/standalone/test_burst.c - examples/standalone/test_burst.h - examples/standalone/test_burst_lib.S - examples/standalone/timer.c - include/mpc823_lcd.h - include/usb/mpc8xx_udc.h - post/cpu/mpc8xx/Makefile - post/cpu/mpc8xx/cache.c - post/cpu/mpc8xx/cache_8xx.S - post/cpu/mpc8xx/ether.c - post/cpu/mpc8xx/spr.c - post/cpu/mpc8xx/uart.c - post/cpu/mpc8xx/usb.c - post/cpu/mpc8xx/watchdog.c Some of the restored files are not located in a proper location. In order to keep traceability of the changes, they will be moved to their correct location and moved to Kconfig in a followup patch. This patch also declares CSSI as point of contact for the update of the 8xx platform, as those boards are the only ones still being maintained on the 8xx area. A later patch will add those boards to the tree. Signed-off-by: Christophe Leroy <[email protected]>
2017-07-03powerpc: remove 4xx supportHeiko Schocher
There was for long time no activity in the 4xx area. We need to go further and convert to Kconfig, but it turned out, nobody is interested anymore in 4xx, so remove it. Signed-off-by: Heiko Schocher <[email protected]>
2017-06-16powerpc, 5xxx, 512x: remove support for mpc5xxx and mpc512xHeiko Schocher
There was for long time no activity in the mpx5xxx area. We need to go further and convert to Kconfig, but it turned out, nobody is interested anymore in mpc5xxx, so remove it. Signed-off-by: Heiko Schocher <[email protected]>
2017-06-12powerpc, 5xx: remove support for 5xxHeiko Schocher
There was for long time no activity in the 5xx area. We need to go further and convert to Kconfig, but it turned out, nobody is interested anymore in 5xx, so remove it. Signed-off-by: Heiko Schocher <[email protected]>
2017-06-12powerpc, 8260: remove support for mpc8260Heiko Schocher
There was for long time no activity in the 8260 area. We need to go further and convert to Kconfig, but it turned out, nobody is interested anymore in 8260, so remove it. Signed-off-by: Heiko Schocher <[email protected]>
2017-06-12powerpc, 8xx: remove support for 8xxHeiko Schocher
There was for long time no activity in the 8xx area. We need to go further and convert to Kconfig, but it turned out, nobody is interested anymore in 8xx, so remove it (with a heavy heart, knowing that I remove here the root of U-Boot). Signed-off-by: Heiko Schocher <[email protected]>
2017-06-05common: freescale: Move arch-specific declarationsSimon Glass
The declarations should not be in common.h. Move them to the arch-specific headers. Signed-off-by: Simon Glass <[email protected]> [trini: Fixup thinko defined(FSL_LSCH3) -> defined(CONFIG_FSL_LSCH3)] Signed-off-by: Tom Rini <[email protected]>
2017-06-05common: powerpc: Move arch-specific headersSimon Glass
Set up a new asm/ppc.h header file to hold this arch-specific stuff. It should not be in common.h. It probably should be refactored to use asm/arch instead, but that is a job for the maintainer. Signed-off-by: Simon Glass <[email protected]>
2017-06-05common: Move PPC4xx_SYS_INFO() et al to arch-specific headerSimon Glass
These definitions should not be in common.h. Move them to an arch-specific header file. Signed-off-by: Simon Glass <[email protected]>
2017-06-05common: Move get_OPB_freq() and get_PCI_freq() to PPC headerSimon Glass
These should not be in common.h. Move the to an arch-specific header. Signed-off-by: Simon Glass <[email protected]>
2017-06-05common: Move pcie_setup_hoses() to PPC headerSimon Glass
Only one board needs this definition. Move it to an arch-specific header. Signed-off-by: Simon Glass <[email protected]>
2017-06-05common: Move pci_target_init() to PPC headerSimon Glass
Only one boards needs this definition. Move it to an arch-specific header. Signed-off-by: Simon Glass <[email protected]>
2017-05-22Convert CONFIG_CMD_ESBC_VALIDATE to KconfigSimon Glass
This converts the following to Kconfig: CONFIG_CMD_ESBC_VALIDATE Signed-off-by: Simon Glass <[email protected]> Reviewed-by: Tom Rini <[email protected]>
2017-05-22lib: move hash CONFIG options to KconfigTom Rini
Commit 94e3c8c4fd7b ("crypto/fsl - Add progressive hashing support using hardware acceleration.") created entries for CONFIG_SHA1, CONFIG_SHA256, CONFIG_SHA_HW_ACCEL, and CONFIG_SHA_PROG_HW_ACCEL. However, no defconfig has migrated to it. Complete the move by first adding additional logic to various Kconfig files to select this when required and then use the moveconfig tool. In many cases we can select these because they are required to implement other drivers. We also correct how we include the various hashing algorithms in SPL. This commit was generated as follows (after Kconfig additions): [1] tools/moveconfig.py -y SHA1 SHA256 SHA_HW_ACCEL [2] tools/moveconfig.py -y SHA_PROG_HW_ACCEL Note: We cannot move SHA_HW_ACCEL and SHA_PROG_HW_ACCEL simultaneously because there is dependency between them. Cc: Poonam Aggrwal <[email protected]> Cc: Naveen Burmi <[email protected]> Cc: Po Liu <[email protected]> Cc: Shengzhou Liu <[email protected]> Cc: Priyanka Jain <[email protected]> Cc: Shaohui Xie <[email protected]> Cc: Chunhe Lan <[email protected]> Cc: Chander Kashyap <[email protected]> Cc: Steve Rae <[email protected]> Cc: Dirk Eibach <[email protected]> Cc: Feng Li <[email protected]> Cc: Alison Wang <[email protected]> Cc: Sumit Garg <[email protected]> Cc: Mingkai Hu <[email protected]> Cc: York Sun <[email protected]> Cc: Prabhakar Kushwaha <[email protected]> Cc: Jaehoon Chung <[email protected]> Cc: Akshay Saraswat <[email protected]> Cc: Heiko Schocher <[email protected]> Cc: Jagan Teki <[email protected]> Signed-off-by: Tom Rini <[email protected]> Reviewed-by: Simon Glass <[email protected]> Signed-off-by: Tom Rini <[email protected]>
2017-05-15powerpc: t1024: Fix SRDS_MAX_LANES valuePaulo Zaneti
T1023 and T1024 have 4 SerDes lanes. Fix macro SRDS_MAX_LANES and use this macro instead of hard-coded value in t1024_serdes.c. Signed-off-by: Paulo Zaneti <[email protected]> Signed-off-by: York Sun <[email protected]>
2017-04-30Convert CONFIG_CMD_BLOB to KconfigSimon Glass
This converts the following to Kconfig: CONFIG_CMD_BLOB Signed-off-by: Simon Glass <[email protected]> [trini: Add imply CMD_BLOB under CHAIN_OF_TRUST] Signed-off-by: Tom Rini <[email protected]>
2017-04-17powerpc: T1042RDB: SECURE BOOT: Remove CONFIG_CMD_BLOB from SPL compilationVINITHA PILLAI
BLOB feature is not required during SPL compilation. Signed-off-by: Vinitha Pillai <[email protected]> Signed-off-by: Sumit Garg <[email protected]> Reviewed-by: York Sun <[email protected]>
2017-04-05board_f: powerpc: Make prt_8260_rsr(), prt_8260_clks() privateSimon Glass
Move these two function calls into checkcpu(), which is called on this arch immediately after these two. Signed-off-by: Simon Glass <[email protected]> Reviewed-by: Stefan Roese <[email protected]>
2017-04-05board_f: powerpc: Move prt_83xx_rsr() to private codeSimon Glass
This function is called just before checkcpu() on MPX83xx. Move it to the code for that arch. Signed-off-by: Simon Glass <[email protected]>
2017-03-09Freescale/NXP: Migrate CONFIG_FSL_CAAM to defconfigsTom Rini
In some cases this is absolutely required, so select this for some secure features. This also requires migration of RSA_FREESCALE_EXP Cc: Ruchika Gupta <[email protected]> Cc: Poonam Aggrwal <[email protected]> Cc: Naveen Burmi <[email protected]> Cc: Po Liu <[email protected]> Cc: Shengzhou Liu <[email protected]> Cc: Priyanka Jain <[email protected]> Cc: Sumit Garg <[email protected]> Cc: Shaohui Xie <[email protected]> Cc: Chunhe Lan <[email protected]> Cc: Feng Li <[email protected]> Cc: Alison Wang <[email protected]> Cc: Mingkai Hu <[email protected]> Cc: York Sun <[email protected]> Cc: Saksham Jain <[email protected]> Cc: Prabhakar Kushwaha <[email protected]> Signed-off-by: Tom Rini <[email protected]>
2017-01-25Merge git://git.denx.de/u-boot-mpc85xxTom Rini
2017-01-25powerpc: Drop CONFIG_SYS_ALLOC_DPRAMSimon Glass
This is not defined anywhere in U-Boot. Drop this dead code. Signed-off-by: Simon Glass <[email protected]>
2017-01-24mpc85xx: pcie: Implement workaround for Erratum A007815Tony O'Brien
The read-only-write-enable bit is set by default and must be cleared to prevent overwriting read-only registers. This should be done immediately after resetting the PCI Express controller. Reviewed-by: Hamish Martin <[email protected]> Signed-off-by: Tony O'Brien <[email protected]> [York S: Move SYS_FSL_ERRATUM_A007815 to Kconfig] Reviewed-by: York Sun <[email protected]>
2017-01-24powerpc: mpc85xx: Implemente workaround for CPU erratum A-007907Darwin Dingel
Core hang occurs when using L1 stashes. Workaround is to disable L1 stashes so software uses L2 cache for stashes instead. Reviewed-by: Chris Packham <[email protected]> Signed-off-by: Darwin Dingel <[email protected]> Cc: York Sun <[email protected]> [York S: Move SYS_FSL_ERRATUM_A007907 to Kconfig] Reviewed-by: York Sun <[email protected]>
2017-01-24NXP: Introduce board/freescale/common/Kconfig and migrate CHAIN_OF_TRUSTTom Rini
Introduce board/freescale/common/Kconfig so that we have a single place for CONFIG options that are shared between ARM and PowerPC NXP platforms. Cc: York Sun <[email protected]> Signed-off-by: Tom Rini <[email protected]> Reviewed-by: York Sun <[email protected]>
2017-01-21status_led: Kconfig migrationUri Mashiach
Move all of the status LED feature to drivers/led/Kconfig. The LED status definitions were moved from the board configuration files to the defconfig files. TBD: Move all of the definitions in the include/status_led.h to the relevant board's defconfig files. Tested boards: CL-SOM-AM57x, CM-T335 Signed-off-by: Uri Mashiach <[email protected]>
2017-01-21config: Move CONFIG_BOARD_LATE_INIT to defconfigsJagan Teki
Cc: Tom Rini <[email protected]> Signed-off-by: Jagan Teki <[email protected]>
2017-01-04powerpc: mpc85xx: Move macro CONFIG_SYS_PPC64 to KconfigYork Sun
Use Kconfig option SYS_PPC64 instead. Signed-off-by: York Sun <[email protected]>
2017-01-04powerpc: mpc85xx: Move CONFIG_SYS_FSL_QORIQ_CHASSIS* to KconfigYork Sun
Use Kconfig option to select chassis version. Signed-off-by: York Sun <[email protected]>
2017-01-04powerpc: E6500: Move macro CONFIG_E6500 to KconfigYork Sun
Use Kconfig option E6500 and clean up existing usage. Signed-off-by: York Sun <[email protected]>
2017-01-04powerpc: mpc85xx: Remove unused ifdef in config headerYork Sun
After most config options are moved to Kconfig, the unused ifdef or elif can be removed. Signed-off-by: York Sun <[email protected]>
2017-01-04ddr: fsl: Move CONFIG_SYS_FSL_DDR_VER to KconfigYork Sun
Use Kconfig to select DDR version instead of using config header. Signed-off-by: York Sun <[email protected]>
2017-01-04ddr: fsl: Move macro CONFIG_NUM_DDR_CONTROLLERS to KconfigYork Sun
Use option NUM_DDR_CONTROLLERS in ddr Kconfig and clean up existing usage in ls102xa and fsl-layerscape. Remove all powerpc macros in config header and board header files. Signed-off-by: York Sun <[email protected]>
2017-01-04powerpc: mpc85xx: Move CONFIG_SYS_FSL_ERRATUM_* to KconfigYork Sun
Use Kconfig to select errata workaround. Signed-off-by: York Sun <[email protected]>
2017-01-04mmc: move CONFIG_SYS_FSL_ERRATUM_ESDHC* to KconfigYork Sun
Add option SYS_FSL_ERRATUM_ESDHC111, SYS_FSL_ERRATUM_ESDHC13, SYS_FSL_ERRATUM_ESDHC135, SYS_FSL_ERRATUM_ESDHC_A001 to mmc Kconfig. Move existing macros to related Kconfig. Signed-off-by: York Sun <[email protected]> [trini: Migrate bk4r1] Signed-off-by: Tom Rini <[email protected]>
2017-01-04fsl_ddr: Move DDR config options to driver KconfigYork Sun
Create driver/ddr/fsl/Kconfig and move existing options. Clean up existing macros. Signed-off-by: York Sun <[email protected]> [trini: Migrate sbc8641d, xpedite537x and MPC8536DS, run a moveconfig.py -s] Signed-off-by: Tom Rini <[email protected]>
2017-01-04powerpc: T104xQDS: Remove macro CONFIG_T104xD4QDSYork Sun
Remove this macro. It was added by e622d9ed but actually wasn't used. Signed-off-by: York Sun <[email protected]>