View | Details | Raw Unified | Return to bug 223872
Collapse All | Expand All

(-)yast-trunk/yast2/library/modules/Arch.ycp (-14 / +14 lines)
Lines 216-221 global string board_compatible () { Link Here
216
		_board_compatible = checksys;
216
		_board_compatible = checksys;
217
	    }
217
	    }
218
	});
218
	});
219
	y2milestone("_board_compatible '%1' \n", _board_compatible);
219
	if (i386 () || x86_64 ())
220
	if (i386 () || x86_64 ())
220
	{
221
	{
221
	    _board_compatible = "wintel";
222
	    _board_compatible = "wintel";
Lines 223-234 global string board_compatible () { Link Here
223
	// hwinfo expects CHRP/PReP/iSeries/MacRISC* in /proc/cpuinfo
224
	// hwinfo expects CHRP/PReP/iSeries/MacRISC* in /proc/cpuinfo
224
	// there is no standard for the board identification
225
	// there is no standard for the board identification
225
	// Cell and Maple based boards have no CHRP in /proc/cpuinfo
226
	// Cell and Maple based boards have no CHRP in /proc/cpuinfo
226
	if (ppc () && _board_compatible == nil)
227
	// Pegasos and Cell do have CHRP in /proc/cpuinfo, but Pegasos2 should no be handled as CHRP
228
	if (ppc () && (_board_compatible == nil || _board_compatible == "CHRP"))
227
	{
229
	{
228
	    map device_type = (map) SCR::Execute (.target.bash_output,
230
	    map device_type = (map) SCR::Execute (.target.bash_output,
229
		"echo `cat /proc/device-tree/device_type`" , $[]);
231
		"echo -n `cat /proc/device-tree/device_type`" , $[]);
230
	    map model = (map) SCR::Execute (.target.bash_output,
232
	    map model = (map) SCR::Execute (.target.bash_output,
231
		"echo `cat /proc/device-tree/model`" , $[]);
233
		"echo -n `cat /proc/device-tree/model`" , $[]);
232
	    string board = model["stdout"]:"";
234
	    string board = model["stdout"]:"";
233
	    y2milestone("model %1 , device_type %2\n", model, device_type);
235
	    y2milestone("model %1 , device_type %2\n", model, device_type);
234
	    // catch remaining IBM boards
236
	    // catch remaining IBM boards
Lines 237-254 global string board_compatible () { Link Here
237
	    {
239
	    {
238
		_board_compatible = "CHRP";
240
		_board_compatible = "CHRP";
239
	    }
241
	    }
240
	    else
242
	    // Maple has its own way of pretenting OF1275 compliance
241
	    {
243
	    if (board == "Momentum,Maple-D" || board == "Momentum,Maple-L"
242
		// Maple has its own way of pretenting OF1275 compliance
243
		if (board == "Momentum,Maple-D" || board == "Momentum,Maple-L"
244
		    || board == "Momentum,Maple")
244
		    || board == "Momentum,Maple")
245
		{
245
	    {
246
		     _board_compatible = "CHRP";
246
		_board_compatible = "CHRP";
247
		}
247
	    }
248
		if (board == "Pegasos2")
248
	    // Pegasos has CHRP in /proc/cpuinfo and 'chrp' in /proc/device-tree/device_type
249
		{
249
	    if (board == "Pegasos2")
250
		     _board_compatible = "Pegasos";
250
	    {
251
		}
251
		_board_compatible = "Pegasos";
252
	    }
252
	    }
253
	}
253
	}
254
	// avoid future re-probing if probing failed
254
	// avoid future re-probing if probing failed

Return to bug 223872