17 May, 2011

1 commit


11 May, 2011

1 commit

  • Broadcom has released cards based on a new AMBA-based bus type. From a
    programming point of view, this new bus type differs from AMBA and does
    not use AMBA common registers. It also differs enough from SSB. We
    decided that a new bus driver is needed to keep the code clean.

    In its current form, the driver detects devices present on the bus and
    registers them in the system. It allows registering BCMA drivers for
    specified bus devices and provides them basic operations. The bus driver
    itself includes two important bus managing drivers: ChipCommon core
    driver and PCI(c) core driver. They are early used to allow correct
    initialization.

    Currently code is limited to supporting buses on PCI(e) devices, however
    the driver is designed to be used also on other hosts. The host
    abstraction layer is implemented and already used for PCI(e).

    Support for PCI(e) hosts is working and seems to be stable (access to
    80211 core was tested successfully on a few devices). We can still
    optimize it by using some fixed windows, but this can be done later
    without affecting any external code. Windows are just ranges in MMIO
    used for accessing cores on the bus.

    Cc: Greg KH
    Cc: Michael Büsch
    Cc: Larry Finger
    Cc: George Kashperko
    Cc: Arend van Spriel
    Cc: linux-arm-kernel@lists.infradead.org
    Cc: Russell King
    Cc: Arnd Bergmann
    Cc: Andy Botting
    Cc: linuxdriverproject
    Cc: linux-kernel@vger.kernel.org
    Signed-off-by: Rafał Miłecki
    Signed-off-by: John W. Linville

    Rafał Miłecki
     

06 May, 2011

1 commit


30 Apr, 2011

1 commit


28 Apr, 2011

1 commit

  • In order to speedup packet filtering, here is an implementation of a
    JIT compiler for x86_64

    It is disabled by default, and must be enabled by the admin.

    echo 1 >/proc/sys/net/core/bpf_jit_enable

    It uses module_alloc() and module_free() to get memory in the 2GB text
    kernel range since we call helpers functions from the generated code.

    EAX : BPF A accumulator
    EBX : BPF X accumulator
    RDI : pointer to skb (first argument given to JIT function)
    RBP : frame pointer (even if CONFIG_FRAME_POINTER=n)
    r9d : skb->len - skb->data_len (headlen)
    r8 : skb->data

    To get a trace of generated code, use :

    echo 2 >/proc/sys/net/core/bpf_jit_enable

    Example of generated code :

    # tcpdump -p -n -s 0 -i eth1 host 192.168.20.0/24

    flen=18 proglen=147 pass=3 image=ffffffffa00b5000
    JIT code: ffffffffa00b5000: 55 48 89 e5 48 83 ec 60 48 89 5d f8 44 8b 4f 60
    JIT code: ffffffffa00b5010: 44 2b 4f 64 4c 8b 87 b8 00 00 00 be 0c 00 00 00
    JIT code: ffffffffa00b5020: e8 24 7b f7 e0 3d 00 08 00 00 75 28 be 1a 00 00
    JIT code: ffffffffa00b5030: 00 e8 fe 7a f7 e0 24 00 3d 00 14 a8 c0 74 49 be
    JIT code: ffffffffa00b5040: 1e 00 00 00 e8 eb 7a f7 e0 24 00 3d 00 14 a8 c0
    JIT code: ffffffffa00b5050: 74 36 eb 3b 3d 06 08 00 00 74 07 3d 35 80 00 00
    JIT code: ffffffffa00b5060: 75 2d be 1c 00 00 00 e8 c8 7a f7 e0 24 00 3d 00
    JIT code: ffffffffa00b5070: 14 a8 c0 74 13 be 26 00 00 00 e8 b5 7a f7 e0 24
    JIT code: ffffffffa00b5080: 00 3d 00 14 a8 c0 75 07 b8 ff ff 00 00 eb 02 31
    JIT code: ffffffffa00b5090: c0 c9 c3

    BPF program is 144 bytes long, so native program is almost same size ;)

    (000) ldh [12]
    (001) jeq #0x800 jt 2 jf 8
    (002) ld [26]
    (003) and #0xffffff00
    (004) jeq #0xc0a81400 jt 16 jf 5
    (005) ld [30]
    (006) and #0xffffff00
    (007) jeq #0xc0a81400 jt 16 jf 17
    (008) jeq #0x806 jt 10 jf 9
    (009) jeq #0x8035 jt 10 jf 17
    (010) ld [28]
    (011) and #0xffffff00
    (012) jeq #0xc0a81400 jt 16 jf 13
    (013) ld [38]
    (014) and #0xffffff00
    (015) jeq #0xc0a81400 jt 16 jf 17
    (016) ret #65535
    (017) ret #0

    Signed-off-by: Eric Dumazet
    Cc: Arnaldo Carvalho de Melo
    Cc: Ben Hutchings
    Cc: Hagen Paul Pfeifer
    Signed-off-by: David S. Miller

    Eric Dumazet
     

19 Apr, 2011

1 commit


18 Apr, 2011

1 commit


13 Apr, 2011

1 commit


08 Apr, 2011

1 commit


07 Apr, 2011

1 commit


05 Apr, 2011

2 commits


28 Mar, 2011

3 commits

  • Introduce a new driver for Asus Notebooks shipped with
    a WMI device instead of the old ACPI device. The WMI
    device is almost the same as the one present in Eee PC,
    but the event guid and the keymap are different.

    The keymap comes from asus-laptop module.

    On Asus notebooks, when you call the WMI device, you always
    need a 64bit buffer, even if you only want to get the state
    of a device (tested on a G73).

    Signed-off-by: Corentin Chary
    Signed-off-by: Matthew Garrett

    Corentin Chary
     
  • I no longer have access to any hardware that uses APM and have not
    provided real maintenance for several years. Hopefully someone with the
    hardware or energy will step forward if the driver is to be kept.

    Signed-off-by: Stephen Rothwell
    Signed-off-by: Linus Torvalds

    Stephen Rothwell
     
  • Signed-off-by: Richard Weinberger
    Acked-and-appreciated-by: Thomas Gleixner
    Signed-off-by: Linus Torvalds

    Richard Weinberger
     

26 Mar, 2011

1 commit


25 Mar, 2011

2 commits

  • Add iwlegacy driver to MAINTAINERS file and mark as 'Orphan'

    Signed-off-by: Wey-Yi Guy

    Wey-Yi Guy
     
  • * 'v4l_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-2.6: (442 commits)
    [media] videobuf2-dma-contig: make cookie() return a pointer to dma_addr_t
    [media] sh_mobile_ceu_camera: Do not call vb2's mem_ops directly
    [media] V4L: soc-camera: explicitly require V4L2_BUF_TYPE_VIDEO_CAPTURE
    [media] v4l: soc-camera: Store negotiated buffer settings
    [media] rc: interim support for 32-bit NEC-ish scancodes
    [media] mceusb: topseed 0x0011 needs gen3 init for tx to work
    [media] lirc_zilog: error out if buffer read bytes != chunk size
    [media] lirc: silence some compile warnings
    [media] hdpvr: use same polling interval as other OS
    [media] ir-kbd-i2c: pass device code w/key in hauppauge case
    [media] rc/keymaps: Remove the obsolete rc-rc5-tv keymap
    [media] remove the old RC_MAP_HAUPPAUGE_NEW RC map
    [media] rc/keymaps: Rename Hauppauge table as rc-hauppauge
    [media] rc-rc5-hauppauge-new: Fix Hauppauge Grey mapping
    [media] rc-rc5-hauppauge-new: Add support for the old Black RC
    [media] rc-rc5-hauppauge-new: Add the old control to the table
    [media] rc-winfast: Fix the keycode tables
    [media] a800: Fix a few wrong IR key assignments
    [media] opera1: Use multimedia keys instead of an app-specific mapping
    [media] dw2102: Use multimedia keys instead of an app-specific mapping
    ...

    Fix up trivial conflicts (remove/modify and some real conflicts) in:
    arch/arm/mach-omap2/devices.c
    drivers/staging/Kconfig
    drivers/staging/Makefile
    drivers/staging/dabusb/dabusb.c
    drivers/staging/dabusb/dabusb.h
    drivers/staging/easycap/easycap_ioctl.c
    drivers/staging/usbvideo/usbvideo.c
    drivers/staging/usbvideo/vicam.c

    Linus Torvalds
     

24 Mar, 2011

1 commit

  • * git://git.kernel.org/pub/scm/linux/kernel/git/lethal/fbdev-2.6: (140 commits)
    MAINTAINERS: de-orphan fbdev.
    MAINTAINERS: Add file pattern for fb dt bindings.
    video: Move sm501fb devicetree binding documentation to a better place.
    fbcon: fix situation where fbcon gets deinitialised and can't reinit.
    video, sm501: add OF binding to support SM501
    video, sm501: add edid and commandline support
    video, sm501: add I/O functions for use on powerpc
    video: Fix EDID macros H_SYNC_WIDTH and H_SYNC_OFFSET
    fbcon: Bugfix soft cursor detection in Tile Blitting
    video: add missing framebuffer_release in error path
    video: metronomefb: add __devexit_p around reference to metronomefb_remove
    video: hecubafb: add __devexit_p around reference to hecubafb_remove
    drivers:video:aty:radeon_base Fix typo occationally to occasionally
    atmel_lcdfb: add fb_blank function
    atmel_lcdfb: implement inverted contrast pwm
    video: s3c-fb: return proper error if clk_get fails
    uvesafb,vesafb: create WC or WB PAT-entries
    video: ffb: fix ffb_probe error path
    radeonfb: Let hwmon driver probe the "monid" I2C bus
    fbdev: sh_mobile_lcdc: checking NULL instead of IS_ERR()
    ...

    Linus Torvalds
     

23 Mar, 2011

20 commits


22 Mar, 2011

1 commit