Changeset 47679


Ignore:
Timestamp:
2015-11-30T13:32:12+01:00 (2 years ago)
Author:
jow
Message:

base-files: uci-defaults-new, config_generate: allow force tagged cpu ports

Signed-off-by: Jo-Philipp Wich <jow@…>

Location:
trunk/package/base-files/files
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/package/base-files/files/bin/config_generate

    r47675 r47679  
    174174                                if [ -n "$vlan_ports" ]; then 
    175175                                        let cpu_port="cpu$((vlan_off % n_cpu))" 
    176                                         [ $n_vlan -gt $n_cpu ] && cpu_port="${cpu_port}t" 
     176                                        let need_tag="tag$((vlan_off % n_cpu))" 
     177                                        [ $n_vlan -gt $n_cpu -o $need_tag -eq 1 ] && cpu_port="${cpu_port}t" 
    177178 
    178179                                        uci -q batch <<-EOF 
     
    199200        vlan_off=0; while [ $vlan_off -lt $n_vlan ]; do 
    200201                eval role="\$role$((vlan_off))" 
    201                 eval device="\$dev$((vlan_off++ % n_cpu))" 
    202                 [ $n_vlan -gt $n_cpu ] && device="$device.$vlan_off" 
     202                eval device="\$dev$((vlan_off % n_cpu))" 
     203                let need_tag="tag$((vlan_off++ % n_cpu))" 
     204                [ $n_vlan -gt $n_cpu -o $need_tag -eq 1 ] && device="$device.$vlan_off" 
    203205 
    204206                # quirk: append ifnames for subsequent switches 
  • trunk/package/base-files/files/lib/functions/uci-defaults-new.sh

    r47673 r47679  
    117117ucidef_add_switch_ports() { 
    118118        local name="$1"; shift 
    119         local port num role dev idx 
     119        local port num role dev idx tag 
    120120 
    121121        json_select_object switch 
     
    128128                                num="${port%%@*}" 
    129129                                dev="${port##*@}" 
     130                                tag=0 
     131                                [ "${num%t}" != "$num" ] && { 
     132                                        num="${num%t}" 
     133                                        tag=1 
     134                                } 
    130135                        ;; 
    131136                        [0-9]*:*:[0-9]*) 
     
    144149                        json_add_int num "$num" 
    145150                        [ -n "$dev" ] && json_add_string device "$dev" 
     151                        [ -n "$tag" ] && json_add_boolean need_tag "$tag" 
    146152                        [ -n "$role" ] && json_add_string role "$role" 
    147153                        [ -n "$idx" ] && json_add_int index "$idx" 
     
    149155                fi 
    150156 
    151                 unset num dev role idx 
     157                unset num dev role idx tag 
    152158        done 
    153159 
Note: See TracChangeset for help on using the changeset viewer.