ramips: TEW-691GR.dts fixes
[openwrt.git] / scripts / metadata.pl
index 0f4ae9f..6249127 100755 (executable)
@@ -115,6 +115,7 @@ sub gen_kconfig_overrides() {
                                        $val = $2;
                                }
                                if ($config{"CONFIG_PACKAGE_$package"} and ($config ne 'n')) {
+                                       next if $kconfig{$config} eq 'y';
                                        $kconfig{$config} = $val;
                                } elsif (!$override) {
                                        $kconfig{$config} or $kconfig{$config} = 'n';
@@ -161,6 +162,7 @@ sub target_config_features(@) {
                /usb/ and $ret .= "\tselect USB_SUPPORT\n";
                /usbgadget/ and $ret .= "\tselect USB_GADGET_SUPPORT\n";
                /pcmcia/ and $ret .= "\tselect PCMCIA_SUPPORT\n";
+               /rtc/ and $ret .= "\tselect RTC_SUPPORT\n";
                /squashfs/ and $ret .= "\tselect USES_SQUASHFS\n";
                /jffs2/ and $ret .= "\tselect USES_JFFS2\n";
                /ext4/ and $ret .= "\tselect USES_EXT4\n";
@@ -172,6 +174,7 @@ sub target_config_features(@) {
                /ramdisk/ and $ret .= "\tselect USES_INITRAMFS\n";
                /powerpc64/ and $ret .= "\tselect powerpc64\n";
                /nommu/ and $ret .= "\tselect NOMMU\n";
+               /mips16/ and $ret .= "\tselect HAS_MIPS16\n";
        }
        return $ret;
 }
@@ -231,6 +234,7 @@ EOF
        }
        if (@{$target->{subtargets}} > 0) {
                $confstr .= "\tselect HAS_SUBTARGETS\n";
+               grep { /broken/ } @{$target->{features}} and $confstr .= "\tdepends BROKEN\n";
        } else {
                $confstr .= $features;
        }
@@ -268,7 +272,7 @@ sub gen_target_config() {
        print <<EOF;
 choice
        prompt "Target System"
-       default TARGET_brcm47xx
+       default TARGET_ar71xx
        reset if !DEVEL
        
 EOF
@@ -475,6 +479,7 @@ sub mconf_depends {
                        $flags =~ /@/ or $depend = "PACKAGE_$depend";
                        if ($condition) {
                                if ($m =~ /select/) {
+                                       next if $depend eq $condition;
                                        $depend = "$depend if $condition";
                                } else {
                                        $depend = "!($condition) || $depend";