Author: bde
Date: Fri Mar 10 10:25:48 2017
New Revision: 314997
URL: https://svnweb.freebsd.org/changeset/base/314997

Log:
  Fix compilation on sparc64.  The frame buffer address is in a field that
  is unavailable on sparc64 only.  This makes the new ec_putc() a non-op
  on sparc64 but still calls it.  On other non-x86 arches, it should
  compile but might not work.
  
  Reported by:  gjb

Modified:
  head/sys/dev/syscons/syscons.c

Modified: head/sys/dev/syscons/syscons.c
==============================================================================
--- head/sys/dev/syscons/syscons.c      Fri Mar 10 10:09:44 2017        
(r314996)
+++ head/sys/dev/syscons/syscons.c      Fri Mar 10 10:25:48 2017        
(r314997)
@@ -277,7 +277,9 @@ static      u_int   ec_scroffset;
  * set (likely non-fake) graphics mode to get a null initial ec_putc().
  */
 static scr_stat        fake_main_console = {
+#ifndef __sparc64__
        .scr.vtb_buffer = 0xb8000,
+#endif
        .xsize = 80,
        .ysize = 25,
 #if !defined(__amd64__) && !defined(__i386__)
@@ -290,6 +292,7 @@ static      scr_stat        fake_main_console = {
 static void
 ec_putc(int c)
 {
+#ifndef __sparc64__
        u_short *scrptr;
        u_int ind;
        int attr, column, mysize, width, xsize, yborder, ysize;
@@ -321,6 +324,7 @@ ec_putc(int c)
        do
                scrptr[ind++ % mysize] = (attr << 8) | c;
        while (--width != 0);
+#endif /* !__sparc64__ */
 }
 
 #undef main_console
_______________________________________________
svn-src-head@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"

Reply via email to