Ooops, I accidentally used some bash specific syntax in the first patch. The attached patch fixes this and should work now. It also makes sure the right option is passed into parse_video_opts (was $TMP, should be $x)
--- framebuffer.orig 2006-11-14 06:54:08.000000000 +0000 +++ framebuffer.fixed_parse_video_opts 2006-12-18 20:09:51.000000000 +0000 @@ -43,8 +43,11 @@ # Already in the "<arg>=<value>" form if [ "$opt" != "${opt#*=}" ]; then echo -n "$opt " + # In the "<arg>:<value>" form + elif [ "$opt" != "${opt#*:}" ]; then + echo -n "${opt%:*}=${opt#*:} " # Presumably a modevalue without the "mode=" prefix - elif [ "$opt" != "${opt#[[:digit:]]*x[[:digit:]]}"; then + elif [ "$opt" != "${opt#[[:digit:]]*x[[:digit:]]}" ]; then echo -n "mode=$opt " # Presumably a boolean else @@ -72,7 +75,7 @@ video=*) FB=${x#*=} FB="${FB%%:*}" - OPTS="$(parse_video_opts "$TMP")" + OPTS="$(parse_video_opts "$x")" esac done