aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAge
...
* ENGR00320849-2 ASoC: imx-cs42888: disable the delay powerdownShengjiu Wang2014-07-03
| | | | | | | | | | When test asrc p2p first, then test no asrc p2p, There is no sound after 5s. The reason is that the substream is not same for this two case, then delay powerdown will close the widget for cs42888. But the second will also use the cs42888. So set ignore_pmdown_time to 1. Signed-off-by: Shengjiu Wang <b02247@freescale.com>
* ENGR00320849-1 ASoC: cs4xx8: fix the setting of Functional modeShengjiu Wang2014-07-03
| | | | | | | | | | Failed case: arecord -Dhw:0,1 -f S16_LE -r 96000 -c 2 -traw | aplay -Dhw:0,0 -f S16_LE -r 96000 -c 2 -traw. There is no sound when use this case.The reason is that the setting of Functional mode is not correct. Signed-off-by: Shengjiu Wang <b02247@freescale.com>
* ENGR00321092 vadc: Add VIDIOC_ENUM_FRAMEINTERVALS supportSandor Yu2014-07-03
| | | | | | | Add VIDIOC_ENUM_FRAMEINTERVALS support for vadc driver. Signed-off-by: Sandor Yu <R01008@freescale.com> (cherry picked from commit 4863515c732d86589b7f2c9243c11c81669bd711)
* ENGR00321114 dts: Recpvery gpr item in vadc dts itemSandor Yu2014-07-03
| | | | | | | | Gpr item is remove from vadc dts by dcic patch incorrectly. It should add back, otherwise vadc driver can not initialized. Signed-off-by: Sandor Yu <R01008@freescale.com> (cherry picked from commit f24c5f76c18745c3b6b7562a873dedf0d4a3c321)
* ENGR00320846 v4l2 capture: imx6sx: fix crash issue when rmmod csi_v4l2_captureRobby Cai2014-07-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | The reproduce steps: modprobe fsl_csi modprobe csi_v4l2_capture modprobe ov5640_camera modprobe mxc_vadc_tvin rmmod mxc_vadc_tvin rmmod ov5640_camera rmmod csi_v4l2_capture The kernel dump info: V4L2 freeing image input device Unable to handle kernel NULL pointer dereference at virtual address 00000018 pgd = a8f38000 [00000018] *pgd=a8713831, *pte=00000000, *ppte=00000000 Internal error: Oops: 17 [#1] PREEMPT SMP ARM Modules linked in: csi_v4l2_capture(-) fsl_csi ov5642_camera evbug [last unloaded: ov5640_camera] CPU: 0 PID: 804 Comm: rmmod Not tainted 3.10.31-1.1.0_beta+g3c16fd0 #1 task: a8bfb2c0 ti: a8bc4000 task.ti: a8bc4000 PC is at csi_v4l2_remove+0x14/0x80 [csi_v4l2_capture] LR is at platform_drv_remove+0x18/0x1c The cause is that only one global variable used for two instances in remove() function. This patch changed the global variable to local one to fix it. Signed-off-by: Robby Cai <r63905@freescale.com>
* ENGR00317086-5 dts: Enable dcic driver for imx6sxSandor Yu2014-07-03
| | | | | | | | Enable dcic driver for imx6sx ARM2 and SDB board. Setting LCDIF pins bit 4 for loopback to dcic. Signed-off-by: Sandor Yu <R01008@freescale.com> (cherry picked from commit bf508e6be22d077043c071477250e208621aefd2)
* ENGR00317086-4 dts: Enable dcic driver for imx6q/dlSandor Yu2014-07-03
| | | | | | | Enable dcic driver for imx6q/dl SabreSD and SabreAI Signed-off-by: Sandor Yu <R01008@freescale.com> (cherry picked from commit eec9deb496b20e9dba0de071da9fdfdf779895b3)
* ENGR00317086-3 dcic: Add dcic driver source codeSandor Yu2014-07-03
| | | | | | | | Add dcic driver source code. Support two instance dcic1 and dcic2. Signed-off-by: Sandor Yu <R01008@freescale.com> (cherry picked from commit 5dd90299f33e93252bd1cc7a9704adb9f469fa66)
* ENGR00317086-2 gpr: Add dcic mux define in gpr head fileSandor Yu2014-07-03
| | | | | | | Add dcic mux bit define in gpr head file for both imx6q and imx6sx. Signed-off-by: Sandor Yu <R01008@freescale.com> (cherry picked from commit 216ccc9b67f51935c08387cac31da35fb3fb4568)
* ENGR00317086-1 clk: Add dcic clock define for imx6qSandor Yu2014-07-03
| | | | | | | Add dcic1 and dcic define in imx6q clock tree. Signed-off-by: Sandor Yu <R01008@freescale.com> (cherry picked from commit 93ae4ba005f1931ed3cd4e0ac0e8948e3752ad68)
* ENGR00320554: ARM: imx: drop unncessary PL310 errataRichard Liu2014-07-02
| | | | | | | | | | | The PL310 integrated on i.MX6 series and VF610 are revision r3p1 and later. Per ARM PL310 errata document, 588369 is fixed in r2p0 and 727915 is fixed in r3p1. Neither is needed for i.MX6 or VF610. So let's drop them. Signed-off-by: Richard Liu <r66033@freescale.com> Acked-by: Jason Liu <r64343@freescale.com> Signed-off-by: Shawn Guo <shawn.guo@freescale.com>
* ENGR00320692-2 ARM: dts: imx6sl: make an alias for csiRobby Cai2014-07-01
| | | | | | | | | | | | Becuase in fsl_csi.c, there's a function call as follows. id = of_alias_get_id(pdev->dev.of_node, "csi"); The corresponding change has been made for imx6sx, but not for imx6sl. This patch fixed it by making an alias csi0. Signed-off-by: Robby Cai <r63905@freescale.com> (cherry picked from commit a5738d856fd5a8176f04a5eb316dfd512603ab4a)
* ENGR00320692-1 ARM: dts: imx6sl: fix "csi_id is missing or invalid" issueRobby Cai2014-07-01
| | | | | | | | | | | | | | | | | | | | csi_id property is missing in dts file for imx6sl-evk board, which causes the following kernel dump when insert the csi_v4l2_capture module. This patch fixed it. csi_v4l2 csi_v4l2_cap.22: csi_id missing or invalid Unable to handle kernel NULL pointer dereference at virtual address 00000034 pgd = a8774000 [00000034] *pgd=a957f831, *pte=00000000, *ppte=00000000 Internal error: Oops: 817 [#1] PREEMPT SMP ARM Modules linked in: csi_v4l2_capture(+) fsl_csi ov5642_camera ov5640_camera evbug CPU: 0 PID: 829 Comm: modprobe Not tainted 3.10.31-1.1.0_beta+g3c16fd0 #1 task: a881ef00 ti: a892c000 task.ti: a892c000 PC is at csi_v4l2_probe+0x2a0/0x35c [csi_v4l2_capture] LR is at csi_v4l2_probe+0x290/0x35c [csi_v4l2_capture] Signed-off-by: Robby Cai <r63905@freescale.com> (cherry picked from commit d0173b8ba4027983b2b9e988fafb64124ccb9731)
* ENGR00320627 mcc: fix one compile errorRichard Zhu2014-07-01
| | | | | | | the delete of the tx_buf and tx_lock is not completed. remove the left codes, to fix the compile error. Signed-off-by: Richard Zhu <r65037@freescale.com>
* ENGR00320678 ASoC: cs42xx8: Revert the DAPM routes to the old oneNicolin Chen2014-07-01
| | | | | | | | | | The upstream version of DAPM routes results record noise issue due to its inappropriate power-up sequence. So we provisionally revert this change to the old stable one, and figure out why the sequence has problem later. Acked-by: Wang Shengjiu <b02247@freescale.com> Signed-off-by: Nicolin Chen <Guangyu.Chen@freescale.com> (cherry picked from commit 3cda4b6d88aa7b40ac22652df92fa449063bc35a)
* ENGR00320327 mcc: mcc posix pty interface demo driverRichard Zhu2014-06-30
| | | | | | | | | | | | | | | | | | | | | - /dev/ttyMCCp0 can be created. - use schedule delayed work to kick off the demo - one simple test app(mxc_mcc_tty_test.out) used to do the mcc pty interface demo tests. - m4 part of the mcc pingpong demo is required to be run on m4. - up to now, only the unsigned int decimal number is used in the tests. test how-to by the simple test app: ./mxc_mcc_tty_test.out /dev/ttyMCCp0 115200 R 1 512 & echo <your input> > /dev/ttyMCCp0 then <your input + 1> would be received the test app. Signed-off-by: Richard Zhu <r65037@freescale.com>
* ENGR00320428 v4l2 capture: imx6sx: fix "csi_id is missing or invalid" issueRobby Cai2014-06-30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | csi_id property is missing in dts file for imx6sx-sdb board, which causes the following kernel dump when insert the csi_v4l2_capture module. This patch fixed it. udevd[122]: starting version 182 csi_v4l2 csi1_v4l2_cap.29: csi_id missing or invalid Unable to handle kernel NULL pointer dereference at virtual address 00000034 pgd = a8c50000 [00000034] *pgd=a8c2f831, *pte=00000000, *ppte=00000000 Internal error: Oops: 817 [#1] PREEMPT SMP ARM Modules linked in: evbug csi_v4l2_capture(+) fsl_csi CPU: 0 PID: 147 Comm: udevd Not tainted 3.10.31-01988-gd965cfd-dirty #831 task: a8c95a40 ti: a8c4c000 task.ti: a8c4c000 PC is at csi_v4l2_probe+0x58/0xfc [csi_v4l2_capture] LR is at csi_v4l2_probe+0x50/0xfc [csi_v4l2_capture] pc : [<7f007efc>] lr : [<7f007ef4>] psr: a00f0113 sp : a8c4de40 ip : 600f0113 fp : 00097220 r10: 7f00c000 r9 : a8c4c000 r8 : 7f009d78 r7 : 00000000 r6 : a80ec810 r5 : a80ec800 r4 : 7f009f30 r3 : a8c03000 r2 : 00000000 r1 : a8c03000 r0 : 00000000 Flags: NzCv IRQs on FIQs on Mode SVC_32 ISA ARM Segment user Control: 10c53c7d Table: a8c5004a DAC: 00000015 Process udevd (pid: 147, stack limit = 0xa8c4c238) Stack: (0xa8c4de40 to 0xa8c4e000) This patch also changed csi_id for vadc to 1. Signed-off-by: Robby Cai <r63905@freescale.com>
* ENGR00320439-10 usb: phy: mxs: refine phy shutdownLi Jun2014-06-30
| | | | | | | Complete mxs phy shutdown sequence including disable wakeup and auto bits, power down phy and clock gate. Signed-off-by: Li Jun <b47624@freescale.com>
* ENGR00320439-9 usb: phy: mxs: refine mxs_phy_disconnect_lineLi Jun2014-06-30
| | | | | | | | | For non-otg mode, we keep the usage of disconnect line between phy analog and digital unchanging; for otg mode, at peripheral role, we keep the usage unchanging too, at host role, the digital part needs to know dp/dm change to respond device's data pulse when it is at low power mode. Signed-off-by: Peter Chen <peter.chen@freescale.com>
* ENGR00320439-8 usb: chipidea: otg_fsm: power lost handling for otg fsmLi Jun2014-06-30
| | | | | | This patch adds support for system resume from power lost in otg fsm mode. Signed-off-by: Li Jun <b47624@freescale.com>
* ENGR00320439-7 usb: chipidea: usb resume from power lost during system sleepLi Jun2014-06-30
| | | | | | | | i.MX6SX mega off can shutdown domain power supply if none of peripheral in this domain is registered as wakeup source, this patch adds chipidea controller re-init after resume from such power lost during system sleep. Signed-off-by: Li Jun <b47624@freescale.com>
* ENGR00320439-6 usb: chipidea: export ci_handle_id_switch interfaceLi Jun2014-06-30
| | | | | | | Export ci_handle_id_switch interface for handling id change during system sleep with power off. Signed-off-by: Li Jun <b47624@freescale.com>
* ENGR00320439-5 usb: chipidea: udc: save and restore routine for power lost ↵Li Jun2014-06-30
| | | | | | | | | | of udc Set OP_ENDPTLISTADDR value to be non-zero for power lost check if its value is 0 when suspend. If the controller experienced a power lost in device mode, only force a disconnection if vbus on, and enable vbus irq. Signed-off-by: Li Jun <b47624@freescale.com>
* ENGR00320439-4 usb: chipidea: host: save and restore for host power lostLi Jun2014-06-30
| | | | | | | | | This patch adds interfaces in role driver to prepare and restore state for power lost in system sleep. For host experienced power lost, we can save required resgisters value before suspend; and restore them after resume. Signed-off-by: Li Jun <b47624@freescale.com>
* ENGR00320439-3 usb: chipidea: host:add API to check if device connectedLi Jun2014-06-30
| | | | | | | This patch adds interface to check if the host has usb device connected. Acked-by: Peter Chen <peter.chen@freescale.com> Signed-off-by: Li Jun <b47624@freescale.com>
* ENGR00320439-2 usb: chipidea: host: set ci->hcd to be NULL after stop host role.Li Jun2014-06-30
| | | | | | | Set ci->hcd to be NULL after the hcd is removed. Acked-by: Peter Chen <peter.chen@freescale.com> Signed-off-by: Li Jun <b47624@freescale.com>
* ENGR00320439-1 usb: chipidea: imx: usb resume from power lost during system ↵Li Jun2014-06-30
| | | | | | | | | | | sleep i.MX6SX mega off can shutdown domain power supply if none of peripheral in this domain is registered as wakeup source, this patch adds usb controller imx specific re-init after resume from such power lost during system sleep. Acked-by: Peter Chen <peter.chen@freescale.com> Signed-off-by: Li Jun <b47624@freescale.com>
* ENGR00320349 cpufreq: imx6: increase SOC/PU voltage for VPU352MHzAnson Huang2014-06-30
| | | | | | | | | For VPU352MHz enabled, SOC/PU voltage can NOT be lower than 1250mV, as only 396M and 792M setpoint's SOC/PU voltage is lower than 1250mV and we already disable 396M setpoint, so here we just increase SOC/PU voltage for 792M setpoint when VPU352M is enabled. Signed-off-by: Anson Huang <b20788@freescale.com>
* ENGR00320355 dts: imx6: mmc index fixed by controller orderDong Aisheng2014-06-29
| | | | | | | | | | | | | Make the linux mmc index to be fixed according to controller order. This can make user easily to identify which mmcX corresponding to which controller and kernel be able find the rootfs in a card plugged in a specific slot persistently. This is a eventually solution for finding mmc block devices correctly for different cards on multi slots. Signed-off-by: Dong Aisheng <b29396@freescale.com> (cherry picked from commit d6aa7401f65fbe5458e5459526d84405fdf4d078)
* ENGR00320354-2 can: m_can: add loopback and monitor mode supportDong Aisheng2014-06-29
| | | | | | | add loopback and monitor mode support. Signed-off-by: Dong Aisheng <b29396@freescale.com> (cherry picked from commit 534152b41012b4648c22b37f2feb0ddb6a6cde2e)
* ENGR00320354-1 can: m_can: add bus error handlingDong Aisheng2014-06-29
| | | | | | | Add bus error, state change, lost message handling mechanism. Signed-off-by: Dong Aisheng <b29396@freescale.com> (cherry picked from commit f2f95e529927f3debeef1fa19ac560d2ebf71140)
* ENGR00312699 mxsfb: RGB888 as default format for lvdsSandor Yu2014-06-29
| | | | | | | | Check bpp value in check_var function, any other than bpp=32 and bpp=16 been setting to bpp=32. Set default RGB888 format for lvds bpp=32 mode. Signed-off-by: Sandor Yu <R01008@freescale.com>
* ENGR00320056-4 ARM: dts: imx6sx-19x19-arm2: Add CSI2 supportRobby Cai2014-06-28
| | | | | | | | Add CSI2 support. use CSI2 for VADC instead of CSI1. Signed-off-by: Robby Cai <r63905@freescale.com> (cherry picked from commit 9de447e3c715fa570c145bdd2e9692f59b0072a3)
* ENGR00320056-3 ARM: dts: imx6sx: make the alias for two CSIsRobby Cai2014-06-28
| | | | | | | make the alias for two CSI ports. Signed-off-by: Robby Cai <r63905@freescale.com> (cherry picked from commit 3ba09b29305103b466cc4afa038df9b77818d3c5)
* ENGR00320056-2 vadc: imx6sx: assign the csi id in slave data structRobby Cai2014-06-28
| | | | | | | | Assign csi id in struct sensor_data of the slave, which will be used to judge if it need to be attached to the master. Signed-off-by: Robby Cai <r63905@freescale.com> (cherry picked from commit 7b5e2d4a158356e4290dcea3215b4a2438d0df6e)
* ENGR00320056-1 v4l2 capture: imx6sx: Add dual camera supportRobby Cai2014-06-28
| | | | | | | | | | | | | | | | | on imx6sx, there are two CSI ports which supports dual camera. The patch changes the framework for this support, including: - introduce a new struct csi_soc for multiple instances. - add csi_read and csi_write API with data type 'struct csi_soc *' to differentiate register access for each CSI. - add a new parameter 'cam_data *' for the csi_* API (except csi_dmareq_rff_enable/disable) for dual instances. - move 'input_fmt' and 'bswapenable' to struct _cam_data. - initialize cam->bswapenable' to false. - allocate dynamically memory for struce v4l2_int_device thus to differentiate each CSI port. Signed-off-by: Robby Cai <r63905@freescale.com> (cherry picked from commit 997d1e896eae21fb4c78495df1e01a126913cb53)
* ENGR00320205 dts: imx6sx-sdb: Support spdif out in sx-sdb boardShengjiu Wang2014-06-27
| | | | | | Add device tree for spdif in sx-sdb board. Signed-off-by: Shengjiu Wang <b02247@freescale.com>
* ENGR00320241 ASoC: fsl_spdif: Complete the volatile register listNicolin Chen2014-06-27
| | | | | | | | | Not only SIS but also other read-only or write-only reigsters should be marked as volatile register so as not to let regcache cache them. So this patch just adds those missing registers. Signed-off-by: Nicolin Chen <Guangyu.Chen@freescale.com> (cherry picked from commit 56ad235ba23274fc05422ad4b13153d1c56801c4)
* ENGR00318063-10: ARM: imx6qdl: update mmdc_ch0_axi name in mux selectionsShawn Guo2014-06-27
| | | | | | | | | | | | | Commit ac166cffc9de (ENGR00318063-7: ARM: imx6q: mmdc_ch_axi clock should be non-gateable) dropped the non-exist gate clock mmdc_ch0_axi by pointing it to mmdc_ch0_axi_podf. But it forgot updating clock name used in clock mux selections. This causes call like clk_set_parent(clk[gpu3d_core_sel], clk[mmdc_ch0_axi]) to fail. Fix the failure by updating clock name in mux selections to be "mmdc_ch0_axi_podf". Signed-off-by: Shawn Guo <shawn.guo@freescale.com>
* ENGR00320108 ARM: imx6sx-sdb: enable usb charger detectionPeter Chen2014-06-26
| | | | | | Enable SoC usb charger detect function Signed-off-by: Peter Chen <peter.chen@freescale.com>
* ENGR00320185-2 IMX6SX/DISPMIX: add dispmix on/off support for 6SX platformFancy Fang2014-06-26
| | | | | | | | Modify the dispmix on/off interfaces to add specific support for 6sx platform. Signed-off-by: Fancy Fang <chen.fang@freescale.com> (cherry picked from commit 31aab0b205ea9438de96f04ac0201c6fec3a669c)
* ENGR00320185-1 IMX6SX/DISPMIX: add dispmix on/off support for 6SX platformFancy Fang2014-06-26
| | | | | | | | Add the required clocks for the dispmix on/off operation. This include clocks definition and initialization. Signed-off-by: Fancy Fang <chen.fang@freescale.com> (cherry picked from commit 638acb3c30b135901631e59c9938e06422cc4b76)
* ENGR00320101 dts: imx6sx: Update the mma8451 device tree to add interrupt ↵luweizhou2014-06-26
| | | | | | | | | | mode option. The driver for android team need to enalbe mma8451 fifo overflow interrupt feather. So add the interrupt option into device tree. Signed-off-by: Luwei Zhou <b45643@freescale.com> (cherry picked from commit 443fd43f454215f615ee326ddb02911e05bcd2ae)
* ENGR00320098 hwmon: mma8451: Add a new mma8451 driver from android team updateluweizhou2014-06-26
| | | | | | | | | | | | | | | | | The android app has its own interface for mma8451 data. The inerface isn't a regular input dev interface. Since it is difficult to maintain the code within one file, one new file and configure will be added. It would not be compiled in the default config. If want to use this driver, need to follow: *Disable the CONFIG_MXC_MMA8451. *Enable the CONFIG_MXC_MMA8x5x and make. The code is from branch imx_3.10.y_android. The main modification is : *Using device to pass into parameters related with platform not hard code. *Codeing style issues Signed-off-by: Luwei Zhou <b45643@freescale.com> (cherry picked from commit e3faf9d404fcd3663c47cd1183e01a71c53b9eb8)
* ENGR00320136 net: fec: fix rcv is not last issue when do suspend/resume testFugang Duan2014-06-26
| | | | | | | | | | When do suspend/resume stress test, some log shows "rcv is not +last". The issue is that enet suspend will disable phy clock, phy link down, after resume back, enet MAC redo initial and ready to tx/rx packet, but phy still is not ready which is doing auto-negotiation. When phy link is not up, don't schdule napi soft irq. Signed-off-by: Fugang Duan <B38611@freescale.com>
* ENGR00320120 net: fec: remove unnecessary condition for magic packet setFugang Duan2014-06-26
| | | | | | Remove unnecessary condition for magic packet setting. Signed-off-by: Fugang Duan <B38611@freescale.com>
* n_tty: Fix n_tty_write crash when echoing in raw modePeter Hurley2014-06-26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The tty atomic_write_lock does not provide an exclusion guarantee for the tty driver if the termios settings are LECHO & !OPOST. And since it is unexpected and not allowed to call TTY buffer helpers like tty_insert_flip_string concurrently, this may lead to crashes when concurrect writers call pty_write. In that case the following two writers: * the ECHOing from a workqueue and * pty_write from the process race and can overflow the corresponding TTY buffer like follows. If we look into tty_insert_flip_string_fixed_flag, there is: int space = __tty_buffer_request_room(port, goal, flags); struct tty_buffer *tb = port->buf.tail; ... memcpy(char_buf_ptr(tb, tb->used), chars, space); ... tb->used += space; so the race of the two can result in something like this: A B __tty_buffer_request_room __tty_buffer_request_room memcpy(buf(tb->used), ...) tb->used += space; memcpy(buf(tb->used), ...) ->BOOM B's memcpy is past the tty_buffer due to the previous A's tb->used increment. Since the N_TTY line discipline input processing can output concurrently with a tty write, obtain the N_TTY ldisc output_lock to serialize echo output with normal tty writes. This ensures the tty buffer helper tty_insert_flip_string is not called concurrently and everything is fine. Note that this is nicely reproducible by an ordinary user using forkpty and some setup around that (raw termios + ECHO). And it is present in kernels at least after commit d945cb9cce20ac7143c2de8d88b187f62db99bdc (pty: Rework the pty layer to use the normal buffering logic) in 2.6.31-rc3. js: add more info to the commit log js: switch to bool js: lock unconditionally js: lock only the tty->ops->write call References: CVE-2014-0196 Reported-and-tested-by: Jiri Slaby <jslaby@suse.cz> Signed-off-by: Peter Hurley <peter@hurleysoftware.com> Signed-off-by: Jiri Slaby <jslaby@suse.cz> Cc: Linus Torvalds <torvalds@linux-foundation.org> Cc: Alan Cox <alan@lxorguk.ukuu.org.uk> Cc: <stable@vger.kernel.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
* drivers/tty/hvc: don't free hvc_console_setup after initTomoki Sekiyama2014-06-26
| | | | | | | | | | | | When 'console=hvc0' is specified to the kernel parameter in x86 KVM guest, hvc console is setup within a kthread. However, that will cause SEGV and the boot will fail when the driver is builtin to the kernel, because currently hvc_console_setup() is annotated with '__init'. This patch removes '__init' to boot the guest successfully with 'console=hvc0'. Signed-off-by: Tomoki Sekiyama <tomoki.sekiyama@hds.com> Cc: stable <stable@vger.kernel.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
* tty: Set correct tty name in 'active' sysfs attributeHannes Reinecke2014-06-26
| | | | | | | | | | | | | | | | | | | | | | | | The 'active' sysfs attribute should refer to the currently active tty devices the console is running on, not the currently active console. The console structure doesn't refer to any device in sysfs, only the tty the console is running on has. So we need to print out the tty names in 'active', not the console names. There is one special-case, which is tty0. If the console is directed to it, we want 'tty0' to show up in the file, so user-space knows that the messages get forwarded to the active VT. The ->device() callback would resolve tty0, though. Hence, treat it special and don't call into the VT layer to resolve it (plymouth is known to depend on it). Cc: Lennart Poettering <lennart@poettering.net> Cc: Kay Sievers <kay@vrfy.org> Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org> Cc: Jiri Slaby <jslaby@suse.cz> Cc: stable <stable@vger.kernel.org> Signed-off-by: Werner Fink <werner@suse.de> Signed-off-by: Hannes Reinecke <hare@suse.de> Signed-off-by: David Herrmann <dh.herrmann@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
* tty: n_gsm: Fix for modems with brk in modem status controlLars Poeschel2014-06-26
| | | | | | | | | | | | | | | | | | | | | | 3GPP TS 07.10 states in section 5.4.6.3.7: "The length byte contains the value 2 or 3 ... depending on the break signal." The break byte is optional and if it is sent, the length is 3. In fact the driver was not able to work with modems that send this break byte in their modem status control message. If the modem just sends the break byte if it is really set, then weird things might happen. The code for deconding the modem status to the internal linux presentation in gsm_process_modem has already a big comment about this 2 or 3 byte length thing and it is already able to decode the brk, but the code calling the gsm_process_modem function in gsm_control_modem does not encode it and hand it over the right way. This patch fixes this. Without this fix if the modem sends the brk byte in it's modem status control message the driver will hang when opening a muxed channel. Signed-off-by: Lars Poeschel <poeschel@lemonage.de> Cc: stable <stable@vger.kernel.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>