I don’t think that max-brightness is a device tree property for the PWM backlight driver. Compare with the driver’s binding description.
I guess you missed that brightness-levels is a list of duty-cycles used for the PWM. To set one of these duty cycles you use the zero based index into this list.
So, assuming you want the duty cycle to be 8/255 by default you want the third element in the list, i.e. a zero base index of 2 resulting in a device tree node of:
Note that /sys/class/backlight/backlight.15/max_brightness is the highest index you can write into the brightness file, i.e. the number of levels in brightness-levels minus 1.
Note that the default-brightness-level is set to the maximum allowed if you specify something bigger in the device tree.
If Linux is regularly shut down systemd preserves the the last active brightness level across boots. So I guess you did do a shutdown with before using a new device tree and thus you see a brightness level of ‘4’ after boot.