@ -12,6 +12,7 @@
# include <dm.h>
# include <dm.h>
# include <fsl_esdhc.h>
# include <fsl_esdhc.h>
# include <miiphy.h>
# include <miiphy.h>
# include <mtd_node.h>
# include <netdev.h>
# include <netdev.h>
# include <errno.h>
# include <errno.h>
# include <usb.h>
# include <usb.h>
@ -28,6 +29,7 @@
# include <asm/io.h>
# include <asm/io.h>
# include <asm/gpio.h>
# include <asm/gpio.h>
# include <dm/platform_data/serial_mxc.h>
# include <dm/platform_data/serial_mxc.h>
# include <jffs2/load_kernel.h>
# include "common.h"
# include "common.h"
# include "../common/eeprom.h"
# include "../common/eeprom.h"
# include "../common/common.h"
# include "../common/common.h"
@ -581,6 +583,17 @@ int cm_fx6_setup_ecspi(void) { return 0; }
# ifdef CONFIG_OF_BOARD_SETUP
# ifdef CONFIG_OF_BOARD_SETUP
# define USDHC3_PATH " / soc / aips-bus@02100000 / usdhc@02198000 / "
# define USDHC3_PATH " / soc / aips-bus@02100000 / usdhc@02198000 / "
struct node_info nodes [ ] = {
/*
* Both entries target the same flash chip . The st , m25p compatible
* is used in the vendor device trees , while upstream uses ( the
* documented ) jedec , spi - nor comptatible .
*/
{ " st,m25p " , MTD_DEV_TYPE_NOR , } ,
{ " jedec,spi-nor " , MTD_DEV_TYPE_NOR , } ,
} ;
int ft_board_setup ( void * blob , bd_t * bd )
int ft_board_setup ( void * blob , bd_t * bd )
{
{
u32 baseboard_rev ;
u32 baseboard_rev ;
@ -589,6 +602,8 @@ int ft_board_setup(void *blob, bd_t *bd)
char baseboard_name [ 16 ] ;
char baseboard_name [ 16 ] ;
int err ;
int err ;
fdt_shrink_to_minimum ( blob ) ; /* Make room for new properties */
/* MAC addr */
/* MAC addr */
if ( eth_getenv_enetaddr ( " ethaddr " , enetaddr ) ) {
if ( eth_getenv_enetaddr ( " ethaddr " , enetaddr ) ) {
fdt_find_and_setprop ( blob ,
fdt_find_and_setprop ( blob ,
@ -607,7 +622,6 @@ int ft_board_setup(void *blob, bd_t *bd)
return 0 ; /* Assume not an early revision SB-FX6m baseboard */
return 0 ; /* Assume not an early revision SB-FX6m baseboard */
if ( ! strncmp ( " SB-FX6m " , baseboard_name , 7 ) & & baseboard_rev < = 120 ) {
if ( ! strncmp ( " SB-FX6m " , baseboard_name , 7 ) & & baseboard_rev < = 120 ) {
fdt_shrink_to_minimum ( blob ) ; /* Make room for new properties */
nodeoffset = fdt_path_offset ( blob , USDHC3_PATH ) ;
nodeoffset = fdt_path_offset ( blob , USDHC3_PATH ) ;
fdt_delprop ( blob , nodeoffset , " cd-gpios " ) ;
fdt_delprop ( blob , nodeoffset , " cd-gpios " ) ;
fdt_find_and_setprop ( blob , USDHC3_PATH , " broken-cd " ,
fdt_find_and_setprop ( blob , USDHC3_PATH , " broken-cd " ,
@ -616,6 +630,8 @@ int ft_board_setup(void *blob, bd_t *bd)
NULL , 0 , 1 ) ;
NULL , 0 , 1 ) ;
}
}
fdt_fixup_mtdparts ( blob , nodes , ARRAY_SIZE ( nodes ) ) ;
return 0 ;
return 0 ;
}
}
# endif
# endif