display.c 963 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. // SPDX-License-Identifier: GPL-2.0+
  2. /*
  3. * (C) Copyright 2005
  4. * Wolfgang Denk, DENX Software Engineering, wd@denx.de.
  5. */
  6. #include <common.h>
  7. #include <command.h>
  8. #include <led-display.h>
  9. #undef DEBUG_DISP
  10. int do_display (cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
  11. {
  12. int i;
  13. /* Clear display */
  14. display_set(DISPLAY_CLEAR | DISPLAY_HOME);
  15. if (argc < 2)
  16. return (0);
  17. for (i = 1; i < argc; i++) {
  18. char *p = argv[i];
  19. if (i > 1) { /* Insert a space between strings */
  20. display_putc(' ');
  21. }
  22. while ((*p)) {
  23. #ifdef DEBUG_DISP
  24. putc(*p);
  25. #endif
  26. display_putc(*p++);
  27. }
  28. }
  29. #ifdef DEBUG_DISP
  30. putc('\n');
  31. #endif
  32. return (0);
  33. }
  34. /***************************************************/
  35. U_BOOT_CMD(
  36. display, CONFIG_SYS_MAXARGS, 1, do_display,
  37. "display string on dot matrix display",
  38. "[<string>]\n"
  39. " - with <string> argument: display <string> on dot matrix display\n"
  40. " - without arguments: clear dot matrix display"
  41. );