Cherry-pick changes for TCA6507 LED driver

 * bb9b6ef70f08f256ab4b8ec127c17ee629b85350
   leds: led-class.c - Quiet boot messages

 * 14b5d6dd40b3091cb5f566568baa4a74dc619286
   leds: Fix race between LED device uevent and actual attributes creation

 * 5a0e3ad6af8660be21ca98a971cd00f331318c05
   include cleanup: Update gfp.h and slab.h includes to prepare for breaking
   implicit slab.h inclusion from percpu.h
   [salsa] Updated drivers/leds/ledtrig-timer.c only

 * 5ada28bf76752e33dce3d807bf0dfbe6d1b943ad
   led-class: always implement blinking

 * 91facc22dec964683aef88f5620a790a6e46b98a
   led_class: fix typo in blink API
Do not set default trigger
Send uevent after sysfs nodes are created

We send only TRIGGER=timer KOBJ_CHANGE for now.
Enter shutdown state when no LEDs are on

This fixes #3
Cleanup of tca6507 driver

 * Free GPIO only if provided
 * Return -EINVAL in case of missing GPIO info
   See http://lkml.indiana.edu/hypermail/linux/kernel/0812.2/00432.html
 * Disable debug