diff --git a/package/base-files/files/etc/init.d/led b/package/base-files/files/etc/init.d/led
index 1f05d724a2e6edb486ae05a25b0fddc4cf0e9662..9237b4f892dfdc87c96771ea990e1bb1438b1297 100755
--- a/package/base-files/files/etc/init.d/led
+++ b/package/base-files/files/etc/init.d/led
@@ -22,8 +22,8 @@ load_led() {
 	config_get delayon $1 delayon
 	config_get delayoff $1 delayoff
 
-	[ -e /sys/class/leds/${sysfs}/brightness -a -n "$name" ] && {
-		logger "setting up led : $name"
+	[ -e /sys/class/leds/${sysfs}/brightness ] && {
+		logger "setting up led : ${name:-$sysfs}"
 		[ -n "$default" ] && { 
 			[ $default -eq 1 ] && 
 				echo 1 >/sys/class/leds/${sysfs}/brightness 
diff --git a/package/base-files/files/sbin/led.sh b/package/base-files/files/sbin/led.sh
index e4e92af7eafaf7b79b74de094ff2ff804e013795..44629d9903de21ef52230be7d7d8b191533765c9 100755
--- a/package/base-files/files/sbin/led.sh
+++ b/package/base-files/files/sbin/led.sh
@@ -9,7 +9,7 @@ do_led() {
 	local sysfs
 	config_get name $1 name
 	config_get sysfs $1 sysfs
-	[ "$name" == "$NAME" -a -e "/sys/class/leds/${sysfs}" ] && {
+	[ "$name" == "$NAME" -o "$sysfs" = "$NAME" -a -e "/sys/class/leds/${sysfs}" ] && {
 		[ "$ACTION" == "set" ] &&
 			echo 1 >/sys/class/leds/${sysfs}/brightness \
 			|| echo 0 >/sys/class/leds/${sysfs}/brightness