mirror of
				git://git.openwrt.org/openwrt/openwrt.git
				synced 2025-10-30 21:44:27 -04:00 
			
		
		
		
	Now that we migrated all users to dtb based detection, we can drop the board fixup code. Signed-off-by: Jonas Gorski <jogo@openwrt.org> SVN-Revision: 42129
		
			
				
	
	
		
			96 lines
		
	
	
		
			2.6 KiB
		
	
	
	
		
			Diff
		
	
	
	
	
	
			
		
		
	
	
			96 lines
		
	
	
		
			2.6 KiB
		
	
	
	
		
			Diff
		
	
	
	
	
	
| From 0daf361ea799fba0af5a232036d0f06cea85ad24 Mon Sep 17 00:00:00 2001
 | |
| From: Jonas Gorski <jogo@openwrt.org>
 | |
| Date: Sat, 21 Jun 2014 12:47:49 +0200
 | |
| Subject: [PATCH 42/44] MIPS: BCM63XX: allow building support for more than one
 | |
|  board type
 | |
| 
 | |
| Use the arguments passed to the kernel to detect being booted with
 | |
| CFE as the indicator for bcm963xx board support, allowing the
 | |
| non presence of CFE_EPTSEAL to assume a different board type.
 | |
| 
 | |
| Signed-off-by: Jonas Gorski <jogo@openwrt.org>
 | |
| ---
 | |
|  arch/mips/bcm63xx/boards/Kconfig          |  7 +++----
 | |
|  arch/mips/bcm63xx/boards/board_bcm963xx.c |  2 +-
 | |
|  arch/mips/bcm63xx/boards/board_common.c   | 13 +++++++++++++
 | |
|  arch/mips/bcm63xx/boards/board_common.h   |  6 ++++++
 | |
|  4 files changed, 23 insertions(+), 5 deletions(-)
 | |
| 
 | |
| --- a/arch/mips/bcm63xx/boards/Kconfig
 | |
| +++ b/arch/mips/bcm63xx/boards/Kconfig
 | |
| @@ -1,11 +1,10 @@
 | |
| -choice
 | |
| -	prompt "Board support"
 | |
| +menu "Board support"
 | |
|  	depends on BCM63XX
 | |
| -	default BOARD_BCM963XX
 | |
|  
 | |
|  config BOARD_BCM963XX
 | |
|         bool "Generic Broadcom 963xx boards"
 | |
|  	select SSB
 | |
| +	default y
 | |
|         help
 | |
|  
 | |
| -endchoice
 | |
| +endmenu
 | |
| --- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
 | |
| +++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
 | |
| @@ -726,7 +726,7 @@ static const struct board_info __initcon
 | |
|  /*
 | |
|   * early init callback, read nvram data from flash and checksum it
 | |
|   */
 | |
| -void __init board_prom_init(void)
 | |
| +void __init board_bcm963xx_init(void)
 | |
|  {
 | |
|  	unsigned int i;
 | |
|  	u8 *boot_addr, *cfe;
 | |
| --- a/arch/mips/bcm63xx/boards/board_common.c
 | |
| +++ b/arch/mips/bcm63xx/boards/board_common.c
 | |
| @@ -15,6 +15,8 @@
 | |
|  #include <linux/gpio_keys.h>
 | |
|  #include <linux/spi/spi.h>
 | |
|  #include <asm/addrspace.h>
 | |
| +#include <asm/bootinfo.h>
 | |
| +#include <asm/fw/cfe/cfe_api.h>
 | |
|  #include <bcm63xx_board.h>
 | |
|  #include <bcm63xx_cpu.h>
 | |
|  #include <bcm63xx_dev_uart.h>
 | |
| @@ -32,6 +34,8 @@
 | |
|  #include <bcm63xx_dev_usb_usbd.h>
 | |
|  #include <board_bcm963xx.h>
 | |
|  
 | |
| +#include "board_common.h"
 | |
| +
 | |
|  #define PFX	"board: "
 | |
|  
 | |
|  #define BCM963XX_KEYS_POLL_INTERVAL	20
 | |
| @@ -84,6 +88,15 @@ const char *board_get_name(void)
 | |
|  	return board.name;
 | |
|  }
 | |
|  
 | |
| +void __init board_prom_init(void)
 | |
| +{
 | |
| +	/* detect bootloader */
 | |
| +	if (fw_arg3 == CFE_EPTSEAL)
 | |
| +		board_bcm963xx_init();
 | |
| +	else
 | |
| +		panic("unsupported bootloader detected");
 | |
| +}
 | |
| +
 | |
|  static int (*board_get_mac_address)(u8 mac[ETH_ALEN]);
 | |
|  
 | |
|  /*
 | |
| --- a/arch/mips/bcm63xx/boards/board_common.h
 | |
| +++ b/arch/mips/bcm63xx/boards/board_common.h
 | |
| @@ -6,4 +6,10 @@
 | |
|  void board_early_setup(const struct board_info *board,
 | |
|  		       int (*get_mac_address)(u8 mac[ETH_ALEN]));
 | |
|  
 | |
| +#if defined(CONFIG_BOARD_BCM963XX)
 | |
| +void board_bcm963xx_init(void);
 | |
| +#else
 | |
| +static inline void board_bcm963xx_init(void) { }
 | |
| +#endif
 | |
| +
 | |
|  #endif /* __BOARD_COMMON_H */
 |