<?xml version="1.0" encoding="utf-8"?>
<!--
    vivocommondconfigs.xml - Common Resource Node Configuration

    Structure:
        <ResourceConfigs>
            <PerfResources>
                <Major OpcodeValue="...">
                    <Minor OpcodeValue="..." Node="..." [Supported="..."] />
                </Major>
            </PerfResources>
        </ResourceConfigs>

    Attributes:
        Major:
            OpcodeValue: Major group ID (hex)

        Minor:
            OpcodeValue: Resource ID within the major group
            Node:        Sysfs node path
            Supported:   Platform support bitmask (optional)
                         0x001 = qcom
                         0x010 = mtk
                         0x100 = samsung
                         0x111 = all platforms
                         0x000 = none
                         (default: support all)

    Special Resources:
        For resources requiring special acquire/release functions,
        use keyword SPECIAL_NODE in Node field and implement
        ApplyOpts/ResetOpts in code.

    Example:
        <Major OpcodeValue="0x0">
            <Minor OpcodeValue="0x0" Node="/proc/sys/kernel/sched_min_granularity_ns"/>
            <Minor OpcodeValue="0x3" Node="/sys/rsc/svp/cpulimit" Supported="0x111" />
        </Major>
-->

<ResourceConfigs version="2026052801">
    <PerfResources>

    <!-- vivo cpu major start -->
    <Major OpcodeValue="0x0" />
        <Minor OpcodeValue="0x0" Node="/proc/sys/kernel/sched_min_granularity_ns"/>
        <Minor OpcodeValue="0x1" Node="/sys/rsc/rsc_sched_boost_ctrl"/>
        <Minor OpcodeValue="0x2" Node="/sys/class/devfreq/18590000.qcom,devfreq-l3:qcom,cpu7-cpu-l3-lat/min_freq" Supported="0x001"  />
        <Minor OpcodeValue="0x3" Node="/sys/rsc/svp/cpulimit" Supported="0x111" />
        <Minor OpcodeValue="0x4" Node="/sys/rsc/svp/cpulimit_uid" Supported="0x111" />
        <Minor OpcodeValue="0x5" Node="/sys/rsc/svp/svp_ui_boost" Supported="0x111" />
		<Minor OpcodeValue="0x6" Node="/sys/rsc/fas/freq_max" Supported="0x111" />
        <Minor OpcodeValue="0x7" Node="/sys/rsc/fas/freq_max" Supported="0x111" />
        <Minor OpcodeValue="0x8" Node="/sys/rsc/fas/freq_max" Supported="0x111" />
        <Minor OpcodeValue="0x9" Node="/sys/rsc/fas/freq_max" Supported="0x111" />
        <Minor OpcodeValue="0xa" Node="/sys/rsc/fas/freq_min" Supported="0x111" />
        <Minor OpcodeValue="0xc" Node="/sys/rsc/fas/freq_min" Supported="0x111" />
        <Minor OpcodeValue="0xd" Node="/sys/rsc/fas/freq_min" Supported="0x111" />
        <Minor OpcodeValue="0xe" Node="/sys/rsc/fas/freq_min" Supported="0x111" />
        <Minor OpcodeValue="0xf" Node="/sys/devices/system/cpu/cpu%d/online" Supported="0x111" />
        <Minor OpcodeValue="0xb" Node="/sys/rsc/svp/launcher_boost_rt" Supported="0x111" />
    <!-- vivo cpu major end -->

    <!-- vivo sched major start -->
    <Major OpcodeValue="0x1" />
        <Minor OpcodeValue="0x0" Node="/proc/sys/kernel/sched_min_granularity_ns"/>
        <Minor OpcodeValue="0x1" Node="/sys/rsc/rsc_sched_boost_ctrl" />
        <Minor OpcodeValue="0x2" Node="/proc/sys/kernel/sched_boost" Supported="0x001"/>
        <Minor OpcodeValue="0x3" Node="SPECIAL_NODE-TASKSET" Supported="0x111"/>
        <Minor OpcodeValue="0x4" Node="/sys/rsc/qos/set_task_qos" Supported="0x111"/>
      <!-- vivo sched major end -->

    <!-- vivo gpu start -->
    <Major OpcodeValue="0x2" />
        <Minor OpcodeValue="0x0" Node="/sys/class/devfreq/soc:qcom,kgsl-busmon/min_freq" Supported="0x001"/>
        <!--E9815: /sys/devices/platform/18500000.mali/dvfs_min_lock-->
        <Minor OpcodeValue="0x1" Node="initpath" Supported="0x100"/>
        <Minor OpcodeValue="0x2" Node="/sys/rsc/gpufreq_max" Supported="0x111" />
        <Minor OpcodeValue="0x3" Node="/sys/rsc/gpufreq_min" Supported="0x111" />
    <!-- vivo gpu  major end -->


    <!-- vivo memory ufs  start -->
    <Major OpcodeValue="0x3" />
        <Minor OpcodeValue="0x0" Node="reserverd-unsupported" />
        <Minor OpcodeValue="0x1" Node="/proc/sys/vm/compact_memory" Supported="0x111" />
        <Minor OpcodeValue="0x2" Node="/sys/class/scsi_host/host0/../../../qcom/irq_affinity_enable" Supported="0x010" />
    <!-- vivo memory ufs  major end -->

    <!-- vivo misc  majorstart -->
    <Major OpcodeValue="0x4" />
        <Minor OpcodeValue="0x0" Node="/proc/pem/thml_key_type" Supported="0x001"  />
        <Minor OpcodeValue="0x1" Node="/sys/rsc/svp/sort_util_pid" Supported="0x001"  />
        <Minor OpcodeValue="0x2" Node="/sys/rsc/svp/cpu_multi_benchmack" Supported="0x111"  />
        <Minor OpcodeValue="0x3" Node="/sys/block/sda/queue/scheduler" Supported="0x011" />
    <!-- vivo misc major end -->

    </PerfResources>
</ResourceConfigs>
