Author: jhibbits
Date: Mon Apr 16 04:02:53 2018
New Revision: 332546
URL: https://svnweb.freebsd.org/changeset/base/332546

Log:
  Use a resource hint instead of environment variable for DIU mode
  
  This makes it more consistent with FreeBSD norms, rather than using Linux's
  norms.  Now, instead of needing an environment variable
  
    video-mode=fslfb:1280x1024@60
  
  Now one would use a hint:
  
    hint.fb.0.mode=1280x1024@60

Modified:
  head/sys/powerpc/mpc85xx/fsl_diu.c

Modified: head/sys/powerpc/mpc85xx/fsl_diu.c
==============================================================================
--- head/sys/powerpc/mpc85xx/fsl_diu.c  Mon Apr 16 03:58:08 2018        
(r332545)
+++ head/sys/powerpc/mpc85xx/fsl_diu.c  Mon Apr 16 04:02:53 2018        
(r332546)
@@ -363,12 +363,9 @@ diu_attach(device_t dev)
 
        /* TODO: Eventually, allow EDID to be dynamically provided. */
        if (OF_getprop_alloc(node, "edid", &edid_cells) <= 0) {
-               /*
-                * u-boot uses the environment variable name 'video-mode', so
-                * just use the same name here.  Should allow another variable
-                * that better fits our design model, but this is fine.
-                */
-               if ((vm_name = kern_getenv("video-mode")) == NULL) {
+               /* Get a resource hint: hint.fb.N.mode */
+               if (resource_string_value(device_get_name(dev),
+                   device_get_unit(dev), "mode", &vm_name) != 0) {
                        device_printf(dev,
                            "No EDID data and no video-mode env set\n");
                        return (ENXIO);
@@ -383,7 +380,7 @@ diu_attach(device_t dev)
                videomode = edid.edid_preferred_mode;
        } else {
                /* Parse video-mode kenv variable. */
-               if ((err = sscanf(vm_name, "fslfb:%dx%d@%d", &w, &h, &r)) != 3) 
{
+               if ((err = sscanf(vm_name, "%dx%d@%d", &w, &h, &r)) != 3) {
                        device_printf(dev,
                            "Cannot parse video mode: %s\n", vm_name);
                        return (ENXIO);
_______________________________________________
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"

Reply via email to