diff options
| author | wdenk <wdenk> | 2003-05-21 20:26:20 +0000 | 
|---|---|---|
| committer | wdenk <wdenk> | 2003-05-21 20:26:20 +0000 | 
| commit | c8c3a8be2dd09e51d7dc33f431e3a638ac5688f2 (patch) | |
| tree | 4c88c168e175f41678574f3d72131d9222f722ff /common/cmd_vfd.c | |
| parent | 82226bf4d2fe87076d7f5d7e2677fdd5d0e35fc2 (diff) | |
| download | olio-uboot-2014.01-c8c3a8be2dd09e51d7dc33f431e3a638ac5688f2.tar.xz olio-uboot-2014.01-c8c3a8be2dd09e51d7dc33f431e3a638ac5688f2.zip | |
Add support for arbitrary bitmaps for TRAB's  VFD command;LABEL_2003_05_22_2230
allow to pass boot bitmap addresses in environment variables;
allow for zero boot delay
Diffstat (limited to 'common/cmd_vfd.c')
| -rw-r--r-- | common/cmd_vfd.c | 26 | 
1 files changed, 19 insertions, 7 deletions
| diff --git a/common/cmd_vfd.c b/common/cmd_vfd.c index ac0224c08..3ef1395b2 100644 --- a/common/cmd_vfd.c +++ b/common/cmd_vfd.c @@ -61,7 +61,7 @@ int do_vfd (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[])  	/* display bitmap at given address */  	bitmap = simple_strtoul(argv[1], NULL, 16); -	transfer_pic(1, (uchar *)bitmap, VFD_LOGO_HEIGHT, VFD_LOGO_WIDTH); +	transfer_pic(3, (uchar *)bitmap, VFD_LOGO_HEIGHT, VFD_LOGO_WIDTH);  	return 0;  }  #endif	/* CFG_CMD_VFD */ @@ -69,19 +69,31 @@ int do_vfd (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[])  #ifdef CONFIG_VFD  int trab_vfd (ulong bitmap)  { +	uchar *addr; +	char *s; +  	switch (bitmap) {  	case VFD_TEST_LOGO_BMPNR: -		transfer_pic(1, &vfd_test_logo_bitmap[0], -			VFD_LOGO_HEIGHT, VFD_LOGO_WIDTH); -		return 0; +		if ((s = getenv ("bitmap0")) != NULL) { +			addr = (uchar *)simple_strtoul (s, NULL, 16); +		} else { +			addr = &vfd_test_logo_bitmap[0]; +		} +		break;  	case VFD_REMOTE_LOGO_BMPNR: -		transfer_pic(1, &vfd_remote_logo_bitmap[0], +		transfer_pic(3, &vfd_remote_logo_bitmap[0],  			VFD_LOGO_HEIGHT, VFD_LOGO_WIDTH); -		return 0; +		if ((s = getenv ("bitmap1")) != NULL) { +			addr = (uchar *)simple_strtoul (s, NULL, 16); +		} else { +			addr = &vfd_remote_logo_bitmap[0]; +		} +		break;  	default:  		printf("Unknown bitmap %ld\n", bitmap);  		return 1;  	} -	/* NOTREACHED */ +	transfer_pic(3, addr, VFD_LOGO_HEIGHT, VFD_LOGO_WIDTH); +	return 0;  }  #endif	/* CONFIG_VFD */ |