28 Apr, 2016

4 commits


26 Apr, 2016

2 commits


22 Apr, 2016

1 commit

  • In 4.1 the sendmsg will use the iov_iter in
    skb sending. The pppopns driver failed to assign its
    value. So that the sendmsg will always failed.

    This issue will block the ppp application like VPN.

    Assign correct msg_iter from skb will fix the issue.

    Signed-off-by: Wang Haoran

    Wang Haoran
     

21 Apr, 2016

1 commit


20 Apr, 2016

2 commits

  • For imx6sx-sabreauto board, the usdhc4 is used for the sd slot locate on the
    base board, so need to improve the pad drive strength, otherwise we will meet
    many CRC error or timeout error when insert a sd card.

    Signed-off-by: Haibo Chen
    (cherry picked from commit 1cbfce01e4e076d7f7e3b879c2c41d217d8afa48)

    Haibo Chen
     
  • Unable to handle kernel paging request at virtual address 0af37d40
    pgd = d4dec000
    [0af37d40] *pgd=00000000
    Internal error: Oops: 5 [#1] PREEMPT SMP ARM
    [] (_raw_spin_lock) from [] (list_lru_count_one+0x14/0x28)
    [] (list_lru_count_one) from [] (super_cache_count+0x40/0xa0)
    [] (super_cache_count) from [] (debug_shrinker_show+0x50/0x90)
    [] (debug_shrinker_show) from [] (seq_read+0x1ec/0x48c)
    [] (seq_read) from [] (__vfs_read+0x20/0xd0)
    [] (__vfs_read) from [] (vfs_read+0x7c/0x104)
    [] (vfs_read) from [] (SyS_read+0x44/0x9c)
    [] (SyS_read) from [] (ret_fast_syscall+0x0/0x3c)
    Code: e1a04000 e3a00001 ebd66b39 f594f000 (e1943f9f)
    ---[ end trace 60c74014a63a9688 ]---
    Kernel panic - not syncing: Fatal exception

    shrink_control.nid is used but not initialzed.
    set shrink_control.nid to trace NUMA NUMNODES to fix this issue.

    Signed-off-by: Xiaowen Liu

    Xiaowen Liu
     

19 Apr, 2016

3 commits

  • zhang sanshan
     
  • SRTC needs to be kept enabled during system poweroff,
    SNVS_LP control register bit 0 SRTC_ENV must be set
    to enable RTC, for software poweroff, kernel just
    read the register offset and value from dtb and write
    to SNVS_LP control register to poweroff system, need
    to make sure bit 0 SRTC_ENV is set to enable RTC during
    system poweroff.

    Previous setting did NOT enable it which will cause
    RTC stop running if using software poweroff.

    Signed-off-by: Anson Huang

    Anson Huang
     
  • Need to make sure build pass with single SOC
    config, in current build for single SOC config,
    if both SOC_IMX7D and SOC_IMX6SX are NOT selected,
    below build error will occur, add MU module
    config to fix this build issue.

    LD init/built-in.o
    arch/arm/mach-imx/built-in.o: In function `busfreq_probe':
    :(.text+0x5370): undefined reference to `imx_mu_lpm_ready'
    arch/arm/mach-imx/built-in.o: In function `bus_freq_pm_notify':
    :(.text+0x5d50): undefined reference to `imx_mu_lpm_ready'
    :(.text+0x5d68): undefined reference to `imx_mu_lpm_ready'
    make: *** [vmlinux] Error 1

    Signed-off-by: Anson Huang

    Anson Huang
     

15 Apr, 2016

1 commit


14 Apr, 2016

3 commits


13 Apr, 2016

3 commits


12 Apr, 2016

4 commits


11 Apr, 2016

1 commit


07 Apr, 2016

1 commit


01 Apr, 2016

1 commit


31 Mar, 2016

3 commits

  • when do vte test it meets follow dump in small probability.
    Add against-0 check to resovle this.

    $ v4l_emma.sh 1 1
    $ v4l_emma.sh 1 9

    ------------[ cut here ]------------
    : /dev/video1 Set PARM sucessfulWARNING: CPU: 0 PID: 1123 at /home/bamboo/build/4.1.X-1.0.0_ga/fsl-
    imx-fb/temp_build_dir/build_fsl-imx-fb/tmp/work-shared/imx6qdlsolo/kernel-source/mm/page_alloc.c:266
    5 __alloc_pages_nodemask+0x3c8/0x894()
    ly
    v4l_capture_testapp 0 TINModules linked in:FO : /dev/video1 input formatti mx6s_captureng pass
    v4l_capture_testapp 0 ov5640_camera TINFO : PRP_ENC_ON_D gpRGBcon evbugv_buf malloc pass!

    CPU: 0 PID: 1123 Comm: v4l2_capture_em Not tainted 4.1.8-1.0.0+g87e6c2f #1
    Hardware name: Freescale i.MX6 Ultralite (Device Tree)
    [] (unwind_backtrace) from [] (show_stack+0x10/0x14)
    [] (show_stack) from [] (dump_stack+0x84/0xc4)
    [] (dump_stack) from [] (warn_slowpath_common+0x80/0xb0)
    [] (warn_slowpath_common) from [] (warn_slowpath_null+0x1c/0x24)
    [] (warn_slowpath_null) from [] (__alloc_pages_nodemask+0x3c8/0x894)
    [] (__alloc_pages_nodemask) from [] (__dma_alloc_buffer.isra.3+0x2c/0x84)
    [] (__dma_alloc_buffer.isra.3) from [] (__alloc_remap_buffer.isra.6+0x1c/0x8c)
    [] (__alloc_remap_buffer.isra.6) from [] (__dma_alloc+0x1fc/0x228)
    [] (__dma_alloc) from [] (arm_dma_alloc+0x8c/0xa0)
    [] (arm_dma_alloc) from [] (vb2_dc_alloc+0x68/0x100)
    [] (vb2_dc_alloc) from [] (__vb2_queue_alloc+0x134/0x4d0)
    [] (__vb2_queue_alloc) from [] (__reqbufs.isra.17+0x1a8/0x304)
    [] (__reqbufs.isra.17) from [] (__video_do_ioctl+0x2b0/0x324)
    [] (__video_do_ioctl) from [] (video_usercopy+0x1b8/0x480)
    [] (video_usercopy) from [] (v4l2_ioctl+0x118/0x150)
    [] (v4l2_ioctl) from [] (do_vfs_ioctl+0x3e8/0x608)
    [] (do_vfs_ioctl) from [] (SyS_ioctl+0x34/0x5c)
    [] (SyS_ioctl) from [] (ret_fast_syscall+0x0/0x3c)
    ---[ end trace 55ed68f89eca4805 ]---
    mx6s-csi 21c4000.csi: dma_alloc_coherent of size 0 failed

    Signed-off-by: Robby Cai
    (cherry picked from commit 2c1fa9347a50e05c79b76de35f84192af796f677)

    Robby Cai
     
  • Q901 (IRLML6401) is p-channel MOSET, need set pin1 (LCD_nPWREN) to low
    to let pin3 output be 3V3. Normally when pin1 is high, then pin3
    output should be gated. It was working previously due to some leakage.
    Correct the enable logic from the software viewpoint.

    Signed-off-by: Robby Cai
    (cherry picked from commit c70398a0b2e860d0bd9478d956d077eff8e7ea4f)

    Robby Cai
     
  • systrace depends on ftrace in kernel
    add ftrace support for process context switches and events

    Signed-off-by: Winter Wang

    Conflicts:
    arch/arm/configs/imx_v7_android_defconfig

    Winter Wang
     

30 Mar, 2016

1 commit


28 Mar, 2016

3 commits

  • During the read of NOR, the kernel actually calls the inline_map_copy_from()
    to read the data out. And inline_map_copy_from() will use the memcpy_fromio()
    to do the real job.

    The memcpy_fromio macro maps _memcpy_fromio() in the current code.
    But the _memcpy_fromio() will use readb() to do the copy work one byte
    by one byte. This makes the read performance of NOR very slow(about 2~3MB/s).

    A similiar discussion could be found in:
    http://lists.infradead.org/pipermail/linux-arm-kernel/2009-November/003860.html

    This patch replace the memcpy_fromio with memcpy which is optimized by the
    kernel.

    The following is the result from mtd_speedtest with M29W256GL7AN6E:
    =================================================
    mtd_speedtest: MTD device: 2
    mtd_speedtest: not NAND flash, assume page size is 512 bytes.
    mtd_speedtest: MTD device size 4194304, eraseblock size 131072, page size 512,
    count of eraseblocks 32, pages per eraseblock 256, OOB size 0
    mtd_speedtest: testing eraseblock write speed
    mtd_speedtest: eraseblock write speed is 845 KiB/s
    mtd_speedtest: testing eraseblock read speed
    mtd_speedtest: eraseblock read speed is 19504 KiB/s
    mtd_speedtest: testing page write speed
    mtd_speedtest: page write speed is 845 KiB/s
    mtd_speedtest: testing page read speed
    mtd_speedtest: page read speed is 19140 KiB/s
    mtd_speedtest: testing 2 page write speed
    mtd_speedtest: 2 page write speed is 846 KiB/s
    mtd_speedtest: testing 2 page read speed
    mtd_speedtest: 2 page read speed is 19320 KiB/s
    mtd_speedtest: Testing erase speed
    mtd_speedtest: erase speed is 233 KiB/s
    mtd_speedtest: Testing 2x multi-block erase speed
    mtd_speedtest: 2x multi-block erase speed is 225 KiB/s
    mtd_speedtest: Testing 4x multi-block erase speed
    mtd_speedtest: 4x multi-block erase speed is 224 KiB/s
    mtd_speedtest: Testing 8x multi-block erase speed
    mtd_speedtest: 8x multi-block erase speed is 225 KiB/s
    mtd_speedtest: Testing 16x multi-block erase speed
    mtd_speedtest: 16x multi-block erase speed is 225 KiB/s
    mtd_speedtest: Testing 32x multi-block erase speed
    mtd_speedtest: 32x multi-block erase speed is 225 KiB/s
    mtd_speedtest: Testing 64x multi-block erase speed
    mtd_speedtest: 64x multi-block erase speed is 224 KiB/s
    mtd_speedtest: finished
    =================================================

    (cherry-picked from: f1e5914ffd82d5326cbd30507d4f37d02a0da099)

    Signed-off-by: Huang Shijie

    Huang Shijie
     
  • When userspace unbinds gadget functions through configfs, the
    .free_func() callback is always invoked. (in config_usb_cfg_unlink())
    Implement it as a no-op to avoid the following crash:

    [ 68.125679] configfs-gadget gadget: unbind function 'accessory'/ffffffc0720bf000
    [ 68.133202] configfs-gadget gadget: unbind function 'audio_source'/ffffffc0012ca3c0
    [ 68.142668] tegra-xudc 700d0000.usb-device: ep 0 disabled
    [ 68.148186] Bad mode in Synchronous Abort handler detected, code 0x86000006
    [ 68.155144] CPU: 2 PID: 1 Comm: init Tainted: G U W 3.18.0-09419-g87296c3-dirty #561
    [ 68.163743] Hardware name: Google Tegra210 Smaug Rev 1,3+ (DT)
    [ 68.169566] task: ffffffc0bc8d0000 ti: ffffffc0bc8bc000 task.ti: ffffffc0bc8bc000
    [ 68.177039] PC is at 0x0
    [ 68.179577] LR is at usb_put_function+0x14/0x1c
    ....

    BUG=chrome-os-partner:49140
    TEST="setprop sys.usb.config accessory,audio_source" on A44 and then
    switch back to default: "setprop sys.usb.config mtp,adb", no crash will
    be seen.

    Change-Id: I5b6141964aab861e86e3afb139ded02d4d122dab
    Signed-off-by: Mark Kuo
    Reviewed-on: https://chromium-review.googlesource.com/321013
    Commit-Ready: Andrew Bresticker
    Tested-by: Andrew Bresticker
    Reviewed-by: Andrew Bresticker

    Mark Kuo
     
  • This reverts commit 9645dbfe75f657160c8693d718de911b4d16f726.

    Winter Wang
     

25 Mar, 2016

3 commits


24 Mar, 2016

1 commit

  • Fix NULL pointer dereference while trying to unlink audio_source.

    If unlink audio_source function, got a NULL pointer dereference:
    ---------------
    [00000000] *pgd=28ad1831, *pte=00000000, *ppte=00000000
    Internal error: Oops: 80000007 [#1] PREEMPT SMP ARM
    Modules linked in:
    CPU: 1 PID: 1 Comm: init Not tainted 4.1.15-03448-g3749667-dirty #41
    Hardware name: Freescale i.MX6 Quad/DualLite (Device Tree)
    task: d8070000 ti: d8056000 task.ti: d8056000
    PC is at 0x0
    LR is at config_usb_cfg_unlink+0xfc/0x10c
    pc : [] lr : [] psr: a00f0013

    [] (config_usb_cfg_unlink) from [] (configfs_unlink+0x110/0x1a4)
    [] (configfs_unlink) from [] (vfs_unlink+0xcc/0x1a8)
    [] (vfs_unlink) from [] (do_unlinkat+0x230/0x264)
    ...
    ---------------

    Add sanity check for NULL pointer in usb_put_function, as some
    functions doesn't have func->fre_func implemented.

    Signed-off-by: Winter Wang

    Winter Wang
     

22 Mar, 2016

2 commits