19 Mar, 2010

12 commits

  • * 'merge' of git://git.secretlab.ca/git/linux-2.6:
    powerpc/5200: Build fix for mpc52xx watchdog timer code
    of: Fix comparison of "compatible" properties
    powerpc/52xx: update defconfigs
    spi/omap2_mcspi: Use transaction speed if provided
    spi/omap2_mcspi: fix NULL pointer dereference
    uartlite: Fix build on sparc.

    Linus Torvalds
     
  • * master.kernel.org:/home/rmk/linux-2.6-arm: (23 commits)
    ARM: Fix RiscPC decompressor build errors
    ARM: Fix sorting of platform group config options and includes
    ARM: 5991/1: Fix regression in restore_user_regs macro
    ARM: 5989/1: ARM: KGDB: add support for SMP platforms
    ARM: 5990/1: ARM: use __armv5tej_mmu_cache_flush for V5TEJ instead of __armv4_mmu_cache_flush
    ARM: Add final piece to fix XIP decompressor in read-only memory
    video: enable sh_mobile_lcdc on SH-Mobile ARM
    ARM: mach-shmobile: ap4evb SDHI0 platform data V2
    ARM: mach-shmobile: sh7372 SDHI vector merge
    ARM: mach-shmobile: sh7377 SDHI vector merge
    ARM: mach-shmobile: sh7367 SDHI vector merge
    ARM: mach-shmobile: G4EVM KEYSC platform data
    mtd: enable sh_flctl on SH-Mobile ARM
    ARM: mach-shmobile: G3EVM FLCTL platform data
    ARM: mach-shmobile: G3EVM KEYSC platform data
    Video: ARM CLCD: Better fix for swapped IENB and CNTL registers
    ARM: Add L2 cache handling to smp boot support
    ARM: 5960/1: ARM: perf-events: fix v7 event selection mask
    ARM: 5959/1: ARM: perf-events: request PMU interrupts with IRQF_NOBALANCING
    ARM: 5988/1: pgprot_dmacoherent() for non-mmu builds
    ...

    Linus Torvalds
     
  • * 'for-linus' of git://git.monstr.eu/linux-2.6-microblaze: (27 commits)
    microblaze: entry.S use delay slot for return handlers
    microblaze: Save current task directly
    microblaze: Simplify entry.S - save/restore r3/r4 - ret_from_trap
    microblaze: PCI early support for noMMU system
    microblaze: Fix dma alloc and free coherent dma functions
    microblaze: Add consistent code
    microblaze: pgtable.h: move consistent functions
    microblaze: Remove ancient Kconfig option for consistent mapping
    microblaze: Remove VMALLOC_VMADDR
    microblaze: Add define for ASM_LOOP
    microblaze: Preliminary support for dma drivers
    microblaze: remove trailing space in messages
    microblaze: Use generic show_mem()
    microblaze: Change temp register for cmdline
    microblaze: Preliminary support for dma drivers
    microblaze: Move cache function to cache.c
    microblaze: Add support from PREEMPT
    microblaze: Add support for Xilinx PCI host bridge
    microblaze: Enable PCI, missing files
    microblaze: Add core PCI files
    ...

    Linus Torvalds
     
  • * 'for-linus' of git://neil.brown.name/md:
    md: deal with merge_bvec_fn in component devices better.

    Linus Torvalds
     
  • * git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi-misc-2.6: (69 commits)
    [SCSI] scsi_transport_fc: Fix synchronization issue while deleting vport
    [SCSI] bfa: Update the driver version to 2.1.2.1.
    [SCSI] bfa: Remove unused header files and did some cleanup.
    [SCSI] bfa: Handle SCSI IO underrun case.
    [SCSI] bfa: FCS and include file changes.
    [SCSI] bfa: Modified the portstats get/clear logic
    [SCSI] bfa: Replace bfa_get_attr() with specific APIs
    [SCSI] bfa: New portlog entries for events (FIP/FLOGI/FDISC/LOGO).
    [SCSI] bfa: Rename pport to fcport in BFA FCS.
    [SCSI] bfa: IOC fixes, check for IOC down condition.
    [SCSI] bfa: In MSIX mode, ignore spurious RME interrupts when FCoE ports are in FW mismatch state.
    [SCSI] bfa: Fix Command Queue (CPE) full condition check and ack CPE interrupt.
    [SCSI] bfa: IOC recovery fix in fcmode.
    [SCSI] bfa: AEN and byte alignment fixes.
    [SCSI] bfa: Introduce a link notification state machine.
    [SCSI] bfa: Added firmware save clear feature for BFA driver.
    [SCSI] bfa: FCS authentication related changes.
    [SCSI] bfa: PCI VPD, FIP and include file changes.
    [SCSI] bfa: Fix to copy fpma MAC when requested by user space application.
    [SCSI] bfa: RPORT state machine: direct attach mode fix.
    ...

    Linus Torvalds
     
  • * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/hid:
    HID: avoid '\0' in hid debugfs events file
    HID: Add RGT Clutch Wheel clutch device id
    HID: ntrig: fix touch events
    HID: add quirk for UC-Logik WP4030 tablet
    HID: magicmouse: fix oops after device removal

    Linus Torvalds
     
  • * 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jgarzik/libata-dev:
    ahci: pp->active_link is not reliable when FBS is enabled
    ahci: use BIOS date in broken_suspend list
    ahci: add missing nv IDs

    Linus Torvalds
     
  • * 'for-linus' of git://git.o-hand.com/linux-rpurdie-backlight:
    backlight: panasonic-laptop - Fix incomplete registration failure handling
    backlight: msi-laptop, msi-wmi: fix incomplete registration failure handling
    backlight: blackfin - Fix missing registration failure handling
    backlight: classmate-laptop - Fix missing registration failure handling
    backlight: mbp_nvidia_bl - add five more MacBook variants
    backlight: Allow properties to be passed at registration
    backlight: Add backlight_device parameter to check_fb
    video: backlight/progear, fix pci device refcounting
    backlight: l4f00242t03: Fix module licence absence.
    backlight: Revert some const qualifiers
    backlight: Add Epson L4F00242T03 LCD driver

    Linus Torvalds
     
  • * 'for-linus' of git://git.o-hand.com/linux-rpurdie-leds:
    leds: Fix race between LED device uevent and actual attributes creation
    leds-gpio: fix default state handling on OF platforms
    leds: Add Dell Business Class Netbook LED driver
    leds: Kconfig cleanup
    leds: led-class.c - Quiet boot messages
    leds: make PCI device id constant
    leds: ALIX2: Add dependency to !GPIO_CS5335

    Linus Torvalds
     
  • * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: (39 commits)
    gigaset: fix build failure
    bridge: Make first arg to deliver_clone const.
    bridge br_multicast: Don't refer to BR_INPUT_SKB_CB(skb)->mrouters_only without IGMP snooping.
    route: Fix caught BUG_ON during rt_secret_rebuild_oneshot()
    bridge br_multicast: Fix skb leakage in error path.
    bridge br_multicast: Fix handling of Max Response Code in IGMPv3 message.
    NET: netpoll, fix potential NULL ptr dereference
    tipc: fix lockdep warning on address assignment
    l2tp: Fix UDP socket reference count bugs in the pppol2tp driver
    smsc95xx: wait for PHY to complete reset during init
    l2tp: Fix oops in pppol2tp_xmit
    smsc75xx: SMSC LAN75xx USB gigabit ethernet adapter driver
    ne: Do not use slashes in irq name string
    NET: ksz884x, fix lock imbalance
    gigaset: correct range checking off by one error
    bridge: Fix br_forward crash in promiscuous mode
    bridge: Move NULL mdb check into br_mdb_ip_get
    ISDN: Add PCI ID for HFC-2S/4S Beronet Card PCIe
    net-2.6 [Bug-Fix][dccp]: fix oops caused after failed initialisation
    myri: remove dead code
    ...

    Linus Torvalds
     
  • * git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6:
    sunxvr1000: Add missing FB=y depenency.
    MAINTAINERS: Add entry for sparc serial drivers.
    drivers/serial/sunsab.c: adjust the constant used to initialize the interrupt_mask0 fields

    Linus Torvalds
     
  • * 'urgent' of git://git.kernel.org/pub/scm/linux/kernel/git/brodo/pcmcia-2.6:
    PCMCIA: resource, fix lock imbalance
    pcmcia: add important if statement
    pcmcia: re-route Cardbus IRQ to ISA on ti1130 bridges if necessary
    pcmcia: allow for cb_irq to differ from pci_dev's irq in yenta_socket
    pcmcia: honor saved flags in yenta_socket's I365_CSCINT register
    pcmcia: revert "irq probe can be done without risking an IRQ storm"
    pcmcia: pd6729, i82092: use parent (PCI) resources
    pcmcia/vrc4171: use local spinlock for device local lock.

    Linus Torvalds
     

18 Mar, 2010

7 commits

  • Implement arch specific arch_get_memory_phys_device function and
    initialize phys_device for each memory section. That way we finally can
    tell which piece of memory belongs to which physical device.

    This makes s390's /sys/devices/system/memory/memoryX/phys_device display
    the correct thing?

    Signed-off-by: Heiko Carstens
    Cc: Dave Hansen
    Cc: Gerald Schaefer
    Cc: KAMEZAWA Hiroyuki
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Heiko Carstens
     
  • /sys/devices/system/memory/memoryX/phys_device is supposed to contain the
    number of the physical device that the corresponding piece of memory
    belongs to.

    In case a physical device should be replaced or taken offline for whatever
    reason it is necessary to set all corresponding memory pieces offline.
    The current implementation always sets phys_device to '0' and there is no
    way or hook to change that. Seems like there was a plan to implement that
    but it wasn't finished for whatever reason.

    So add a weak function which architectures can override to actually set
    the phys_device from within add_memory_block().

    Signed-off-by: Heiko Carstens
    Cc: Dave Hansen
    Cc: Gerald Schaefer
    Cc: KAMEZAWA Hiroyuki
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Heiko Carstens
     
  • Replace open-coded loop with for_each_set_bit().

    Signed-off-by: Akinobu Mita
    Cc: Clemens Ladisch
    Cc: Bob Picco
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Akinobu Mita
     
  • Update the dummy LL interface to the LL interface change
    introduced by commit daab433c03c15fd642c71c94eb51bdd3f32602c8.
    This fixes the build failure occurring after that commit when
    enabling ISDN_DRV_GIGASET but neither ISDN_I4L nor ISDN_CAPI.

    Impact: bugfix
    Signed-off-by: Tilman Schmidt
    Signed-off-by: David S. Miller

    Tilman Schmidt
     
  • pp->active_link is not reliable when FBS is enabled.
    Both PORT_SCR_ACT and PORT_CMD_ISSUE should be checked
    because mixed NCQ and non-NCQ commands may be in flight.

    Signed-off-by: Shane Huang
    Signed-off-by: Jeff Garzik

    Shane Huang
     
  • HP is recycling both DMI_PRODUCT_NAME and DMI_BIOS_VERSION making
    ahci_broken_suspend() trigger for later products which are not
    affected by the original problems. Match BIOS date instead of version
    and add references to bko's so that full information can be found
    easier later.

    This fixes http://bugzilla.kernel.org/show_bug.cgi?id=15462

    Signed-off-by: Tejun Heo
    Reported-by: tigerfishdaisy@gmail.com
    Signed-off-by: Jeff Garzik

    Tejun Heo
     
  • bko#15481 shows that we're missing some NVIDIA ahci PCI IDs. Peer
    Chen confirms that IDs 0x580-0x58f are reserved for cases where Linux
    ID option is selected in the BIOS and are only used for mcp65-73. Add
    0x0581-0x058f.

    http://bugzilla.kernel.org/show_bug.cgi?id=15481

    Signed-off-by: Tejun Heo
    Cc: Peer Chen
    Signed-off-by: Jeff Garzik

    Tejun Heo
     

17 Mar, 2010

21 commits

  • Signed-off-by: David S. Miller

    David S. Miller
     
  • This patch fixes UDP socket refcnt bugs in the pppol2tp driver.

    A bug can cause a kernel stack trace when a tunnel socket is closed.

    A way to reproduce the issue is to prepare the UDP socket for L2TP (by
    opening a tunnel pppol2tp socket) and then close it before any L2TP
    sessions are added to it. The sequence is

    Create UDP socket
    Create tunnel pppol2tp socket to prepare UDP socket for L2TP
    pppol2tp_connect: session_id=0, peer_session_id=0
    L2TP SCCRP control frame received (tunnel_id==0)
    pppol2tp_recv_core: sock_hold()
    pppol2tp_recv_core: sock_put
    L2TP ZLB control frame received (tunnel_id=nnn)
    pppol2tp_recv_core: sock_hold()
    pppol2tp_recv_core: sock_put
    Close tunnel management socket
    pppol2tp_release: session_id=0, peer_session_id=0
    Close UDP socket
    udp_lib_close: BUG

    The addition of sock_hold() in pppol2tp_connect() solves the problem.

    For data frames, two sock_put() calls were added to plug a refcnt leak
    per received data frame. The ref that is grabbed at the top of
    pppol2tp_recv_core() must always be released, but this wasn't done for
    accepted data frames or data frames discarded because of bad UDP
    checksums. This leak meant that any UDP socket that had passed L2TP
    data traffic (i.e. L2TP data frames, not just L2TP control frames)
    using pppol2tp would not be released by the kernel.

    WARNING: at include/net/sock.h:435 udp_lib_unhash+0x117/0x120()
    Pid: 1086, comm: openl2tpd Not tainted 2.6.33-rc1 #8
    Call Trace:
    [] ? udp_lib_unhash+0x117/0x120
    [] ? warn_slowpath_common+0x71/0xd0
    [] ? udp_lib_unhash+0x117/0x120
    [] ? warn_slowpath_null+0x13/0x20
    [] ? udp_lib_unhash+0x117/0x120
    [] ? sk_common_release+0x17/0x90
    [] ? inet_release+0x33/0x60
    [] ? sock_release+0x10/0x60
    [] ? sock_close+0xf/0x30
    [] ? __fput+0x52/0x150
    [] ? filp_close+0x3e/0x70
    [] ? put_files_struct+0x62/0xb0
    [] ? do_exit+0x5e7/0x650
    [] ? mntput_no_expire+0x13/0x70
    [] ? filp_close+0x3e/0x70
    [] ? do_group_exit+0x2a/0x70
    [] ? sys_exit_group+0x11/0x20
    [] ? sysenter_do_call+0x12/0x26

    Signed-off-by: James Chapman
    Signed-off-by: David S. Miller

    James Chapman
     
  • This patch ensures the PHY correctly completes its reset before
    setting register values.

    Signed-off-by: Steve Glendinning
    Signed-off-by: David S. Miller

    Steve Glendinning
     
  • When transmitting L2TP frames, we derive the outgoing interface's UDP
    checksum hardware assist capabilities from the tunnel dst dev. This
    can sometimes be NULL, especially when routing protocols are used and
    routing changes occur. This patch just checks for NULL dst or dev
    pointers when checking for netdev hardware assist features.

    BUG: unable to handle kernel NULL pointer dereference at 0000000c
    IP: [] pppol2tp_xmit+0x341/0x4da [pppol2tp]
    *pde = 00000000
    Oops: 0000 [#1] SMP
    last sysfs file: /sys/class/net/lo/operstate
    Modules linked in: pppol2tp pppox ppp_generic slhc ipv6 dummy loop snd_hda_codec_atihdmi snd_hda_intel snd_hda_codec snd_pcm snd_timer snd soundcore snd_page_alloc evdev psmouse serio_raw processor button i2c_piix4 i2c_core ati_agp agpgart pcspkr ext3 jbd mbcache sd_mod ide_pci_generic atiixp ide_core ahci ata_generic floppy ehci_hcd ohci_hcd libata e1000e scsi_mod usbcore nls_base thermal fan thermal_sys [last unloaded: scsi_wait_scan]

    Pid: 0, comm: swapper Not tainted (2.6.32.8 #1)
    EIP: 0060:[] EFLAGS: 00010297 CPU: 3
    EIP is at pppol2tp_xmit+0x341/0x4da [pppol2tp]
    EAX: 00000000 EBX: f64d1680 ECX: 000005b9 EDX: 00000000
    ESI: f6b91850 EDI: f64d16ac EBP: f6a0c4c0 ESP: f70a9cac
    DS: 007b ES: 007b FS: 00d8 GS: 0000 SS: 0068
    Process swapper (pid: 0, ti=f70a8000 task=f70a31c0 task.ti=f70a8000)
    Stack:
    000005a9 000005b9 f734c400 f66652c0 f7352e00 f67dc800 00000000 f6b91800
    000005a3 f70ef6c4 f67dcda9 000005a3 f89b192e 00000246 000005a3 f64d1680
    f63633e0 f6363320 f64d1680 f65a7320 f65a7364 f65856c0 f64d1680 f679f02f
    Call Trace:
    [] ? ppp_push+0x459/0x50e [ppp_generic]
    [] ? ppp_xmit_process+0x3b6/0x430 [ppp_generic]
    [] ? ppp_start_xmit+0x10d/0x120 [ppp_generic]
    [] ? dev_hard_start_xmit+0x21f/0x2b2
    [] ? sch_direct_xmit+0x48/0x10e
    [] ? dev_queue_xmit+0x263/0x3a6
    [] ? ip_finish_output+0x1f7/0x221
    [] ? ip_forward_finish+0x2e/0x30
    [] ? ip_rcv_finish+0x295/0x2a9
    [] ? netif_receive_skb+0x3e9/0x404
    [] ? e1000_clean_rx_irq+0x253/0x2fc [e1000e]
    [] ? e1000_clean+0x63/0x1fc [e1000e]
    [] ? sched_clock_local+0x15/0x11b
    [] ? net_rx_action+0x96/0x195
    [] ? __do_softirq+0xaa/0x151
    [] ? do_softirq+0x31/0x3c
    [] ? irq_exit+0x26/0x58
    [] ? do_IRQ+0x78/0x89
    [] ? common_interrupt+0x29/0x30
    [] ? native_safe_halt+0x2/0x3
    [] ? default_idle+0x55/0x75
    [] ? c1e_idle+0xd2/0xd5
    [] ? cpu_idle+0x46/0x62
    Code: 8d 45 08 f0 ff 45 08 89 6b 08 c7 43 68 7e fb 9c f8 8a 45 24 83 e0 0c 3c 04 75 09 80 63 64 f3 e9 b4 00 00 00 8b 43 18 8b 4c 24 04 40 0c 8d 79 11 f6 40 44 0e 8a 43 64 75 51 6a 00 8b 4c 24 08
    EIP: [] pppol2tp_xmit+0x341/0x4da [pppol2tp] SS:ESP 0068:f70a9cac
    CR2: 000000000000000c

    Signed-off-by: James Chapman
    Signed-off-by: David S. Miller

    James Chapman
     
  • This patch adds a driver for SMSC's LAN7500 family of USB 2.0
    to gigabit ethernet adapters. It's loosely based on the smsc95xx
    driver but the device registers for LAN7500 are completely different.

    Signed-off-by: Steve Glendinning
    Signed-off-by: David S. Miller

    Steve Glendinning
     
  • This patch fixes following warning introduced by commit
    12bac0d9f4dbf3445a0319beee848d15fa32775e ("proc: warn on non-existing
    proc entries"):

    WARNING: at /work/mips-linux/make/linux/fs/proc/generic.c:316 __xlate_proc_name+0xe0/0xe8()
    name 'RBHMA4X00/RTL8019'

    Signed-off-by: Atsushi Nemoto
    Signed-off-by: David S. Miller

    Atsushi Nemoto
     
  • Stanse found that one error path (when alloc_skb fails) in netdev_tx
    omits to unlock hw_priv->hwlock. Fix that.

    Signed-off-by: Jiri Slaby
    Cc: Tristram Ha
    Cc: David S. Miller
    Signed-off-by: David S. Miller

    Jiri Slaby
     
  • Correct a potential array overrun due to an off by one error in the
    range check on the CAPI CONNECT_REQ CIPValue parameter.
    Found and reported by Dan Carpenter using smatch.

    Impact: bugfix
    Signed-off-by: Tilman Schmidt
    Signed-off-by: David S. Miller

    Tilman Schmidt
     
  • If we were to dynamically register/unregister leds and have udev or other
    daemons handle the leds class uevents, we would be notified of the adding of a
    new LED and if the daemon immediately tries to open one of the attributes of
    the led device, it would fail with a "no such file or directory" error since
    this the attributes are not yet created. Fix this by switching attributes to be
    class-wide, such that the driver core will register these attributes with
    device_add_attrs and then emit the kobject_uevent ADD signal.

    Signed-off-by: Fainelli
    Signed-off-by: Richard Purdie

    Florian Fainelli
     
  • Properly return backlight registration error to parent.
    Mark struct backlight_ops as const.

    Signed-off-by: Bruno Prémont
    Acked-by: Harald Welte (registration failure)
    Signed-off-by: Richard Purdie

    Bruno Prémont
     
  • Properly return backlight registration error to parent.
    Mark struct backlight_ops as const.

    Signed-off-by: Bruno Prémont
    Reviewed-by: Anisse Astier
    Signed-off-by: Richard Purdie

    Bruno Prémont
     
  • Check newly registered backlight_device for error and properly
    return error to parent
    Mark struct backlight_ops as const.

    Signed-off-by: Bruno Prémont
    Acked-by: Mike Frysinger (constify struct backlight_ops)
    Signed-off-by: Richard Purdie

    Bruno Prémont
     
  • Check newly registered backlight_device for error and properly
    return error to parent.
    Mark struct backlight_ops as const.

    Signed-off-by: Bruno Prémont
    Signed-off-by: Richard Purdie

    Bruno Prémont
     
  • This adds the MacBook 1,1 2,1 3,1 4,1 and 4,2 to the DMI tables.

    Signed-off-by: Evan McClain
    Signed-off-by: Richard Purdie

    Evan McClain
     
  • The driver wrongly sets default state for LEDs that don't specify
    default-state property.

    Currently the driver handles default state this way:

    memset(&led, 0, sizeof(led));
    for_each_child_of_node(np, child) {
    state = of_get_property(child, "default-state", NULL);
    if (state) {
    if (!strcmp(state, "keep"))
    led.default_state = LEDS_GPIO_DEFSTATE_KEEP;
    ...
    }
    ret = create_gpio_led(&led, ...);
    }

    Which means that all LEDs that do not specify default-state will inherit
    the last value of the default-state property, which is wrong.

    This patch fixes the issue by moving LED's template initialization into
    the loop body.

    Signed-off-by: Anton Vorontsov
    Signed-off-by: Andrew Morton
    Signed-off-by: Richard Purdie

    Anton Vorontsov
     
  • This patch adds an LED driver to support the Dell Activity LED on the
    Dell Latitude 2100 netbook and future products to come. The Activity LED
    is visible externally in the lid so classroom instructors can observe it
    from a distance. The driver uses the sysfs led_class and provides a
    standard LED interface.

    Signed-off by: Bob Rodgers
    Signed-off-by: Louis Davis
    Signed-off-by: Jim Dailey , Developers
    Acked-by: Matthew Garrett
    Acked-by: Dmitry Torokhov
    Signed-off-by: Richard Purdie

    Bob Rodgers
     
  • Remove the need for "depends on LEDS_CLASS" by wrapping the affected
    config options in an if/endif block. Similar for "depends on LEDS_TRIGGERS".

    LEDS_COBALT_RAQ still has a "depends on LEDS_CLASS=y" since it cannot
    be selected to build as a module.

    Signed-off-by: H Hartley Sweeten
    Signed-off-by: Richard Purdie

    H Hartley Sweeten
     
  • As each led device gets registered a kernel message gets printed. In
    an embedded system with a number of leds this can produce a lot
    of output that just looks like noise.

    Change the message type to KERN_DEBUG since it might be useful
    in the dmesg output "after" booting.

    Signed-off-by: H Hartley Sweeten
    Signed-off-by: Richard Purdie

    H Hartley Sweeten
     
  • The id_table field of the struct pci_driver is constant in
    so it is worth to make pci_device_id also constant.

    The semantic match that finds this kind of pattern is as follows:
    (http://coccinelle.lip6.fr/)

    //
    @r@
    disable decl_init,const_decl_init;
    identifier I1, I2, x;
    @@
    struct I1 {
    ...
    const struct I2 *x;
    ...
    };
    @s@
    identifier r.I1, y;
    identifier r.x, E;
    @@
    struct I1 y = {
    .x = E,
    };
    @c@
    identifier r.I2;
    identifier s.E;
    @@
    const struct I2 E[] = ... ;
    @depends on !c@
    identifier r.I2;
    identifier s.E;
    @@
    + const
    struct I2 E[] = ...;
    //

    Signed-off-by: Márton Németh
    Signed-off-by: Richard Purdie

    Márton Németh
     
  • The ALIX2 LED driver and the CS5535 GPIO drivers share the same I/O
    range which causes a conflict if they're both enabled. Fix this for now
    by adding Kconfig dependencies. While at it, also drop the EXPERIMENTAL
    flag, as the code has been around for awhile already.

    Note that this is a hack. At some point, a real platform support for
    this board should be added which handles the LEDs via the leds-gpio
    driver.

    Signed-off-by: Daniel Mack
    Signed-off-by: Richard Purdie

    Daniel Mack
     
  • Values such as max_brightness should be set before backlights are
    registered, but the current API doesn't allow that. Add a parameter to
    backlight_device_register and update drivers to ensure that they
    set this correctly.

    Signed-off-by: Matthew Garrett
    Signed-off-by: Richard Purdie

    Matthew Garrett