If you figured out how to work with a DSDT you might open up my DSDT and have a look at the PNLF device.
I've got a R580 and got brightness controls working with the (for my lappy) original up / down arrows.
Check my signature for most specs of my laptop if you'd like to know.
Hope this helps you on your way of getting a perfect box
edit: forgot to tell you that it might work with a device properties injection in the chameleon.boot.plist file. It is either adding the PNLF and device-properties or one of the two. I forgot a bit because I have this build quite some time and it's hard to remember EVERYTHING, lol
Here is mine. Try the device properties section (you might copy it inside your plist boot file):
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Boot Banner</key>
<string>No</string>
<key>GraphicsEnabler</key>
<string>Yes</string>
<key>Kernel Flags</key>
<string>arch=x86_64 UseKernelCache=yes npci=0x2000</string>
<key>device-properties</key>
<string>e70400000100000001000000db0400001800000002010c00d041030a000000000101060000010101060000007fff0400220000004100410050004c002c0073006c006f0074002d006e0061006d00650000000a000000536c6f742d31320000004100410050004c002c006200610063006b006c0069006700680074002d0063006f006e00740072006f006c00000008000000010000002e000000400030002c004100410050004c002c0062006f006f0074002d0064006900730070006c00610079000000080000000100000022000000400030002c0064006900730070006c00610079002d00630066006700000008000000ffff36000e0000004e00560050004d00000020000000010000000000000000000000000000000000000000000000000000001c000000400030002c006200750069006c0074002d0069006e00000005000000011e00000072006f006d002d007200650076006900730069006f006e0000000a0000002042494f5300100000004e0056004300410050000000180000000400000000000100fe0000000000000a0000000022000000400030002c006400650076006900630065005f00740079007000650000000c000000646973706c617900100000006d006f00640065006c000000120000004765466f72636520473331304d0038000000400030002c007500730065002d006200610063006b006c0069006700680074002d0062006c0061006e006b0069006e0067000000040000001c000000400030002c00700077006d002d0069006e0066006f0000001c000000021800649059020008520000a51c0000000400000100000014000000400030002c006e0061006d0065000000130000004e5644412c446973706c61792d410022000000400031002c0064006900730070006c00610079002d0063006600670000000800000000ff3e0124000000400031002c00630061006e002d0068006f0074002d0070006c00750067000000040000001c0000006400650076006900630065005f0074007900700065000000100000004e5644412c506172656e740014000000400031002c006e0061006d0065000000130000004e5644412c446973706c61792d420020000000400031002c0063006f006d00700061007400690062006c00650000000f0000004e5644412c4e564d61630022000000400031002c006400650076006900630065005f00740079007000650000000c000000646973706c61790020000000400030002c0063006f006d00700061007400690062006c00650000000f0000004e5644412c4e564d61630014000000400030002c00450044004900440000008400000000ffffffffffff004ca345320000000000120100802213780a87f594574f8c2727505400000001010101010101010101010101010101411c56a0500016303020250058c2100000190000000f0000000000000000002387026401000000fe0053414d53554e470a2020202020000000fe004c544e31353641543032303030007c220000005600520041004d002c0074006f00740061006c00730069007a00650000000800000000000020360000004100410050004c002c006100750078002d0070006f007700650072002d0063006f006e006e0065006300740065006400000008000000010000002e000000400030002c006200610063006b006c0069006700680074002d0063006f006e00740072006f006c0000000800000001000000</string>
<key>system-type</key>
<string>2</string>
<key>GeneratePStates</key>
<string>Yes</string>
<key>GenerateCStates</key>
<string>Yes</string>
<key>Legacy Logo</key>
<string>Yes</string>
<key>SMBIOS</key>
<string>rd(0,0)/Extra/smbios.plist</string>
<key>DSDT</key>
<string>rd(0,0)/Extra/dsdt.aml</string>
</dict>
</plist>