[coreboot] [commit] r6030 - in trunk/src/superio: renesas/m3885x serverengines/pilot via/vt1211

Stefan Reinauer stefan.reinauer at coresystems.de
Sun Nov 7 05:49:09 CET 2010


On 11/6/10 4:36 PM, repository service wrote:
> Modified: trunk/src/superio/serverengines/pilot/pilot_early_init.c
> ==============================================================================
> --- trunk/src/superio/serverengines/pilot/pilot_early_init.c	Sat Nov  6 01:57:19 2010	(r6029)
> +++ trunk/src/superio/serverengines/pilot/pilot_early_init.c	Sun Nov  7 00:36:49 2010	(r6030)
> @@ -29,7 +29,7 @@
>   */
>  static void pilot_early_init(device_t dev)
>  {
> -	unsigned port = dev >> 8;
> +	u16 port = dev >> 8;
>  
>  	print_debug("Using port: ");
>  	print_debug_hex16(port);
> @@ -55,6 +55,7 @@
>  	pnp_set_enable(PNP_DEV(port, 0x3), 0);
>  	pnp_exit_ext_func_mode(dev);
>  */
> +
>  	pnp_enter_ext_func_mode(dev);
>  	pnp_set_logical_device(PNP_DEV(port, 0x4));
>  	pnp_exit_ext_func_mode(dev);
> @@ -95,6 +96,7 @@
>  	pnp_enter_ext_func_mode(dev);
>  	pnp_set_enable(PNP_DEV(port, 0x7), 0);
>  	pnp_exit_ext_func_mode(dev);
> +
>  /*
>  	pnp_enter_ext_func_mode(dev);
>  	pnp_set_logical_device(PNP_DEV(port, 0x8));
I know I have been one of the biggest advocators of this kind of change.
However, I just recently got reminded that there are CPUs without I/O
operations. On these the IO range is usually memory mapped. So this kind
of trick with shifting dev and also assuming that a port I/O address
fits in 16bit is not always possible. Now, who knows if any such system
(except the dead alpha) exists that actually requires Super I/O drivers.
However, we should keep this in mind for other code (like the UART stuff)

Stefan




More information about the coreboot mailing list