mirror of
https://git.yoctoproject.org/poky
synced 2026-05-31 12:49:46 +00:00
sysvinit-inittab: start_getty: consider whitespaces in tty driver name
Unbreak serial console when driver name contains spaces (PXA serial). Fix commit ac0e954 "start_getty: Over added SERIAL_CONSOLE cause error in userspace log" (From OE-Core rev: 8b98302c30efb7073f61dc2a166f7414f050ef65) Signed-off-by: Andrea Adami <andrea.adami@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
committed by
Richard Purdie
parent
cf166da446
commit
fbefc32988
@@ -8,21 +8,26 @@
|
|||||||
####################################################################################
|
####################################################################################
|
||||||
|
|
||||||
# Get active serial filename.
|
# Get active serial filename.
|
||||||
active_serial=$(grep "serial" /proc/tty/drivers | grep -oh "^\s*\S*")
|
active_serial=$(grep "serial" /proc/tty/drivers | cut -d/ -f1 | sed "s/ *$//")
|
||||||
|
|
||||||
# Re-phrase input parameter from ttyS target index (ttyS1, ttyS2, ttyAMA0, etc).
|
# Re-phrase input parameter from ttyS target index (ttyS1, ttyS2, ttyAMA0, etc).
|
||||||
runtime_tty=$(echo $2 | grep -oh '[0-9]')
|
runtime_tty=$(echo $2 | grep -oh '[0-9]')
|
||||||
|
|
||||||
|
# Backup $IFS.
|
||||||
|
DEFAULT_IFS=$IFS
|
||||||
|
# Customize Internal Field Separator.
|
||||||
|
IFS="$(printf '\n\t')"
|
||||||
|
|
||||||
for line in $active_serial; do
|
for line in $active_serial; do
|
||||||
# File is availability, file content current active serial target index.
|
# File is availability, file content current active serial target index.
|
||||||
if [ -e /proc/tty/driver/$line ]
|
if [ -e "/proc/tty/driver/$line" ]
|
||||||
then
|
then
|
||||||
# File content a lot of unknown serial. We use -v to remove all unmatch and get left off.
|
# File content a lot of unknown serial. We use -v to remove all unmatch and get left off.
|
||||||
# Tail use to avoid 1st line included into the filter because 1st line is file description.
|
# Tail use to avoid 1st line included into the filter because 1st line is file description.
|
||||||
activetty=$(grep -v "unknown" /proc/tty/driver/$line | tail -n +2 | grep -oh "^\s*\S*[0-9]")
|
activetty=$(grep -v "unknown" "/proc/tty/driver/$line" | tail -n +2 | grep -oh "^\s*\S*[0-9]")
|
||||||
for active in $activetty; do
|
for active in $activetty; do
|
||||||
# Check if both index is match then proceed to enable the serial console.
|
# Check if both index is match then proceed to enable the serial console.
|
||||||
if [ $active -eq $runtime_tty ]
|
if [ $active -eq $runtime_tty ]
|
||||||
then
|
then
|
||||||
if [ -c /dev/$2 ]
|
if [ -c /dev/$2 ]
|
||||||
then
|
then
|
||||||
@@ -33,3 +38,6 @@ for line in $active_serial; do
|
|||||||
done
|
done
|
||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
|
|
||||||
|
# Restore $IFS.
|
||||||
|
IFS=$DEFAULT_IFS
|
||||||
|
|||||||
Reference in New Issue
Block a user