aboutsummaryrefslogtreecommitdiff
path: root/arch/mips/bcm63xx/setup.c
AgeCommit message (Collapse)AuthorFilesLines
2024-06-27mips: bmips: setup: make CBR address configurableChristian Marangi1-1/+5
Add support to provide CBR address from DT to handle broken SoC/Bootloader that doesn't correctly init it. This permits to use the RAC flush even in these condition. To provide a CBR address from DT, the property "brcm,bmips-cbr-reg" needs to be set in the "cpus" node. On DT init, this property presence will be checked and will set the bmips_cbr_addr value accordingly. Also bmips_rac_flush_disable will be set to false as RAC flush can be correctly supported. The CBR address from DT will overwrite the cached one and the one set in the CBR register will be ignored. Also the DT CBR address is validated on being outside DRAM window. Signed-off-by: Christian Marangi <[email protected]> Acked-by: Florian Fainelli <[email protected]> Signed-off-by: Thomas Bogendoerfer <[email protected]>
2024-06-27mips: bmips: rework and cache CBR addr handlingChristian Marangi1-0/+4
Rework the handling of the CBR address and cache it. This address doesn't change and can be cached instead of reading the register every time. This is in preparation of permitting to tweak the CBR address in DT with broken SoC or bootloader. bmips_cbr_addr is defined in setup.c for each arch to keep compatibility with legacy brcm47xx/brcm63xx and generic BMIPS target. Acked-by: Florian Fainelli <[email protected]> Signed-off-by: Christian Marangi <[email protected]> Signed-off-by: Thomas Bogendoerfer <[email protected]>
2024-01-26MIPS: BCM63XX: Fix missing prototypesFlorian Fainelli1-1/+1
Most of the symbols for which we do not have a prototype can actually be made static and for the few that cannot, there is already a declaration in a header for it. Signed-off-by: Florian Fainelli <[email protected]> Signed-off-by: Thomas Bogendoerfer <[email protected]>
2020-10-12MIPS: replace add_memory_region with memblockThomas Bogendoerfer1-1/+1
add_memory_region was the old interface for registering memory and was already changed to used memblock internaly. Replace it by directly calling memblock functions. Signed-off-by: Thomas Bogendoerfer <[email protected]>
2018-10-31mm: remove include/linux/bootmem.hMike Rapoport1-1/+1
Move remaining definitions and declarations from include/linux/bootmem.h into include/linux/memblock.h and remove the redundant header. The includes were replaced with the semantic patch below and then semi-automated removal of duplicated '#include <linux/memblock.h> @@ @@ - #include <linux/bootmem.h> + #include <linux/memblock.h> [[email protected]: dma-direct: fix up for the removal of linux/bootmem.h] Link: http://lkml.kernel.org/r/[email protected] [[email protected]: powerpc: fix up for removal of linux/bootmem.h] Link: http://lkml.kernel.org/r/[email protected] [[email protected]: x86/kaslr, ACPI/NUMA: fix for linux/bootmem.h removal] Link: http://lkml.kernel.org/r/[email protected] Link: http://lkml.kernel.org/r/[email protected] Signed-off-by: Mike Rapoport <[email protected]> Signed-off-by: Stephen Rothwell <[email protected]> Acked-by: Michal Hocko <[email protected]> Cc: Catalin Marinas <[email protected]> Cc: Chris Zankel <[email protected]> Cc: "David S. Miller" <[email protected]> Cc: Geert Uytterhoeven <[email protected]> Cc: Greentime Hu <[email protected]> Cc: Greg Kroah-Hartman <[email protected]> Cc: Guan Xuetao <[email protected]> Cc: Ingo Molnar <[email protected]> Cc: "James E.J. Bottomley" <[email protected]> Cc: Jonas Bonn <[email protected]> Cc: Jonathan Corbet <[email protected]> Cc: Ley Foon Tan <[email protected]> Cc: Mark Salter <[email protected]> Cc: Martin Schwidefsky <[email protected]> Cc: Matt Turner <[email protected]> Cc: Michael Ellerman <[email protected]> Cc: Michal Simek <[email protected]> Cc: Palmer Dabbelt <[email protected]> Cc: Paul Burton <[email protected]> Cc: Richard Kuo <[email protected]> Cc: Richard Weinberger <[email protected]> Cc: Rich Felker <[email protected]> Cc: Russell King <[email protected]> Cc: Serge Semin <[email protected]> Cc: Thomas Gleixner <[email protected]> Cc: Tony Luck <[email protected]> Cc: Vineet Gupta <[email protected]> Cc: Yoshinori Sato <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2015-11-11MIPS: BCM63XX: Use pr_* instead of printkGregory Fong1-4/+4
Signed-off-by: Gregory Fong <[email protected]> Cc: Florian Fainelli <[email protected]> Cc: Jonas Gorski <[email protected]> Cc: Joe Perches <[email protected]> Cc: Rusty Russell <[email protected]> Cc: Nicolas Schichan <[email protected]> Cc: [email protected] Cc: [email protected] Patchwork: https://patchwork.linux-mips.org/patch/11300/ Signed-off-by: Ralf Baechle <[email protected]>
2015-03-25MIPS: BCM63xx: Move bcm63xx_gpio_init() to bcm63xx_register_devices().Nicolas Schichan1-0/+4
When called from prom init code, bcm63xx_gpio_init() will fail as it will call gpiochip_add() which relies on a working kmalloc() to alloc the gpio_desc array and kmalloc is not useable yet at prom init time. Move bcm63xx_gpio_init() to bcm63xx_register_devices() (an arch_initcall) where kmalloc works. Fixes: 14e85c0e69d5 ("gpio: remove gpio_descs global array") Signed-off-by: Nicolas Schichan <[email protected]> Cc: [email protected] Cc: [email protected] Cc: Alexandre Courbot <[email protected]> Patchwork: https://patchwork.linux-mips.org/patch/9530/ Signed-off-by: Ralf Baechle <[email protected]>
2013-07-01MIPS: BCM63XX: add support for BCM3368 Cable ModemFlorian Fainelli1-0/+3
The Broadcom BCM3368 Cable Modem SoC is extremely similar to the existing BCM63xx DSL SoCs, in particular BCM6358, therefore little effort in the existing code base is required to get it supported. This patch adds support for the following on-chip peripherals: - two UARTS - GPIO - Ethernet - SPI - PCI - NOR Flash The most noticeable difference with 3368 is that it has its peripheral register at 0xfff8_0000 we check that separately in ioremap.h. Since 3368 is identical to 6358 for its clock and reset bits, we use them verbatim. Signed-off-by: Florian Fainelli <[email protected]> Cc: [email protected] Cc: [email protected] Cc: [email protected] Patchwork: https://patchwork.linux-mips.org/patch/5499/ Signed-off-by: Ralf Baechle <[email protected]>
2013-05-08MIPS: BCM63XX: add basic BCM6362 supportJonas Gorski1-0/+3
Add basic support for detecting and booting the BCM6362. Signed-off-by: Jonas Gorski <[email protected]> Patchwork: http://patchwork.linux-mips.org/patch/5009/ Acked-by: John Crispin <[email protected]>
2013-05-08MIPS: BCM63XX: fix revision ID widthJonas Gorski1-1/+1
The REVID is only 8 bit wide. Signed-off-by: Jonas Gorski <[email protected]> Patchwork: http://patchwork.linux-mips.org/patch/5007/ Acked-by: John Crispin <[email protected]>
2013-03-19Revert "MIPS: BCM63XX: Call board_register_device from device_initcall()"Jonas Gorski1-1/+1
This commit causes a race between PCI scan and SSB fallback SPROM handler registration, causing the wifi to not work on slower systems. The only subsystem touched from board_register_devices is platform device registration, which is safe as an arch init call. This reverts commit d64ed7ada2f689d2c62af1892ca55e47d3653e36 [MIPS: BCM63XX: Call board_register_device from device_initcall()]. Signed-off-by: Jonas Gorski <[email protected]> To: [email protected] Cc: John Crispin <[email protected]> Cc: Maxime Bizon <[email protected]> Cc: Florian Fainelli <[email protected]> Cc: Kevin Cernekee <[email protected]> Signed-off-by: Ralf Baechle <[email protected]>
2012-08-24MIPS: BCM63XX: don't write to the chipid register on rebootMaxime Bizon1-0/+3
While harmless, it is bad style to do so. Signed-off-by: Maxime Bizon <[email protected]> Signed-off-by: Jonas Gorski <[email protected]> Patchwork: http://patchwork.linux-mips.org/patch/4092/ Signed-off-by: John Crispin <[email protected]>
2012-08-24MIPS: BCM63XX: add external irq support for BCM6345Maxime Bizon1-0/+3
Add the missing definitions for BCM6345. Signed-off-by: Maxime Bizon <[email protected]> Signed-off-by: Jonas Gorski <[email protected]> Patchwork: http://patchwork.linux-mips.org/patch/4091/ Signed-off-by: John Crispin <[email protected]>
2012-07-24MIPS: BCM63XX: Add basic BCM6328 supportJonas Gorski1-3/+10
This includes CPU speed, memory size detection and working UART, but lacking the appropriate drivers, no support for attached flash. Signed-off-by: Jonas Gorski <[email protected]> Cc: [email protected] Cc: Maxime Bizon <[email protected]> Cc: Florian Fainelli <[email protected]> Cc: Kevin Cernekee <[email protected]> Patchwork: https://patchwork.linux-mips.org/patch/3951/ Reviewed-by: Florian Fainelli <[email protected]> Signed-off-by: Ralf Baechle <[email protected]>
2012-02-05mips: Fix typo in bcm63xx/setup.cMasanari Iida1-1/+1
Correct spelling "reseting" to "resetting" in arch/mips/bcm63xx/setup.c Signed-off-by: Masanari Iida <[email protected]> Signed-off-by: Jiri Kosina <[email protected]>
2011-12-07MIPS: BCM63XX: Add external irq support for non 6348 CPUs.Maxime Bizon1-5/+25
Signed-off-by: Maxime Bizon <[email protected]> Cc: [email protected] Patchwork: https://patchwork.linux-mips.org/patch/2899/ Signed-off-by: Ralf Baechle <[email protected]>
2011-12-07MIPS: BCM63XX: Call board_register_device from device_initcall()Maxime Bizon1-1/+1
Some device registration (eg leds), expect subsystem initcall to be run first, so move board device registration to device_initcall(). Signed-off-by: Maxime Bizon <[email protected]> Cc: [email protected] Patchwork: https://patchwork.linux-mips.org/patch/2891/ Signed-off-by: Ralf Baechle <[email protected]>
2009-11-02MIPS: BCM63xx: Fix soft-reset lockup on BCM6345Florian Fainelli1-1/+3
This patch fixes a lockup on BCM6345 where setting the PLL soft reset bit will also lock the other blocks including UART. Instead of setting only the PLL soft reset bit in the software reset register, set this bit but do not touch the others. Signed-off-by: Florian Fainelli <[email protected]> Signed-off-by: Ralf Baechle <[email protected]>
2009-09-17MIPS: BCM63xx: Add support for the Broadcom BCM63xx family of SOCs.Maxime Bizon1-0/+125
Signed-off-by: Maxime Bizon <[email protected]> Signed-off-by: Florian Fainelli <[email protected]> Signed-off-by: Ralf Baechle <[email protected]>