@@ -2792,90 +2792,6 @@ static void __init flatten_device_tree(void)
27922792 dt_struct_start , dt_struct_end );
27932793}
27942794
2795- #ifdef CONFIG_PPC_MAPLE
2796- /* PIBS Version 1.05.0000 04/26/2005 has an incorrect /ht/isa/ranges property.
2797- * The values are bad, and it doesn't even have the right number of cells. */
2798- static void __init fixup_device_tree_maple (void )
2799- {
2800- phandle isa ;
2801- u32 rloc = 0x01002000 ; /* IO space; PCI device = 4 */
2802- u32 isa_ranges [6 ];
2803- char * name ;
2804-
2805- name = "/ht@0/isa@4" ;
2806- isa = call_prom ("finddevice" , 1 , 1 , ADDR (name ));
2807- if (!PHANDLE_VALID (isa )) {
2808- name = "/ht@0/isa@6" ;
2809- isa = call_prom ("finddevice" , 1 , 1 , ADDR (name ));
2810- rloc = 0x01003000 ; /* IO space; PCI device = 6 */
2811- }
2812- if (!PHANDLE_VALID (isa ))
2813- return ;
2814-
2815- if (prom_getproplen (isa , "ranges" ) != 12 )
2816- return ;
2817- if (prom_getprop (isa , "ranges" , isa_ranges , sizeof (isa_ranges ))
2818- == PROM_ERROR )
2819- return ;
2820-
2821- if (isa_ranges [0 ] != 0x1 ||
2822- isa_ranges [1 ] != 0xf4000000 ||
2823- isa_ranges [2 ] != 0x00010000 )
2824- return ;
2825-
2826- prom_printf ("Fixing up bogus ISA range on Maple/Apache...\n" );
2827-
2828- isa_ranges [0 ] = 0x1 ;
2829- isa_ranges [1 ] = 0x0 ;
2830- isa_ranges [2 ] = rloc ;
2831- isa_ranges [3 ] = 0x0 ;
2832- isa_ranges [4 ] = 0x0 ;
2833- isa_ranges [5 ] = 0x00010000 ;
2834- prom_setprop (isa , name , "ranges" ,
2835- isa_ranges , sizeof (isa_ranges ));
2836- }
2837-
2838- #define CPC925_MC_START 0xf8000000
2839- #define CPC925_MC_LENGTH 0x1000000
2840- /* The values for memory-controller don't have right number of cells */
2841- static void __init fixup_device_tree_maple_memory_controller (void )
2842- {
2843- phandle mc ;
2844- u32 mc_reg [4 ];
2845- char * name = "/hostbridge@f8000000" ;
2846- u32 ac , sc ;
2847-
2848- mc = call_prom ("finddevice" , 1 , 1 , ADDR (name ));
2849- if (!PHANDLE_VALID (mc ))
2850- return ;
2851-
2852- if (prom_getproplen (mc , "reg" ) != 8 )
2853- return ;
2854-
2855- prom_getprop (prom .root , "#address-cells" , & ac , sizeof (ac ));
2856- prom_getprop (prom .root , "#size-cells" , & sc , sizeof (sc ));
2857- if ((ac != 2 ) || (sc != 2 ))
2858- return ;
2859-
2860- if (prom_getprop (mc , "reg" , mc_reg , sizeof (mc_reg )) == PROM_ERROR )
2861- return ;
2862-
2863- if (mc_reg [0 ] != CPC925_MC_START || mc_reg [1 ] != CPC925_MC_LENGTH )
2864- return ;
2865-
2866- prom_printf ("Fixing up bogus hostbridge on Maple...\n" );
2867-
2868- mc_reg [0 ] = 0x0 ;
2869- mc_reg [1 ] = CPC925_MC_START ;
2870- mc_reg [2 ] = 0x0 ;
2871- mc_reg [3 ] = CPC925_MC_LENGTH ;
2872- prom_setprop (mc , name , "reg" , mc_reg , sizeof (mc_reg ));
2873- }
2874- #else
2875- #define fixup_device_tree_maple ()
2876- #define fixup_device_tree_maple_memory_controller ()
2877- #endif
2878-
28792795#ifdef CONFIG_PPC_CHRP
28802796/*
28812797 * Pegasos and BriQ lacks the "ranges" property in the isa node
@@ -3193,8 +3109,6 @@ static inline void fixup_device_tree_pasemi(void) { }
31933109
31943110static void __init fixup_device_tree (void )
31953111{
3196- fixup_device_tree_maple ();
3197- fixup_device_tree_maple_memory_controller ();
31983112 fixup_device_tree_chrp ();
31993113 fixup_device_tree_pmac ();
32003114 fixup_device_tree_efika ();
0 commit comments