diff --git a/debian/changelog b/debian/changelog index f285fc251..5e2bdda39 100644 --- a/debian/changelog +++ b/debian/changelog @@ -32,6 +32,476 @@ linux (4.5~rc4-1~exp1) experimental; urgency=medium -- Ben Hutchings Thu, 18 Feb 2016 01:57:20 +0000 +linux (4.4.4-1) unstable; urgency=medium + + [ Salvatore Bonaccorso ] + * New upstream stable update: + https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.4.3 + - [x86] mm: Fix types used in pgprot cacheability flags translations + - [x86] mm/pat: Avoid truncation when converting cpa->numpages to address + - [x86] uaccess/64: Make the __copy_user_nocache() assembly code + more readable + - [x86] uaccess/64: Handle the caching of 4-byte nocache copies + properly in __copy_user_nocache() + - [x86] mm: Fix vmalloc_fault() to handle large pages properly + - ALSA: hda - Cancel probe work instead of flush at remove + - ALSA: pcm: Fix rwsem deadlock for non-atomic PCM stream + - ALSA: seq: Fix leak of pool buffer at concurrent writes + - ALSA: seq: Fix double port list deletion + - [armhf] phy: twl4030-usb: Relase usb phy on unload + - [armhf] phy: twl4030-usb: Fix unbalanced pm_runtime_enable on + module reload + - staging/speakup: Use tty_ldisc_ref() for paste kworker + - pty: fix possible use after free of tty->driver_data + - pty: make sure super_block is still valid in final /dev/tty close + - tty: Add support for PCIe WCH382 2S multi-IO card + - [x86] serial: 8250_pci: Add Intel Broadwell ports + - [armhf] serial: omap: Prevent DoS using unprivileged ioctl(TIOCSRS485) + - ext4: fix scheduling in atomic on group checksum failure + - ext4: fix potential integer overflow + - ext4: don't read blocks from disk after extents being swapped + - btrfs: handle invalid num_stripes in sys_array + - Btrfs: fix fitrim discarding device area reserved for boot loader's use + - Revert "btrfs: clear PF_NOFREEZE in cleaner_kthread()" + - btrfs: properly set the termination value of ctx->pos in readdir + - Btrfs: fix invalid page accesses in extent_same (dedup) ioctl + - Btrfs: fix page reading in extent_same ioctl leading to csum errors + - Btrfs: fix hang on extent buffer lock caused by the inode_paths ioctl + - Btrfs: fix direct IO requests not reporting IO error to user space + - ptrace: use fsuid, fsgid, effective creds for fs access checks + - tracing: Fix freak link error caused by branch tracer + - tracepoints: Do not trace when cpu is offline + - klist: fix starting point removed bug in klist iterators + - scsi: add Synology to 1024 sector blacklist + - iscsi-target: Fix potential dead-lock during node acl delete + - SCSI: fix crashes in sd and sr runtime PM + - drivers/scsi/sg.c: mark VMA as VM_IO to prevent migration + - scsi_dh_rdac: always retry MODE SELECT on command lock violation + - SCSI: Add Marvell Console to VPD blacklist + - scsi: fix soft lockup in scsi_remove_target() on module removal + - iio: adis_buffer: Fix out-of-bounds memory access + - iio:adc:ti_am335x_adc Fix buffered mode by identifying as software buffer. + - iio-light: Use a signed return type for ltr501_match_samp_freq() + - iio: add HAS_IOMEM dependency to VF610_ADC + - iio: add IIO_TRIGGER dependency to STK8BA50 + - iio: dac: mcp4725: set iio name property in sysfs + - iio: light: acpi-als: Report data as processed + - iio: pressure: mpl115: fix temperature offset sign + - iio: inkern: fix a NULL dereference on error + - cifs: Ratelimit kernel log messages + - cifs: fix race between call_async() and reconnect() + - cifs_dbg() outputs an uninitialized buffer in cifs_readdir() + - cifs: fix erroneous return value + - NFS: Fix attribute cache revalidation + - pNFS/flexfiles: Fix an Oopsable typo in ff_mirror_match_fh() + - nfs: Fix race in __update_open_stateid() + - pNFS/flexfiles: Fix an XDR encoding bug in layoutreturn + - udf: limit the maximum number of indirect extents in a row + - udf: Prevent buffer overrun with multi-byte characters + - udf: Check output buffer length when converting name to CS0 + - SUNRPC: Fixup socket wait for memory + - [powerpc] eeh: Fix PE location code + - [powerpc] eeh: Fix stale cached primary bus + - [powerpc] powernv: Fix stale PE primary bus + - [powerpc] ioda: Set "read" permission when "write" is set + - [armhf] mvebu: remove duplicated regulator definition in Armada 388 GP + - [arm64] mm: avoid calling apply_to_page_range on empty range + - [armel,armhf] 8519/1: ICST: try other dividends than 1 + - [armel,armhf] 8517/1: ICST: avoid arithmetic overflow in icst_hz() + - [armhf] dts: Fix wl12xx missing clocks that cause hangs + - [armhf] dts: Fix omap5 PMIC control lines for RTC writes + - [armhf] dts: omap5-board-common: enable rtc and charging of backup battery + - [armhf] OMAP2+: Fix wait_dll_lock_timed for rodata + - [armhf] OMAP2+: Fix l2_inv_api_params for rodata + - [armhf] OMAP2+: Fix l2dis_3630 for rodata + - [armhf] OMAP2+: Fix save_secure_ram_context for rodata + - [armhf] OMAP2+: Fix ppa_zero_params and ppa_por_params for rodata + - [arm64] dma-mapping: fix handling of devices registered before + arch_initcall + - [arm,arm64] KVM: Fix reference to uninitialised VGIC + - [powerpc*] KVM: PPC: Fix emulation of H_SET_DABR/X on POWER8 + - [powerpc*] KVM: PPC: Fix ONE_REG AltiVec support + - mm: soft-offline: check return value in second __get_any_page() call + - libnvdimm: fix namespace object confusion in is_uuid_busy() + - mm: fix mlock accouting + - mm: replace vma_lock_anon_vma with anon_vma_lock_read/write + - mm: fix regression in remap_file_pages() emulation + - Input: elantech - mark protocols v2 and v3 as semi-mt + - [x86] Input: i8042 - add Fujitsu Lifebook U745 to the nomux list + - string_helpers: fix precision loss for some inputs + - Input: vmmouse - fix absolute device registration + - [x86] iommu/vt-d: Don't skip PCI devices when disabling IOTLB + - [x86] iommu/amd: Correct the wrong setting of alias DTE in do_attach + - [x86] iommu/vt-d: Fix mm refcounting to hold mm_count not mm_users + - [x86] iommu/vt-d: Fix 64-bit accesses to 32-bit DMAR_GSTS_REG + - [x86] iommu/vt-d: Clear PPR bit to ensure we get more page + request interrupts + - Revert "xhci: don't finish a TD if we get a short-transfer event mid TD" + - xhci: Fix list corruption in urb dequeue at host removal + - fs/hugetlbfs/inode.c: fix bugs in hugetlb_vmtruncate_list() + - [s390x] numa: fix /proc//numa_maps for hugetlbfs on s390 + - memcg: only free spare array when readers are done + - radix-tree: fix race in gang lookup + - drivers/hwspinlock: fix race between radix tree insertion and lookup + - radix-tree: fix oops after radix_tree_iter_retry + - dump_stack: avoid potential deadlocks + - mm,thp: khugepaged: call pte flush at the time of collapse + - [x86] intel_scu_ipcutil: underflow in scu_reg_access() + - ipc/shm: handle removed segments gracefully in shm_mmap() + - devm_memremap_release(): fix memremap'd addr handling + - futex: Drop refcount if requeue_pi() acquired the rtmutex + - ovl: allow zero size xattr + - ovl: use a minimal buffer in ovl_copy_xattr + - ovl: check dentry positiveness in ovl_cleanup_whiteouts() + - ovl: root: copy attr + - ovl: setattr: check permissions before copy-up + - libxfs: pack the agfl header structure so XFS_AGFL_SIZE is correct + - xfs: inode recovery readahead can race with inode buffer creation + - Revert "xfs: clear PF_NOFREEZE for xfsaild kthread" + - xfs: log mount failures don't wait for buffers to be released + - prctl: take mmap sem for writing to protect against others + - timerfd: Handle relative timers with CONFIG_TIME_LOW_RES proper + - posix-timers: Handle relative timers with CONFIG_TIME_LOW_RES proper + - itimers: Handle relative timers with CONFIG_TIME_LOW_RES proper + - modules: fix modparam async_probe request + https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.4.4 + - af_iucv: Validate socket address length in iucv_sock_bind() + - gro: Make GRO aware of lightweight tunnels. + - tunnels: Allow IPv6 UDP checksums to be correctly controlled. + - lwt: fix rx checksum setting for lwt devices tunneling over ipv6 + - tcp: fix NULL deref in tcp_v4_send_ack() + - af_unix: fix struct pid memory leak + - pptp: fix illegal memory access caused by multiple bind()s + - sctp: allow setting SCTP_SACK_IMMEDIATELY by the application + - tipc: fix connection abort during subscription cancel + - inet: frag: Always orphan skbs inside ip_defrag() + - tcp: beware of alignments in tcp_get_info() + - ipv6: enforce flowi6_oif usage in ip6_dst_lookup_tail() + - ipv6/udp: use sticky pktinfo egress ifindex on connect() + - ipv6: addrconf: Fix recursive spin lock call + - ipv6: fix a lockdep splat + - unix: correctly track in-flight fds in sending process user_struct + (regression in 4.3.3-6; CVE-2016-2550) + - tcp: do not drop syn_recv on all icmp reports + - net:Add sysctl_max_skb_frags + - tg3: Fix for tg3 transmit queue 0 timed out when too many gso_segs + - enic: increment devcmd2 result ring in case of timeout + - sctp: translate network order to host order when users get a hmacid + - net: Copy inner L3 and L4 headers as unaligned on GRE TEB + - flow_dissector: Fix unaligned access in __skb_flow_dissector when used by + eth_get_headlen + - bpf: fix branch offset adjustment on backjumps after patching + ctx expansion + - bonding: Fix ARP monitor validation + - ipv4: fix memory leaks in ip_cmsg_send() callers + - af_unix: Don't set err in unix_stream_read_generic unless there was + an error + - af_unix: Guard against other == sk in unix_dgram_sendmsg + - tipc: fix premature addition of node to lookup table + - tcp: md5: release request socket instead of listener + - qmi_wwan: add "4G LTE usb-modem U901" + - net/mlx4_en: Count HW buffer overrun only once + - net/mlx4_en: Choose time-stamping shift value according to HW frequency + - net/mlx4_en: Avoid changing dev->features directly in run-time + - l2tp: Fix error creating L2TP tunnels + - pppoe: fix reference counting in PPPoE proxy + - net_sched fix: reclassification needs to consider ether protocol changes + - route: check and remove route cache when we get route + - tcp/dccp: fix another race at listener dismantle + - IFF_NO_QUEUE: Fix for drivers not calling ether_setup() + - rtnl: RTM_GETNETCONF: fix wrong return value + - tipc: unlock in error path + - unix_diag: fix incorrect sign extension in unix_lookup_by_ino + - sctp: Fix port hash table size computation + - ext4: fix bh->b_state corruption + - [s390x] KVM: fix guest fprs memory leak + - devm_memremap: Fix error value when memremap failed + - efi: Make efivarfs entries immutable by default + - efi: Add pstore variables to the deletion whitelist + - bcache: fix a livelock when we cause a huge number of cache misses + - bcache: Add a cond_resched() call to gc + - bcache: clear BCACHE_DEV_UNLINK_DONE flag when attaching a backing device + - bcache: fix a leak in bch_cached_dev_run() + - bcache: unregister reboot notifier if bcache fails to unregister device + - bcache: allows use of register in udev to avoid "device_busy" error. + - bcache: prevent crash on changing writeback_running + - bcache: Change refill_dirty() to always scan entire disk if necessary + - dm thin: fix race condition when destroying thin pool workqueue + - can: ems_usb: Fix possible tx overflow + - usb: dwc3: Fix assignment of EP transfer resources + - USB: cp210x: add IDs for GE B650V3 and B850V3 boards + - USB: option: add support for SIM7100E + - USB: option: add "4G LTE usb-modem U901" + - [armhf] spi: omap2-mcspi: Prevent duplicate gpio_request + - iw_cxgb3: Fix incorrectly returning error on success + - [x86] drm/i915: shut up gen8+ SDE irq dmesg noise + - ocfs2: unlock inode if deleting inode from orphan fails + - mm: thp: fix SMP race condition between THP page fault and MADV_DONTNEED + - mm: numa: quickly fail allocations for NUMA balancing on full nodes + - genirq: Validate action before dereferencing it in + handle_irq_event_percpu() + - [s390x] KVM: fix memory overwrites when vx is disabled + - Btrfs: add missing brelse when superblock checksum fails + - Btrfs: igrab inode in writepage + - btrfs: statfs: report zero available if metadata are exhausted + - Btrfs: send, don't BUG_ON() when an empty symlink is found + - Btrfs: fix number of transaction units required to create symlink + - Btrfs: fix transaction handle leak on failure to create hard link + - Btrfs: Initialize btrfs_root->highest_objectid when loading tree root and + subvolume roots + - btrfs: initialize the seq counter in struct btrfs_device + - [s390x] fix normalization bug in exception table sorting + - [s390x] dasd: prevent incorrect length error under z/VM after PAV changes + - [s390x] dasd: fix refcount for PAV reassignment + - [s390x] dasd: fix performance drop + - [s390x] compat: correct restore of high gprs on signal return + - [s390x] fpu: signals vs. floating point control register + - locks: fix unlock when fcntl_setlk races with a close + - rtlwifi: rtl8192cu: Add missing parameter setup + - rtlwifi: rtl8192ce: Fix handling of module parameters + - rtlwifi: rtl8192de: Fix incorrect module parameter descriptions + - rtlwifi: rtl8723ae: Fix initialization of module parameters + - rtlwifi: rtl8192se: Fix module parameter initialization + - rtlwifi: rtl8188ee: Fix module parameter initialization + - rtlwifi: rtl8723be: Fix module parameter initialization + - [x86] mei: fix fasync return value on error + - [x86] mei: validate request value in client notify request ioctl + - namei: ->d_inode of a pinned dentry is stable only for positives + - [armhf] rc: sunxi-cir: Initialize the spinlock properly + - gspca: ov534/topro: prevent a division by 0 + - vb2: fix a regression in poll() behavior for output,streams + - tda1004x: only update the frontend properties if locked + - dm snapshot: fix hung bios when copy error occurs + - dm: fix dm_rq_target_io leak on faults with .request_fn DM w/ blk-mq paths + - posix-clock: Fix return code on the poll method's error path + - mmc: sdhci-pci: Do not default to 33 Ohm driver strength for Intel SPT + - mmc: sdhci: Fix DMA descriptor with zero data length + - mmc: sdio: Fix invalid vdd in voltage switch power cycle + - mmc: mmc: Fix incorrect use of driver strength switching HS200 and HS400 + - mmc: sdhci: Fix sdhci_runtime_pm_bus_on/off() + - mmc: core: Enable tuning according to the actual timing + - [armhf, arm64] mmc: mmci: fix an ages old detection error + - [x86] mmc: sdhci-acpi: Fix card detect race for Intel BXT/APL + - [x86] mmc: sdhci-pci: Fix card detect race for Intel BXT/APL + - mmc: sdhci: Allow override of mmc host operations + - mmc: sdhci: Allow override of get_cd() called from sdhci_request() + - [x86] Drivers: hv: vmbus: Fix a Host signaling bug + - Bluetooth: Use continuous scanning when creating LE connections + - Bluetooth: Add support of Toshiba Broadcom based devices + - Bluetooth: Fix incorrect removing of IRKs + - Bluetooth: 6lowpan: Fix kernel NULL pointer dereferences + - Bluetooth: 6lowpan: Fix handling of uncompressed IPv6 packets + - time: Avoid signed overflow in timekeeping_get_ns() + - cputime: Prevent 32bit overflow in time[val|spec]_to_cputime() + - [mips*] Revert "MIPS: Fix PAGE_MASK definition" + - [mips*el/loongson-3] Loongson-3: Fix SMP_ASK_C0COUNT IPI handler + - [mips*] hpet: Choose a safe value for the ETIME check + - [mips*] Fix buffer overflow in syscall_get_arguments() + - EDAC: Robustify workqueues destruction + - EDAC, mc_sysfs: Fix freeing bus' name + - [sparc64] fix incorrect sign extension in sys_sparc64_personality + - [armhf] clk: exynos: use irqsave version of spin_lock to avoid deadlock + with irqs + - [armhf] regulator: axp20x: Fix GPIO LDO enable value for AXP22x + - virtio_balloon: fix race by fill and leak + - virtio_balloon: fix race between migration and ballooning + - virtio_pci: fix use after free on release + - [x86] drm/vmwgfx: Fix an incorrect lock check + - [x86] drm/vmwgfx: Fix a width / pitch mismatch on framebuffer updates + - [x86] drm/vmwgfx: respect 'nomodeset' + - [x86] drm/amdgpu: Fix off-by-one errors in amdgpu_vm_bo_map + - [x86] drm/amdgpu: call hpd_irq_event on resume + - [x86] drm/amdgpu: fix lost sync_to if scheduler is enabled. + - [x86] drm/amdgpu: fix tonga smu resume + - [x86] drm/amdgpu: fix amdgpu_bo_pin_restricted VRAM placing v2 + - [x86] drm/amdgpu: no need to load MC firmware on fiji + - [x86] drm/amdgpu: move gmc7 support out of CIK dependency + - [x86] drm/amdgpu: iceland use CI based MC IP + - [x86] drm/amdgpu: The VI specific EXE bit should only apply to GMC + v8.0 above + - [x86] drm/amdgpu: pull topaz gmc bits into gmc_v7 + - [x86] drm/amdgpu: drop topaz support from gmc8 module + - [x86] drm/amdgpu: don't load MEC2 on topaz + - [x86] drm/amdgpu: remove exp hardware support from iceland + - [x86] drm/amdgpu: fix s4 resume + - [x86] drm/amdgpu: remove unnecessary forward declaration + - [x86] drm/amdgpu: hold reference to fences in amdgpu_sa_bo_new (v2) + - [x86] drm/amdgpu: fix issue with overlapping userptrs + - [x86] drm/amdgpu: use post-decrement in error handling + - [x86] drm/amdgpu: Don't hang in amdgpu_flip_work_func on disabled crtc. + - [x86] drm/amdgpu/pm: adjust display configuration after powerstate + - drm/nouveau/kms: take mode_config mutex in connector hotplug path + - drm/nouveau/display: Enable vblank irqs after display engine is on again. + (regression in 4.4) + - drm/nouveau/disp/dp: ensure sink is powered up before attempting + link training + - drm/nouveau: platform: Fix deferred probe + - drm/radeon: Fix off-by-one errors in radeon_vm_bo_set_addr + - drm/radeon: Fix "slow" audio over DP on DCE8+ + - drm/radeon: clean up fujitsu quirks + - drm/radeon: properly byte swap vce firmware setup + - drm/radeon: cleaned up VCO output settings for DP audio + - drm/radeon: Add a common function for DFS handling + - drm/radeon: fix DP audio support for APU with DCE4.1 display engine + - drm/radeon: mask out WC from BO on unsupported arches + - drm/radeon: hold reference to fences in radeon_sa_bo_new + - drm: fix missing reference counting decrease + - [x86] drm/i915: Restore inhibiting the load of the default context + - [x86] drm/i915: intel_hpd_init(): Fix suspend/resume reprobing + - [x86] drm/i915: Init power domains early in driver load + - [x86] drm/i915: Make sure DC writes are coherent on flush. + - [x86] drm/i915/dp: fall back to 18 bpp when sink capability is unknown + - [x86] drm/i915: Don't reject primary plane windowing with color keying + enabled on SKL+ + - [x86] drm/i915/skl: Don't skip mst encoders in skl_ddi_pll_select() + - [x86] drm/i915/dsi: defend gpio table against out of bounds access + - [x86] drm/i915/dsi: don't pass arbitrary data to sideband + - [x86] drm/i915: fix error path in intel_setup_gmbus() + - drm/qxl: use kmalloc_array to alloc reloc_info in + qxl_process_single_command + - drm/radeon: use post-decrement in error handling + - drm: No-Op redundant calls to drm_vblank_off() (v2) + - drm: Prevent vblank counter bumps > 1 with active vblank clients. (v2) + (regression in 4.4) + - drm: Fix drm_vblank_pre/post_modeset regression from Linux 4.4 + - drm: Fix treatment of drm_vblank_offdelay in drm_vblank_on() (v2) + - drm/radeon: Don't hang in radeon_flip_work_func on disabled crtc. (v2) + - drm/radeon/pm: adjust display configuration after powerstate + - make sure that freeing shmem fast symlinks is RCU-delayed + - [x86] toshiba_acpi: Fix blank screen at boot if transflective backlight is + supported + - [x86] ideapad-laptop: Add Lenovo ideapad Y700-17ISK to no_hw_rfkill + dmi list + - [x86] ideapad-laptop: Add Lenovo Yoga 700 to no_hw_rfkill dmi list + - [x86] ACPI / video: Add disable_backlight_sysfs_if quirk for the Toshiba + Portege R700 + - [x86] ACPI / video: Add disable_backlight_sysfs_if quirk for the Toshiba + Satellite R830 + - [x86] ACPI: Revert "ACPI / video: Add Dell Inspiron 5737 to the blacklist" + - [x86] ACPI / PCI / hotplug: unlock in error path in acpiphp_enable_slot() + - nfit: fix multi-interface dimm handling, acpi6.1 compatibility + - dmaengine: dw: fix cyclic transfer setup + - dmaengine: dw: fix cyclic transfer callbacks + - dmaengine: dw: disable BLOCK IRQs for non-cyclic xfer + - IB/cm: Fix a recently introduced deadlock + - IB/qib: fix mcast detach when qp not attached + - IB/qib: Support creating qps with GFP_NOIO flag + - IB/mlx5: Expose correct maximum number of CQE capacity + - Thermal: initialize thermal zone device correctly + - Thermal: handle thermal zone device properly during system sleep + - Thermal: do thermal zone update after a cooling device registered + - hwmon: (dell-smm) Blacklist Dell Studio XPS 8000 + - hwmon: (gpio-fan) Remove un-necessary speed_index lookup for thermal hook + - hwmon: (ads1015) Handle negative conversion values correctly + - cpufreq: pxa2xx: fix pxa_cpufreq_change_voltage prototype + - cpufreq: Fix NULL reference crash while accessing policy->governor_data + - seccomp: always propagate NO_NEW_PRIVS on tsync + - libceph: fix ceph_msg_revoke() + - libceph: don't bail early from try_read() when skipping a message + - libceph: use the right footer size when skipping a message + - libceph: don't spam dmesg with stray reply warnings + - sd: Optimal I/O size is in bytes, not sectors + - Staging: speakup: Fix getting port information + - cdc-acm:exclude Samsung phone 04e8:685d + - tick/nohz: Set the correct expiry when switching to nohz/lowres mode + - rfkill: fix rfkill_fop_read wait_event usage + - mac80211: Requeue work after scan complete for all VIF types. + - workqueue: handle NUMA_NO_NODE for unbound pool_workqueue lookup + - Revert "workqueue: make sure delayed work run in local cpu" + - ALSA: hda - Apply clock gate workaround to Skylake, too + - ALSA: hda - Fixing background noise on Dell Inspiron 3162 + - target: Fix LUN_RESET active I/O handling for ACK_KREF + - target: Fix LUN_RESET active TMR descriptor handling + - target: Fix TAS handling for multi-session se_node_acls + - target: Fix remote-port TMR ABORT + se_cmd fabric stop + - target: Fix race with SCF_SEND_DELAYED_TAS handling + - qla2xxx: Fix stale pointer access. + - libata: fix sff host state machine locking while polling + - PCI/AER: Flush workqueue on device remove to avoid use-after-free + - cpuset: make mm migration asynchronous + - cgroup: make sure a parent css isn't offlined before its children + - writeback: keep superblock pinned during cgroup writeback + association switches + - phy: core: fix wrong err handle for phy_power_on + - [x86] i2c: i801: Adding Intel Lewisburg support for iTCO + - bio: return EINTR if copying to user space got interrupted + - block: fix use-after-free in dio_bio_complete + - nfs: fix nfs_size_to_loff_t + - NFSv4: Fix a dentry leak on alias use + - KVM: async_pf: do not warn on page allocation failures + - [armhf,arm64] KVM: vgic: Ensure bitmaps are long enough + - [x86] KVM: fix missed hardware breakpoints + - [x86] KVM: fix conversion of addresses to linear in 32-bit protected mode + - [x86] KVM: MMU: fix ubsan index-out-of-range warning + - [powerpc] eeh: Fix partial hotplug criterion + - tracing: Fix showing function event in available_events + - sunrpc/cache: fix off-by-one in qword_get() + - kernel/resource.c: fix muxed resource handling in __request_region() + - do_last(): don't let a bogus return value from ->open() et.al. to + confuse us + - [armhf] OMAP2+: Fix onenand initialization to avoid filesystem corruption + - [armhf] xen: correctly handle DMA mapping of compound pages + - xen/scsiback: correct frontend counting + - xen/pciback: Check PF instead of VF for PCI_COMMAND_MEMORY + - xen/pciback: Save the number of MSI-X entries to be copied later. + - xen/pcifront: Fix mysterious crashes when NUMA locality information + was extracted. + - should_follow_link(): validate ->d_seq after having decided to follow + - do_last(): ELOOP failure exit should be done after leaving RCU mode + - [x86] mpx: Fix off-by-one comparison with nr_registers + - [x86] entry/compat: Add missing CLAC to entry_INT80_32 + - [x86] irq: Call chip->irq_set_affinity in proper context + - [x86] irq: Fix a race in x86_vector_free_irqs() + - [x86] irq: Validate that irq descriptor is still active + - [x86] irq: Do not use apic_chip_data.old_domain as temporary buffer + - [x86] irq: Reorganize the return path in assign_irq_vector + - [x86] irq: Reorganize the search in assign_irq_vector + - [x86] irq: Check vector allocation early + - [x86] irq: Copy vectormask instead of an AND operation + - [x86] irq: Remove offline cpus from vector cleanup + - [x86] irq: Clear move_in_progress before sending cleanup IPI + - [x86] irq: Remove the cpumask allocation from send_cleanup_vector() + - [x86] irq: Remove outgoing CPU from vector cleanup mask + - [x86] irq: Call irq_force_move_complete with irq descriptor + - [x86] irq: Plug vector cleanup race + - IB/cma: Fix RDMA port validation for iWarp + - security: let security modules use PTRACE_MODE_* with bitmasks + - iwlwifi: dvm: fix WoWLAN + - iwlwifi: pcie: properly configure the debug buffer size for 8000 + - iwlwifi: update and fix 7265 series PCI IDs + - iwlwifi: mvm: don't allow sched scans without matches to be started + + [ Roger Shimizu ] + * [armhf] dts: imx6dlq-wandboard-revb1: use unique model id + (Closes: #813881). + * [armel] dts: Add various device-tree fixes and improvements for + Buffalo Linkstation devices. + + [ Ben Hutchings ] + * udeb: Include more modules, including those needed on Firefly-RK3288, + thanks to Vagrant Cascadian (Closes: #815476) + - [armhf] core-modules: Include regulator drivers by default + - mmc-modules: Include MMC controller drivers by default + - mmc-modules: Depends on usb-modules + - usb-modules: Include USB PHY drivers by default + * uas: Fix high-order alloc + * Fix/ignore module ABI changes in 4.4.4 as appropriate + * Revert "drm/radeon: call hpd_irq_event on resume", reported to cause + regressions (crash/hang) on some systems + * [powerpc*] Fix module linking to work with binutils 2.26 (Closes: #808043): + - Simplify module TOC handling + - Fix dedotify for binutils >= 2.26 + + [ Ian Campbell ] + * [armhf] dts: Add DTB for Novena, patches from Vagrant Cascadian + (Closes: #815324) + + [ Uwe Kleine-König ] + * [armhf] enable AXP20X_POWER (Closes: #815971) + * [rt] Update to 4.4.3-rt9 + + -- Ben Hutchings Mon, 07 Mar 2016 19:27:18 +0000 + linux (4.4.2-3) unstable; urgency=medium * [x86] efi-bgrt: Fix kernel panic when mapping BGRT data (Closes: #815125) @@ -423,6 +893,7 @@ linux (4.3.5-1) unstable; urgency=medium * SCSI: fix crashes in sd and sr runtime PM (Closes: #801925) * rt2x00: fix monitor mode regression (regression in 4.2) * pipe: limit the per-user amount of pages allocated in pipes (CVE-2013-4312) + [Original reference is incorrect; should be CVE-2016-2847.] * [powerpc*] Enable CRYPTO_DEV_VMX and enable CRYPTO_DEV_VMX_ENCRYPT as module (Closes: #813640) * debian/copyright: Add licence information for drivers/crypto/vmx/*.pl diff --git a/debian/config/armhf/config.armmp b/debian/config/armhf/config.armmp index 850a45a98..622477d20 100644 --- a/debian/config/armhf/config.armmp +++ b/debian/config/armhf/config.armmp @@ -776,6 +776,7 @@ CONFIG_BATTERY_BQ27XXX=m CONFIG_BATTERY_RX51=m CONFIG_CHARGER_ISP1704=m CONFIG_CHARGER_BQ2415X=m +CONFIG_AXP20X_POWER=m ## ## file: drivers/power/avs/Kconfig diff --git a/debian/installer/armhf/modules/armhf-armmp/core-modules b/debian/installer/armhf/modules/armhf-armmp/core-modules index 7ea5f6dff..ff4ff9f95 100644 --- a/debian/installer/armhf/modules/armhf-armmp/core-modules +++ b/debian/installer/armhf/modules/armhf-armmp/core-modules @@ -14,16 +14,4 @@ phy-omap-control ? phy-ti-pipe3 ? # Regulators -anatop-regulator ? -axp20x-regulator ? -da9052-regulator ? -gpio-regulator ? -mc13783-regulator ? -mc13892-regulator ? -pbias-regulator -pfuze100-regulator ? -s2mpa01 ? -s2mps11 ? -s5m8767 ? -ti-abb-regulator ? -vexpress ? +drivers/regulator/** diff --git a/debian/installer/armhf/modules/armhf-armmp/mmc-modules b/debian/installer/armhf/modules/armhf-armmp/mmc-modules index 287ff3faf..dadfd5334 100644 --- a/debian/installer/armhf/modules/armhf-armmp/mmc-modules +++ b/debian/installer/armhf/modules/armhf-armmp/mmc-modules @@ -1,8 +1 @@ #include -sdhci-esdhc-imx -sdhci-tegra -mmci -omap_hsmmc -sunxi-mmc -dw_mmc-exynos -sdhci-bcm2835 diff --git a/debian/installer/armhf/modules/armhf-armmp/usb-modules b/debian/installer/armhf/modules/armhf-armmp/usb-modules index 663e91543..7861c823c 100644 --- a/debian/installer/armhf/modules/armhf-armmp/usb-modules +++ b/debian/installer/armhf/modules/armhf-armmp/usb-modules @@ -9,17 +9,3 @@ ehci-orion ehci-tegra ci_hdrc_imx dwc2 - -# USB PHYs -phy-am335x ? -phy-am335x-control ? -phy-exynos-usb2 -phy-exynos5-usbdrd ? -phy-generic ? -phy-mxs-usb -phy-omap-usb2 -phy-sun4i-usb -phy-sun9i-usb ? -phy-tegra-usb ? -phy-twl4030-usb ? -phy-twl6030-usb ? diff --git a/debian/installer/modules/mmc-modules b/debian/installer/modules/mmc-modules index ce8b1764f..1375eb69e 100644 --- a/debian/installer/modules/mmc-modules +++ b/debian/installer/modules/mmc-modules @@ -1,9 +1,5 @@ mmc_block -sdhci -sdhci-pci ? -sdhci-acpi ? -ricoh_mmc ? -tifm_sd ? -dw_mmc ? -dw_mmc_pltfm ? -toshsd ? +drivers/mmc/host/** + +# Adds a dependency on pcmcia-modules +sdricoh_cs - diff --git a/debian/installer/modules/usb-modules b/debian/installer/modules/usb-modules index 3198f1039..7e87f8153 100644 --- a/debian/installer/modules/usb-modules +++ b/debian/installer/modules/usb-modules @@ -7,3 +7,7 @@ sl811_cs - sl811-hcd - u132-hcd - whci-hcd - + +# Include USB PHY drivers by default +drivers/phy/phy-*-usb* ? +drivers/usb/phy/* ? diff --git a/debian/installer/package-list b/debian/installer/package-list index 74dfeb162..f51c4436b 100644 --- a/debian/installer/package-list +++ b/debian/installer/package-list @@ -300,7 +300,7 @@ Description: MMC/SD/SDIO core modules This package contains core modules for MMC/SD/SDIO support. Package: mmc-modules -Depends: kernel-image, core-modules, mmc-core-modules +Depends: kernel-image, core-modules, mmc-core-modules, usb-modules Priority: extra Description: MMC/SD card modules This package contains modules needed to support MMC (multimedia) and diff --git a/debian/patches/bugfix/all/revert-drm-radeon-call-hpd_irq_event-on-resume.patch b/debian/patches/bugfix/all/revert-drm-radeon-call-hpd_irq_event-on-resume.patch new file mode 100644 index 000000000..8ad228d9f --- /dev/null +++ b/debian/patches/bugfix/all/revert-drm-radeon-call-hpd_irq_event-on-resume.patch @@ -0,0 +1,22 @@ +From: Ben Hutchings +Date: Mon, 7 Mar 2016 07:55:44 +0000 +Subject: Revert "drm/radeon: call hpd_irq_event on resume" + +This reverts commit dbb17a21c131eca94eb31136eee9a7fe5aff00d9, +reported to cause regressions (crash/hang) on some systems. +--- + drivers/gpu/drm/radeon/radeon_device.c | 1 - + 1 file changed, 1 deletion(-) + +diff --git a/drivers/gpu/drm/radeon/radeon_device.c b/drivers/gpu/drm/radeon/radeon_device.c +index 902b59cebac5..4197ca1bb1e4 100644 +--- a/drivers/gpu/drm/radeon/radeon_device.c ++++ b/drivers/gpu/drm/radeon/radeon_device.c +@@ -1744,7 +1744,6 @@ int radeon_resume_kms(struct drm_device *dev, bool resume, bool fbcon) + } + + drm_kms_helper_poll_enable(dev); +- drm_helper_hpd_irq_event(dev); + + /* set the power state here in case we are a PX system or headless */ + if ((rdev->pm.pm_method == PM_METHOD_DPM) && rdev->pm.dpm_enabled) diff --git a/debian/patches/bugfix/all/uas-fix-high-order-alloc.patch b/debian/patches/bugfix/all/uas-fix-high-order-alloc.patch new file mode 100644 index 000000000..25b4fae4b --- /dev/null +++ b/debian/patches/bugfix/all/uas-fix-high-order-alloc.patch @@ -0,0 +1,29 @@ +From: Hans de Goede +Date: Fri, 04 Mar 2016 07:18:00 +0000 +Subject: uas: Fix high-order alloc +Origin: http://thread.gmane.org/gmane.linux.usb.general/138042/focus=111495 + +Can you try building a kernel with the following line in drivers/usb/storage/uas.c : + + .can_queue = 65536, /* Is there a limit on the _host_ ? */ + +(around line 815) Replaced with + + .can_queue = MAX_CMNDS, + +That should help as MAX_CMNDS is 256, so claiming that we can queue more +is not helpful, and that likely is what is causing this quite high order alloc. + +Reported-and-tested-by: Yves-Alexis Perez +--- +--- a/drivers/usb/storage/uas.c ++++ b/drivers/usb/storage/uas.c +@@ -812,7 +812,7 @@ static struct scsi_host_template uas_hos + .slave_configure = uas_slave_configure, + .eh_abort_handler = uas_eh_abort_handler, + .eh_bus_reset_handler = uas_eh_bus_reset_handler, +- .can_queue = 65536, /* Is there a limit on the _host_ ? */ ++ .can_queue = MAX_CMNDS, /* Is there a limit on the _host_ ? */ + .this_id = -1, + .sg_tablesize = SG_NONE, + .skip_settle_delay = 1, diff --git a/debian/patches/features/arm/device-tree/ARM-dts-imx6dlq-wandboard-revb1.dts-use-unique-model-id.patch b/debian/patches/features/arm/device-tree/ARM-dts-imx6dlq-wandboard-revb1.dts-use-unique-model-id.patch new file mode 100644 index 000000000..63d2c5ee2 --- /dev/null +++ b/debian/patches/features/arm/device-tree/ARM-dts-imx6dlq-wandboard-revb1.dts-use-unique-model-id.patch @@ -0,0 +1,59 @@ +From: Heinrich Schuchardt +Date: Mon, 8 Feb 2016 01:55:08 +0100 +Subject: [PATCH] ARM: dts: imx6dlq-wandboard-revb1.dts: use unique model id +Origin: https://git.kernel.org/cgit/linux/kernel/git/next/linux-next.git/commit/?id=ee10774a9b48e8785f1426e273059c4ba038a27f +Bug-Debian: https://bugs.debian.org/813881 + +Downstream packages like Debian flash-kernel use +/proc/device-tree/model +to determine which dtb file to install. + +Hence each dts in the Linux kernel should provide a unique model +identifier. + +Commit 8536239e371f ("ARM: dts: Restructure imx6qdl-wandboard.dtsi for new +rev C1 board.")' created new files imx6dl-wandboard-revb1.dts and +imx6q-wandboard-revb1.dts but used the same model identifier as in +imx6dl-wandboard.dts and imx6q-wandboard.dts. + +This patch provides unique model identifiers for revision B1 of +the Wandboard Dual and Wandbaord Quad. + +The patch leaves imx6dl-wandboard.dts and imx6q-wandboard.dts unchanged +because it is not foreseeable if the same dts will valid for future +board revisions or not. Furthermore we should avoid unnecessary +changes. + +Signed-off-by: Heinrich Schuchardt +Signed-off-by: Shawn Guo +--- + arch/arm/boot/dts/imx6dl-wandboard-revb1.dts | 2 +- + arch/arm/boot/dts/imx6q-wandboard-revb1.dts | 2 +- + 2 files changed, 2 insertions(+), 2 deletions(-) + +diff --git a/arch/arm/boot/dts/imx6dl-wandboard-revb1.dts b/arch/arm/boot/dts/imx6dl-wandboard-revb1.dts +index f607d4f1d244..8c314eee4fdd 100644 +--- a/arch/arm/boot/dts/imx6dl-wandboard-revb1.dts ++++ b/arch/arm/boot/dts/imx6dl-wandboard-revb1.dts +@@ -13,7 +13,7 @@ + #include "imx6qdl-wandboard-revb1.dtsi" + + / { +- model = "Wandboard i.MX6 Dual Lite Board"; ++ model = "Wandboard i.MX6 Dual Lite Board rev B1"; + compatible = "wand,imx6dl-wandboard", "fsl,imx6dl"; + + memory { +diff --git a/arch/arm/boot/dts/imx6q-wandboard-revb1.dts b/arch/arm/boot/dts/imx6q-wandboard-revb1.dts +index 20bf3c282623..9207d80f9cfb 100644 +--- a/arch/arm/boot/dts/imx6q-wandboard-revb1.dts ++++ b/arch/arm/boot/dts/imx6q-wandboard-revb1.dts +@@ -13,7 +13,7 @@ + #include "imx6qdl-wandboard-revb1.dtsi" + + / { +- model = "Wandboard i.MX6 Quad Board"; ++ model = "Wandboard i.MX6 Quad Board rev B1"; + compatible = "wand,imx6q-wandboard", "fsl,imx6q"; + + memory { diff --git a/debian/patches/features/arm/device-tree/ARM-dts-kirkwood-add-for-buffalo-linkstation-ls-qvl.patch b/debian/patches/features/arm/device-tree/ARM-dts-kirkwood-add-for-buffalo-linkstation-ls-qvl.patch new file mode 100644 index 000000000..c6b44d05b --- /dev/null +++ b/debian/patches/features/arm/device-tree/ARM-dts-kirkwood-add-for-buffalo-linkstation-ls-qvl.patch @@ -0,0 +1,187 @@ +From: Mario Lange +Date: Tue, 26 Jan 2016 01:44:10 +0900 +Subject: ARM: dts: kirkwood: add device tree for buffalo linkstation ls-qvl +Origin: https://git.kernel.org/cgit/linux/kernel/git/next/linux-next.git/commit/?id=5dda254d0cc5cbdcc81dbce0985c35b68dd5e3b1 + +Add dts file to support Buffalo Linkstation LS-QVL, +which is marvell kirkwood based 4-bay 3.5" HDD NAS. +Product info: + - (JPN) http://buffalo.jp/product/hdd/network/ls-qvl_r5/ + - (ENG) http://www.buffalotech.com/products/network-storage/home-and-small-office/linkstation-pro-quad + +Signed-off-by: Mario Lange +Signed-off-by: Roger Shimizu +Reviewed-by: Andrew Lunn +Signed-off-by: Gregory CLEMENT +--- + .../devicetree/bindings/arm/marvell,kirkwood.txt | 1 + + arch/arm/boot/dts/Makefile | 1 + + arch/arm/boot/dts/kirkwood-linkstation-lsqvl.dts | 135 +++++++++++++++++++++ + 3 files changed, 137 insertions(+) + create mode 100644 arch/arm/boot/dts/kirkwood-linkstation-lsqvl.dts + +diff --git a/Documentation/devicetree/bindings/arm/marvell,kirkwood.txt b/Documentation/devicetree/bindings/arm/marvell,kirkwood.txt +index 0fc6faa4cddb..7d28fe4bf654 100644 +--- a/Documentation/devicetree/bindings/arm/marvell,kirkwood.txt ++++ b/Documentation/devicetree/bindings/arm/marvell,kirkwood.txt +@@ -19,6 +19,7 @@ SoC. Currently known SoC compatibles are: + And in addition, the compatible shall be extended with the specific + board. Currently known boards are: + ++"buffalo,linkstation-lsqvl" + "buffalo,linkstation-lsvl" + "buffalo,linkstation-lswsxl" + "buffalo,linkstation-lswxl" +diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile +index 91833f905aef..30d316dc050f 100644 +--- a/arch/arm/boot/dts/Makefile ++++ b/arch/arm/boot/dts/Makefile +@@ -189,6 +189,7 @@ dtb-$(CONFIG_MACH_KIRKWOOD) += \ + kirkwood-is2.dtb \ + kirkwood-km_kirkwood.dtb \ + kirkwood-laplug.dtb \ ++ kirkwood-linkstation-lsqvl.dtb \ + kirkwood-linkstation-lsvl.dtb \ + kirkwood-linkstation-lswsxl.dtb \ + kirkwood-linkstation-lswvl.dtb \ +diff --git a/arch/arm/boot/dts/kirkwood-linkstation-lsqvl.dts b/arch/arm/boot/dts/kirkwood-linkstation-lsqvl.dts +new file mode 100644 +index 000000000000..6dc0df2969f0 +--- /dev/null ++++ b/arch/arm/boot/dts/kirkwood-linkstation-lsqvl.dts +@@ -0,0 +1,135 @@ ++/* ++ * Device Tree file for Buffalo Linkstation LS-QVL ++ * ++ * Copyright (C) 2016, Mario Lange ++ * ++ * Based on kirkwood-linkstation-lswvl.dts, ++ * Copyright (C) 2015, 2016 ++ * Roger Shimizu ++ * ++ * This file is dual-licensed: you can use it either under the terms ++ * of the GPL or the X11 license, at your option. Note that this dual ++ * licensing only applies to this file, and not this project as a ++ * whole. ++ * ++ * a) This file is free software; you can redistribute it and/or ++ * modify it under the terms of the GNU General Public License as ++ * published by the Free Software Foundation; either version 2 of the ++ * License, or (at your option) any later version. ++ * ++ * This file is distributed in the hope that it will be useful ++ * but WITHOUT ANY WARRANTY; without even the implied warranty of ++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++ * GNU General Public License for more details. ++ * ++ * Or, alternatively ++ * ++ * b) Permission is hereby granted, free of charge, to any person ++ * obtaining a copy of this software and associated documentation ++ * files (the "Software"), to deal in the Software without ++ * restriction, including without limitation the rights to use ++ * copy, modify, merge, publish, distribute, sublicense, and/or ++ * sell copies of the Software, and to permit persons to whom the ++ * Software is furnished to do so, subject to the following ++ * conditions: ++ * ++ * The above copyright notice and this permission notice shall be ++ * included in all copies or substantial portions of the Software. ++ * ++ * THE SOFTWARE IS PROVIDED , WITHOUT WARRANTY OF ANY KIND ++ * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES ++ * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND ++ * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT ++ * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY ++ * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING ++ * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR ++ * OTHER DEALINGS IN THE SOFTWARE. ++ */ ++ ++/dts-v1/; ++#include "kirkwood-linkstation-6282.dtsi" ++ ++/ { ++ model = "Buffalo Linkstation LS-QVL"; ++ compatible = "buffalo,lsqvl", "marvell,kirkwood-88f6282", "marvell,kirkwood"; ++ ++ memory { /* 256 MB */ ++ device_type = "memory"; ++ reg = <0x00000000 0x10000000>; ++ }; ++ ++ ocp@f1000000 { ++ pinctrl: pin-controller@10000 { ++ pmx_power_hdd1: pmx-power-hdd1 { ++ marvell,pins = "mpp9"; ++ marvell,function = "gpio"; ++ }; ++ pmx_led_hdderr0: pmx-led-hdderr0 { ++ marvell,pins = "mpp34"; ++ marvell,function = "gpio"; ++ }; ++ pmx_led_hdderr1: pmx-led-hdderr1 { ++ marvell,pins = "mpp35"; ++ marvell,function = "gpio"; ++ }; ++ pmx_led_hdderr2: pmx-led-hdderr2 { ++ marvell,pins = "mpp24"; ++ marvell,function = "gpio"; ++ }; ++ pmx_led_hdderr3: pmx-led-hdderr3 { ++ marvell,pins = "mpp25"; ++ marvell,function = "gpio"; ++ }; ++ }; ++ ++ sata@80000 { ++ nr-ports = <2>; ++ }; ++ }; ++ ++ gpio_leds { ++ pinctrl-0 = <&pmx_led_function_red &pmx_led_alarm ++ &pmx_led_info &pmx_led_power ++ &pmx_led_function_blue ++ &pmx_led_hdderr0 ++ &pmx_led_hdderr1 ++ &pmx_led_hdderr2 ++ &pmx_led_hdderr3>; ++ ++ red-hdderr0-led { ++ label = "linkstation:red:hdderr0"; ++ gpios = <&gpio1 2 GPIO_ACTIVE_LOW>; ++ }; ++ ++ red-hdderr1-led { ++ label = "linkstation:red:hdderr1"; ++ gpios = <&gpio1 3 GPIO_ACTIVE_LOW>; ++ }; ++ ++ red-hdderr2-led { ++ label = "linkstation:red:hdderr2"; ++ gpios = <&gpio0 24 GPIO_ACTIVE_LOW>; ++ }; ++ ++ red-hdderr3-led { ++ label = "linkstation:red:hdderr3"; ++ gpios = <&gpio0 25 GPIO_ACTIVE_LOW>; ++ }; ++ }; ++ ++ regulators { ++ pinctrl-0 = <&pmx_power_hdd0 &pmx_power_hdd1 &pmx_usb_vbus>; ++ ++ hdd_power1: regulator@3 { ++ compatible = "regulator-fixed"; ++ reg = <3>; ++ regulator-name = "HDD1 Power"; ++ regulator-min-microvolt = <5000000>; ++ regulator-max-microvolt = <5000000>; ++ enable-active-high; ++ regulator-always-on; ++ regulator-boot-on; ++ gpio = <&gpio0 9 GPIO_ACTIVE_HIGH>; ++ }; ++ }; ++}; diff --git a/debian/patches/features/arm/device-tree/ARM-dts-kirkwood-relicense-dts-of-ls-wvl-vl-and-ls-wxl-ws.patch b/debian/patches/features/arm/device-tree/ARM-dts-kirkwood-relicense-dts-of-ls-wvl-vl-and-ls-wxl-ws.patch new file mode 100644 index 000000000..fdfdd63ee --- /dev/null +++ b/debian/patches/features/arm/device-tree/ARM-dts-kirkwood-relicense-dts-of-ls-wvl-vl-and-ls-wxl-ws.patch @@ -0,0 +1,117 @@ +From: Roger Shimizu +Date: Thu, 21 Jan 2016 23:38:48 +0900 +Subject: ARM: dts: kirkwood: relicense dts of ls-wvl/vl and ls-wxl/wsxl under GPLv2/X11 +Origin: https://git.kernel.org/cgit/linux/kernel/git/next/linux-next.git/commit/?id=3e2f2db885fb0cb16ae8949d4d2283f1ac272329 + +Signed-off-by: Roger Shimizu +Reviewed-by: Andrew Lunn +Signed-off-by: Gregory CLEMENT +--- + arch/arm/boot/dts/kirkwood-lswvl.dts | 41 ++++++++++++++++++++++++++++++++---- + arch/arm/boot/dts/kirkwood-lswxl.dts | 41 ++++++++++++++++++++++++++++++++---- + 2 files changed, 74 insertions(+), 8 deletions(-) + +diff --git a/arch/arm/boot/dts/kirkwood-lswvl.dts b/arch/arm/boot/dts/kirkwood-lswvl.dts +index 36eec7392ab4..04bdc4f19a9f 100644 +--- a/arch/arm/boot/dts/kirkwood-lswvl.dts ++++ b/arch/arm/boot/dts/kirkwood-lswvl.dts +@@ -4,10 +4,43 @@ + * Copyright (C) 2015, 2016 + * Roger Shimizu + * +- * This program is free software; you can redistribute it and/or +- * modify it under the terms of the GNU General Public License +- * as published by the Free Software Foundation; either version +- * 2 of the License, or (at your option) any later version. ++ * This file is dual-licensed: you can use it either under the terms ++ * of the GPL or the X11 license, at your option. Note that this dual ++ * licensing only applies to this file, and not this project as a ++ * whole. ++ * ++ * a) This file is free software; you can redistribute it and/or ++ * modify it under the terms of the GNU General Public License as ++ * published by the Free Software Foundation; either version 2 of the ++ * License, or (at your option) any later version. ++ * ++ * This file is distributed in the hope that it will be useful ++ * but WITHOUT ANY WARRANTY; without even the implied warranty of ++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++ * GNU General Public License for more details. ++ * ++ * Or, alternatively ++ * ++ * b) Permission is hereby granted, free of charge, to any person ++ * obtaining a copy of this software and associated documentation ++ * files (the "Software"), to deal in the Software without ++ * restriction, including without limitation the rights to use ++ * copy, modify, merge, publish, distribute, sublicense, and/or ++ * sell copies of the Software, and to permit persons to whom the ++ * Software is furnished to do so, subject to the following ++ * conditions: ++ * ++ * The above copyright notice and this permission notice shall be ++ * included in all copies or substantial portions of the Software. ++ * ++ * THE SOFTWARE IS PROVIDED , WITHOUT WARRANTY OF ANY KIND ++ * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES ++ * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND ++ * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT ++ * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY ++ * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING ++ * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR ++ * OTHER DEALINGS IN THE SOFTWARE. + */ + + /dts-v1/; +diff --git a/arch/arm/boot/dts/kirkwood-lswxl.dts b/arch/arm/boot/dts/kirkwood-lswxl.dts +index b13ec20a7088..930899d13c5d 100644 +--- a/arch/arm/boot/dts/kirkwood-lswxl.dts ++++ b/arch/arm/boot/dts/kirkwood-lswxl.dts +@@ -4,10 +4,43 @@ + * Copyright (C) 2015, 2016 + * Roger Shimizu + * +- * This program is free software; you can redistribute it and/or +- * modify it under the terms of the GNU General Public License +- * as published by the Free Software Foundation; either version +- * 2 of the License, or (at your option) any later version. ++ * This file is dual-licensed: you can use it either under the terms ++ * of the GPL or the X11 license, at your option. Note that this dual ++ * licensing only applies to this file, and not this project as a ++ * whole. ++ * ++ * a) This file is free software; you can redistribute it and/or ++ * modify it under the terms of the GNU General Public License as ++ * published by the Free Software Foundation; either version 2 of the ++ * License, or (at your option) any later version. ++ * ++ * This file is distributed in the hope that it will be useful ++ * but WITHOUT ANY WARRANTY; without even the implied warranty of ++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++ * GNU General Public License for more details. ++ * ++ * Or, alternatively ++ * ++ * b) Permission is hereby granted, free of charge, to any person ++ * obtaining a copy of this software and associated documentation ++ * files (the "Software"), to deal in the Software without ++ * restriction, including without limitation the rights to use ++ * copy, modify, merge, publish, distribute, sublicense, and/or ++ * sell copies of the Software, and to permit persons to whom the ++ * Software is furnished to do so, subject to the following ++ * conditions: ++ * ++ * The above copyright notice and this permission notice shall be ++ * included in all copies or substantial portions of the Software. ++ * ++ * THE SOFTWARE IS PROVIDED , WITHOUT WARRANTY OF ANY KIND ++ * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES ++ * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND ++ * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT ++ * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY ++ * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING ++ * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR ++ * OTHER DEALINGS IN THE SOFTWARE. + */ + + /dts-v1/; diff --git a/debian/patches/features/arm/device-tree/ARM-dts-kirkwood-split-lswvl-dts-to-linkstation-lsvl-and-.patch b/debian/patches/features/arm/device-tree/ARM-dts-kirkwood-split-lswvl-dts-to-linkstation-lsvl-and-.patch new file mode 100644 index 000000000..c7f01bf7a --- /dev/null +++ b/debian/patches/features/arm/device-tree/ARM-dts-kirkwood-split-lswvl-dts-to-linkstation-lsvl-and-.patch @@ -0,0 +1,771 @@ +From: Roger Shimizu +Date: Thu, 21 Jan 2016 23:38:50 +0900 +Subject: ARM: dts: kirkwood: split lswvl dts to linkstation lsvl and lswvl +Origin: https://git.kernel.org/cgit/linux/kernel/git/next/linux-next.git/commit/?id=60ff189ca05dedac97af8d9e51c285a44bc9e5a5 + +LS-WVL/VL are both kirkwood-6282 based NAS devices, which share +many MPP pins. However they are slightly different: + - LS-WVL is 2-Bay NAS, and LS-VL is only 1-Bay. + - There're two red LED indicator on LS-WVL to show when HDD fails, + which is similar to LS-WXL, but there's no such on LS-VL. + +So after the split, common part goes into .dtsi file: + - kirkwood-linkstation-6282.dtsi +while all rest part goes into device specific .dts file: + - kirkwood-linkstation-lsvl.dts + - kirkwood-linkstation-lswvl.dts + +Signed-off-by: Roger Shimizu +Reviewed-by: Andrew Lunn +Signed-off-by: Gregory CLEMENT +--- + .../devicetree/bindings/arm/marvell,kirkwood.txt | 3 +- + arch/arm/boot/dts/Makefile | 3 +- + arch/arm/boot/dts/kirkwood-linkstation-6282.dtsi | 192 ++++++++++++ + arch/arm/boot/dts/kirkwood-linkstation-lsvl.dts | 57 ++++ + arch/arm/boot/dts/kirkwood-linkstation-lswvl.dts | 112 +++++++ + arch/arm/boot/dts/kirkwood-lswvl.dts | 335 --------------------- + 6 files changed, 365 insertions(+), 337 deletions(-) + create mode 100644 arch/arm/boot/dts/kirkwood-linkstation-6282.dtsi + create mode 100644 arch/arm/boot/dts/kirkwood-linkstation-lsvl.dts + create mode 100644 arch/arm/boot/dts/kirkwood-linkstation-lswvl.dts + delete mode 100644 arch/arm/boot/dts/kirkwood-lswvl.dts + +--- a/Documentation/devicetree/bindings/arm/marvell,kirkwood.txt ++++ b/Documentation/devicetree/bindings/arm/marvell,kirkwood.txt +@@ -19,10 +19,11 @@ SoC. Currently known SoC compatibles are + And in addition, the compatible shall be extended with the specific + board. Currently known boards are: + ++"buffalo,linkstation-lsvl" + "buffalo,linkstation-lswsxl" + "buffalo,linkstation-lswxl" ++"buffalo,linkstation-lswvl" + "buffalo,lschlv2" +-"buffalo,lswvl" + "buffalo,lsxhl" + "buffalo,lsxl" + "cloudengines,pogo02" +--- a/arch/arm/boot/dts/Makefile ++++ b/arch/arm/boot/dts/Makefile +@@ -189,10 +189,11 @@ dtb-$(CONFIG_MACH_KIRKWOOD) += \ + kirkwood-is2.dtb \ + kirkwood-km_kirkwood.dtb \ + kirkwood-laplug.dtb \ ++ kirkwood-linkstation-lsvl.dtb \ + kirkwood-linkstation-lswsxl.dtb \ ++ kirkwood-linkstation-lswvl.dtb \ + kirkwood-linkstation-lswxl.dtb \ + kirkwood-lschlv2.dtb \ +- kirkwood-lswvl.dtb \ + kirkwood-lsxhl.dtb \ + kirkwood-mplcec4.dtb \ + kirkwood-mv88f6281gtw-ge.dtb \ +--- /dev/null ++++ b/arch/arm/boot/dts/kirkwood-linkstation-6282.dtsi +@@ -0,0 +1,192 @@ ++/* ++ * Device Tree common file for kirkwood-6282 based Buffalo Linkstation ++ * ++ * Copyright (C) 2015, 2016 ++ * Roger Shimizu ++ * ++ * This file is dual-licensed: you can use it either under the terms ++ * of the GPL or the X11 license, at your option. Note that this dual ++ * licensing only applies to this file, and not this project as a ++ * whole. ++ * ++ * a) This file is free software; you can redistribute it and/or ++ * modify it under the terms of the GNU General Public License as ++ * published by the Free Software Foundation; either version 2 of the ++ * License, or (at your option) any later version. ++ * ++ * This file is distributed in the hope that it will be useful ++ * but WITHOUT ANY WARRANTY; without even the implied warranty of ++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++ * GNU General Public License for more details. ++ * ++ * Or, alternatively ++ * ++ * b) Permission is hereby granted, free of charge, to any person ++ * obtaining a copy of this software and associated documentation ++ * files (the "Software"), to deal in the Software without ++ * restriction, including without limitation the rights to use ++ * copy, modify, merge, publish, distribute, sublicense, and/or ++ * sell copies of the Software, and to permit persons to whom the ++ * Software is furnished to do so, subject to the following ++ * conditions: ++ * ++ * The above copyright notice and this permission notice shall be ++ * included in all copies or substantial portions of the Software. ++ * ++ * THE SOFTWARE IS PROVIDED , WITHOUT WARRANTY OF ANY KIND ++ * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES ++ * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND ++ * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT ++ * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY ++ * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING ++ * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR ++ * OTHER DEALINGS IN THE SOFTWARE. ++ */ ++ ++#include "kirkwood.dtsi" ++#include "kirkwood-6282.dtsi" ++#include "kirkwood-linkstation.dtsi" ++ ++/ { ++ ocp@f1000000 { ++ pinctrl: pin-controller@10000 { ++ pmx_power_hdd0: pmx-power-hdd0 { ++ marvell,pins = "mpp8"; ++ marvell,function = "gpio"; ++ }; ++ pmx_usb_vbus: pmx-usb-vbus { ++ marvell,pins = "mpp12"; ++ marvell,function = "gpio"; ++ }; ++ pmx_fan_high: pmx-fan-high { ++ marvell,pins = "mpp16"; ++ marvell,function = "gpio"; ++ }; ++ pmx_fan_low: pmx-fan-low { ++ marvell,pins = "mpp17"; ++ marvell,function = "gpio"; ++ }; ++ pmx_led_alarm: pmx-led-alarm { ++ marvell,pins = "mpp36"; ++ marvell,function = "gpio"; ++ }; ++ pmx_led_function_red: pmx-led-function-red { ++ marvell,pins = "mpp37"; ++ marvell,function = "gpio"; ++ }; ++ pmx_led_info: pmx-led-info { ++ marvell,pins = "mpp38"; ++ marvell,function = "gpio"; ++ }; ++ pmx_led_function_blue: pmx-led-function-blue { ++ marvell,pins = "mpp39"; ++ marvell,function = "gpio"; ++ }; ++ pmx_led_power: pmx-led-power { ++ marvell,pins = "mpp40"; ++ marvell,function = "gpio"; ++ }; ++ pmx_fan_lock: pmx-fan-lock { ++ marvell,pins = "mpp43"; ++ marvell,function = "gpio"; ++ }; ++ pmx_button_function: pmx-button-function { ++ marvell,pins = "mpp45"; ++ marvell,function = "gpio"; ++ }; ++ pmx_power_switch: pmx-power-switch { ++ marvell,pins = "mpp46"; ++ marvell,function = "gpio"; ++ }; ++ pmx_power_auto_switch: pmx-power-auto-switch { ++ marvell,pins = "mpp47"; ++ marvell,function = "gpio"; ++ }; ++ }; ++ }; ++ ++ gpio_keys { ++ function-button { ++ gpios = <&gpio1 13 GPIO_ACTIVE_LOW>; ++ }; ++ ++ power-on-switch { ++ gpios = <&gpio1 14 GPIO_ACTIVE_LOW>; ++ }; ++ ++ power-auto-switch { ++ gpios = <&gpio1 15 GPIO_ACTIVE_LOW>; ++ }; ++ }; ++ ++ gpio_leds { ++ red-alarm-led { ++ label = "linkstation:red:alarm"; ++ gpios = <&gpio1 4 GPIO_ACTIVE_HIGH>; ++ }; ++ ++ red-function-led { ++ label = "linkstation:red:function"; ++ gpios = <&gpio1 5 GPIO_ACTIVE_HIGH>; ++ }; ++ ++ amber-info-led { ++ label = "linkstation:amber:info"; ++ gpios = <&gpio1 6 GPIO_ACTIVE_HIGH>; ++ }; ++ ++ blue-function-led { ++ label = "linkstation:blue:function"; ++ gpios = <&gpio1 7 GPIO_ACTIVE_HIGH>; ++ }; ++ ++ blue-power-led { ++ label = "linkstation:blue:power"; ++ gpios = <&gpio1 8 GPIO_ACTIVE_LOW>; ++ default-state = "keep"; ++ }; ++ }; ++ ++ gpio_fan { ++ compatible = "gpio-fan"; ++ pinctrl-0 = <&pmx_fan_low &pmx_fan_high &pmx_fan_lock>; ++ pinctrl-names = "default"; ++ ++ gpios = <&gpio0 17 GPIO_ACTIVE_LOW ++ &gpio0 16 GPIO_ACTIVE_LOW>; ++ ++ gpio-fan,speed-map = <0 3 ++ 1500 2 ++ 3250 1 ++ 5000 0>; ++ ++ alarm-gpios = <&gpio1 11 GPIO_ACTIVE_HIGH>; ++ }; ++ ++ regulators { ++ usb_power: regulator@1 { ++ gpio = <&gpio0 12 GPIO_ACTIVE_HIGH>; ++ }; ++ ++ hdd_power0: regulator@2 { ++ gpio = <&gpio0 8 GPIO_ACTIVE_HIGH>; ++ }; ++ }; ++}; ++ ++&mdio { ++ status = "okay"; ++ ++ ethphy0: ethernet-phy@0 { ++ device_type = "ethernet-phy"; ++ reg = <0>; ++ }; ++}; ++ ++ð0 { ++ status = "okay"; ++ ++ ethernet0-port@0 { ++ phy-handle = <ðphy0>; ++ }; ++}; +--- /dev/null ++++ b/arch/arm/boot/dts/kirkwood-linkstation-lsvl.dts +@@ -0,0 +1,57 @@ ++/* ++ * Device Tree file for Buffalo Linkstation LS-VL ++ * ++ * Copyright (C) 2015, 2016 ++ * Roger Shimizu ++ * ++ * This file is dual-licensed: you can use it either under the terms ++ * of the GPL or the X11 license, at your option. Note that this dual ++ * licensing only applies to this file, and not this project as a ++ * whole. ++ * ++ * a) This file is free software; you can redistribute it and/or ++ * modify it under the terms of the GNU General Public License as ++ * published by the Free Software Foundation; either version 2 of the ++ * License, or (at your option) any later version. ++ * ++ * This file is distributed in the hope that it will be useful ++ * but WITHOUT ANY WARRANTY; without even the implied warranty of ++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++ * GNU General Public License for more details. ++ * ++ * Or, alternatively ++ * ++ * b) Permission is hereby granted, free of charge, to any person ++ * obtaining a copy of this software and associated documentation ++ * files (the "Software"), to deal in the Software without ++ * restriction, including without limitation the rights to use ++ * copy, modify, merge, publish, distribute, sublicense, and/or ++ * sell copies of the Software, and to permit persons to whom the ++ * Software is furnished to do so, subject to the following ++ * conditions: ++ * ++ * The above copyright notice and this permission notice shall be ++ * included in all copies or substantial portions of the Software. ++ * ++ * THE SOFTWARE IS PROVIDED , WITHOUT WARRANTY OF ANY KIND ++ * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES ++ * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND ++ * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT ++ * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY ++ * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING ++ * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR ++ * OTHER DEALINGS IN THE SOFTWARE. ++ */ ++ ++/dts-v1/; ++#include "kirkwood-linkstation-6282.dtsi" ++ ++/ { ++ model = "Buffalo Linkstation LS-VL"; ++ compatible = "buffalo,lsvl", "marvell,kirkwood-88f6282", "marvell,kirkwood"; ++ ++ memory { /* 256 MB */ ++ device_type = "memory"; ++ reg = <0x00000000 0x10000000>; ++ }; ++}; +--- /dev/null ++++ b/arch/arm/boot/dts/kirkwood-linkstation-lswvl.dts +@@ -0,0 +1,112 @@ ++/* ++ * Device Tree file for Buffalo Linkstation LS-WVL ++ * ++ * Copyright (C) 2015, 2016 ++ * Roger Shimizu ++ * ++ * This file is dual-licensed: you can use it either under the terms ++ * of the GPL or the X11 license, at your option. Note that this dual ++ * licensing only applies to this file, and not this project as a ++ * whole. ++ * ++ * a) This file is free software; you can redistribute it and/or ++ * modify it under the terms of the GNU General Public License as ++ * published by the Free Software Foundation; either version 2 of the ++ * License, or (at your option) any later version. ++ * ++ * This file is distributed in the hope that it will be useful ++ * but WITHOUT ANY WARRANTY; without even the implied warranty of ++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++ * GNU General Public License for more details. ++ * ++ * Or, alternatively ++ * ++ * b) Permission is hereby granted, free of charge, to any person ++ * obtaining a copy of this software and associated documentation ++ * files (the "Software"), to deal in the Software without ++ * restriction, including without limitation the rights to use ++ * copy, modify, merge, publish, distribute, sublicense, and/or ++ * sell copies of the Software, and to permit persons to whom the ++ * Software is furnished to do so, subject to the following ++ * conditions: ++ * ++ * The above copyright notice and this permission notice shall be ++ * included in all copies or substantial portions of the Software. ++ * ++ * THE SOFTWARE IS PROVIDED , WITHOUT WARRANTY OF ANY KIND ++ * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES ++ * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND ++ * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT ++ * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY ++ * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING ++ * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR ++ * OTHER DEALINGS IN THE SOFTWARE. ++ */ ++ ++/dts-v1/; ++#include "kirkwood-linkstation-6282.dtsi" ++ ++/ { ++ model = "Buffalo Linkstation LS-WVL"; ++ compatible = "buffalo,lswvl","marvell,kirkwood-88f6282", "marvell,kirkwood"; ++ ++ memory { /* 256 MB */ ++ device_type = "memory"; ++ reg = <0x00000000 0x10000000>; ++ }; ++ ++ ocp@f1000000 { ++ pinctrl: pin-controller@10000 { ++ pmx_power_hdd1: pmx-power-hdd1 { ++ marvell,pins = "mpp9"; ++ marvell,function = "gpio"; ++ }; ++ pmx_led_hdderr0: pmx-led-hdderr0 { ++ marvell,pins = "mpp34"; ++ marvell,function = "gpio"; ++ }; ++ pmx_led_hdderr1: pmx-led-hdderr1 { ++ marvell,pins = "mpp35"; ++ marvell,function = "gpio"; ++ }; ++ }; ++ ++ sata@80000 { ++ nr-ports = <2>; ++ }; ++ }; ++ ++ gpio_leds { ++ pinctrl-0 = <&pmx_led_function_red &pmx_led_alarm ++ &pmx_led_info &pmx_led_power ++ &pmx_led_function_blue ++ &pmx_led_hdderr0 ++ &pmx_led_hdderr1>; ++ ++ red-hdderr0-led { ++ label = "linkstation:red:hdderr0"; ++ gpios = <&gpio1 2 GPIO_ACTIVE_HIGH>; ++ }; ++ ++ red-hdderr1-led { ++ label = "linkstation:red:hdderr1"; ++ gpios = <&gpio1 3 GPIO_ACTIVE_HIGH>; ++ }; ++ }; ++ ++ regulators { ++ pinctrl-0 = <&pmx_power_hdd0 &pmx_power_hdd1 &pmx_usb_vbus>; ++ ++ hdd_power1: regulator@3 { ++ compatible = "regulator-fixed"; ++ reg = <3>; ++ regulator-name = "HDD1 Power"; ++ regulator-min-microvolt = <5000000>; ++ regulator-max-microvolt = <5000000>; ++ enable-active-high; ++ regulator-always-on; ++ regulator-boot-on; ++ gpio = <&gpio0 9 GPIO_ACTIVE_HIGH>; ++ }; ++ }; ++}; +--- a/arch/arm/boot/dts/kirkwood-lswvl.dts ++++ /dev/null +@@ -1,335 +0,0 @@ +-/* +- * Device Tree file for Buffalo Linkstation LS-WVL/VL +- * +- * Copyright (C) 2015, 2016 +- * Roger Shimizu +- * +- * This file is dual-licensed: you can use it either under the terms +- * of the GPL or the X11 license, at your option. Note that this dual +- * licensing only applies to this file, and not this project as a +- * whole. +- * +- * a) This file is free software; you can redistribute it and/or +- * modify it under the terms of the GNU General Public License as +- * published by the Free Software Foundation; either version 2 of the +- * License, or (at your option) any later version. +- * +- * This file is distributed in the hope that it will be useful +- * but WITHOUT ANY WARRANTY; without even the implied warranty of +- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +- * GNU General Public License for more details. +- * +- * Or, alternatively +- * +- * b) Permission is hereby granted, free of charge, to any person +- * obtaining a copy of this software and associated documentation +- * files (the "Software"), to deal in the Software without +- * restriction, including without limitation the rights to use +- * copy, modify, merge, publish, distribute, sublicense, and/or +- * sell copies of the Software, and to permit persons to whom the +- * Software is furnished to do so, subject to the following +- * conditions: +- * +- * The above copyright notice and this permission notice shall be +- * included in all copies or substantial portions of the Software. +- * +- * THE SOFTWARE IS PROVIDED , WITHOUT WARRANTY OF ANY KIND +- * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES +- * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +- * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT +- * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY +- * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING +- * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR +- * OTHER DEALINGS IN THE SOFTWARE. +- */ +- +-/dts-v1/; +- +-#include "kirkwood.dtsi" +-#include "kirkwood-6282.dtsi" +- +-/ { +- model = "Buffalo Linkstation LS-WVL/VL"; +- compatible = "buffalo,lswvl", "buffalo,lsvl", "marvell,kirkwood-88f6282", "marvell,kirkwood"; +- +- memory { /* 256 MB */ +- device_type = "memory"; +- reg = <0x00000000 0x10000000>; +- }; +- +- chosen { +- bootargs = "console=ttyS0,115200n8 earlyprintk"; +- stdout-path = &uart0; +- }; +- +- mbus { +- pcie-controller { +- status = "okay"; +- pcie@1,0 { +- status = "okay"; +- }; +- }; +- }; +- +- ocp@f1000000 { +- pinctrl: pin-controller@10000 { +- pmx_power_hdd0: pmx-power-hdd0 { +- marvell,pins = "mpp8"; +- marvell,function = "gpio"; +- }; +- pmx_power_hdd1: pmx-power-hdd1 { +- marvell,pins = "mpp9"; +- marvell,function = "gpio"; +- }; +- pmx_usb_vbus: pmx-usb-vbus { +- marvell,pins = "mpp12"; +- marvell,function = "gpio"; +- }; +- pmx_fan_high: pmx-fan-high { +- marvell,pins = "mpp16"; +- marvell,function = "gpio"; +- }; +- pmx_fan_low: pmx-fan-low { +- marvell,pins = "mpp17"; +- marvell,function = "gpio"; +- }; +- pmx_led_hdderr0: pmx-led-hdderr0 { +- marvell,pins = "mpp34"; +- marvell,function = "gpio"; +- }; +- pmx_led_hdderr1: pmx-led-hdderr1 { +- marvell,pins = "mpp35"; +- marvell,function = "gpio"; +- }; +- pmx_led_alarm: pmx-led-alarm { +- marvell,pins = "mpp36"; +- marvell,function = "gpio"; +- }; +- pmx_led_function_red: pmx-led-function-red { +- marvell,pins = "mpp37"; +- marvell,function = "gpio"; +- }; +- pmx_led_info: pmx-led-info { +- marvell,pins = "mpp38"; +- marvell,function = "gpio"; +- }; +- pmx_led_function_blue: pmx-led-function-blue { +- marvell,pins = "mpp39"; +- marvell,function = "gpio"; +- }; +- pmx_led_power: pmx-led-power { +- marvell,pins = "mpp40"; +- marvell,function = "gpio"; +- }; +- pmx_fan_lock: pmx-fan-lock { +- marvell,pins = "mpp43"; +- marvell,function = "gpio"; +- }; +- pmx_button_function: pmx-button-function { +- marvell,pins = "mpp45"; +- marvell,function = "gpio"; +- }; +- pmx_power_switch: pmx-power-switch { +- marvell,pins = "mpp46"; +- marvell,function = "gpio"; +- }; +- pmx_power_auto_switch: pmx-power-auto-switch { +- marvell,pins = "mpp47"; +- marvell,function = "gpio"; +- }; +- }; +- +- serial@12000 { +- status = "okay"; +- }; +- +- sata@80000 { +- status = "okay"; +- nr-ports = <2>; +- }; +- +- spi@10600 { +- status = "okay"; +- +- m25p40@0 { +- #address-cells = <1>; +- #size-cells = <1>; +- compatible = "st,m25p40", "jedec,spi-nor"; +- reg = <0>; +- spi-max-frequency = <25000000>; +- mode = <0>; +- +- partition@0 { +- reg = <0x0 0x60000>; +- label = "uboot"; +- read-only; +- }; +- +- partition@60000 { +- reg = <0x60000 0x10000>; +- label = "dtb"; +- read-only; +- }; +- +- partition@70000 { +- reg = <0x70000 0x10000>; +- label = "uboot_env"; +- }; +- }; +- }; +- }; +- +- gpio_keys { +- compatible = "gpio-keys"; +- #address-cells = <1>; +- #size-cells = <0>; +- pinctrl-0 = <&pmx_button_function &pmx_power_switch +- &pmx_power_auto_switch>; +- pinctrl-names = "default"; +- +- button@1 { +- label = "Function Button"; +- linux,code = ; +- gpios = <&gpio1 13 GPIO_ACTIVE_LOW>; +- }; +- +- button@2 { +- label = "Power-on Switch"; +- linux,code = ; +- linux,input-type = <5>; +- gpios = <&gpio1 14 GPIO_ACTIVE_LOW>; +- }; +- +- button@3 { +- label = "Power-auto Switch"; +- linux,code = ; +- linux,input-type = <5>; +- gpios = <&gpio1 15 GPIO_ACTIVE_LOW>; +- }; +- }; +- +- gpio_leds { +- compatible = "gpio-leds"; +- pinctrl-0 = <&pmx_led_function_red &pmx_led_alarm +- &pmx_led_info &pmx_led_power +- &pmx_led_function_blue +- &pmx_led_hdderr0 +- &pmx_led_hdderr1>; +- pinctrl-names = "default"; +- +- led@1 { +- label = "lswvl:red:alarm"; +- gpios = <&gpio1 4 GPIO_ACTIVE_HIGH>; +- }; +- +- led@2 { +- label = "lswvl:red:func"; +- gpios = <&gpio1 5 GPIO_ACTIVE_HIGH>; +- }; +- +- led@3 { +- label = "lswvl:amber:info"; +- gpios = <&gpio1 6 GPIO_ACTIVE_HIGH>; +- }; +- +- led@4 { +- label = "lswvl:blue:func"; +- gpios = <&gpio1 7 GPIO_ACTIVE_HIGH>; +- }; +- +- led@5 { +- label = "lswvl:blue:power"; +- gpios = <&gpio1 8 GPIO_ACTIVE_LOW>; +- default-state = "keep"; +- }; +- +- led@6 { +- label = "lswvl:red:hdderr0"; +- gpios = <&gpio1 2 GPIO_ACTIVE_HIGH>; +- }; +- +- led@7 { +- label = "lswvl:red:hdderr1"; +- gpios = <&gpio1 3 GPIO_ACTIVE_HIGH>; +- }; +- }; +- +- gpio_fan { +- compatible = "gpio-fan"; +- pinctrl-0 = <&pmx_fan_low &pmx_fan_high &pmx_fan_lock>; +- pinctrl-names = "default"; +- +- gpios = <&gpio0 17 GPIO_ACTIVE_LOW +- &gpio0 16 GPIO_ACTIVE_LOW>; +- +- gpio-fan,speed-map = <0 3 +- 1500 2 +- 3250 1 +- 5000 0>; +- +- alarm-gpios = <&gpio1 11 GPIO_ACTIVE_HIGH>; +- }; +- +- restart_poweroff { +- compatible = "restart-poweroff"; +- }; +- +- regulators { +- compatible = "simple-bus"; +- #address-cells = <1>; +- #size-cells = <0>; +- pinctrl-0 = <&pmx_power_hdd0 &pmx_power_hdd1 &pmx_usb_vbus>; +- pinctrl-names = "default"; +- +- usb_power: regulator@1 { +- compatible = "regulator-fixed"; +- reg = <1>; +- regulator-name = "USB Power"; +- regulator-min-microvolt = <5000000>; +- regulator-max-microvolt = <5000000>; +- enable-active-high; +- regulator-always-on; +- regulator-boot-on; +- gpio = <&gpio0 12 GPIO_ACTIVE_HIGH>; +- }; +- hdd_power0: regulator@2 { +- compatible = "regulator-fixed"; +- reg = <2>; +- regulator-name = "HDD0 Power"; +- regulator-min-microvolt = <5000000>; +- regulator-max-microvolt = <5000000>; +- enable-active-high; +- regulator-always-on; +- regulator-boot-on; +- gpio = <&gpio0 8 GPIO_ACTIVE_HIGH>; +- }; +- hdd_power1: regulator@3 { +- compatible = "regulator-fixed"; +- reg = <3>; +- regulator-name = "HDD1 Power"; +- regulator-min-microvolt = <5000000>; +- regulator-max-microvolt = <5000000>; +- enable-active-high; +- regulator-always-on; +- regulator-boot-on; +- gpio = <&gpio0 9 GPIO_ACTIVE_HIGH>; +- }; +- }; +-}; +- +-&mdio { +- status = "okay"; +- +- ethphy0: ethernet-phy@0 { +- device_type = "ethernet-phy"; +- reg = <0>; +- }; +-}; +- +-ð0 { +- status = "okay"; +- +- ethernet0-port@0 { +- phy-handle = <ðphy0>; +- }; +-}; diff --git a/debian/patches/features/arm/device-tree/ARM-dts-kirkwood-split-lswxl-dts-to-linkstation-lswsxl-an.patch b/debian/patches/features/arm/device-tree/ARM-dts-kirkwood-split-lswxl-dts-to-linkstation-lswsxl-an.patch new file mode 100644 index 000000000..126df4196 --- /dev/null +++ b/debian/patches/features/arm/device-tree/ARM-dts-kirkwood-split-lswxl-dts-to-linkstation-lswsxl-an.patch @@ -0,0 +1,975 @@ +From: Roger Shimizu +Date: Thu, 21 Jan 2016 23:38:49 +0900 +Subject: ARM: dts: kirkwood: split lswxl dts to linkstation lswsxl and lswxl +Origin: https://git.kernel.org/cgit/linux/kernel/git/next/linux-next.git/commit/?id=b05465ff5b5e90d6d25d3f6c4e8ac6b2b3159435 + +LS-WXL/WSXL are both kirkwood-6281 based 2-Bay NAS devices, which share +many MPP pins. However they are slightly different: + - There're two red LED indicator on LS-WXL to show when HDD fails, + but there's no such on LS-WSXL. + - There's 4-level speed adjustable FAN on LS-WXL, but not LS-WSXL. + +So after the split, common part goes into .dtsi file: + - kirkwood-linkstation.dtsi + - kirkwood-linkstation-duo-6281.dtsi +while all rest part goes into device specific .dts file: + - kirkwood-linkstation-lswsxl.dts + - kirkwood-linkstation-lswxl.dts + +Signed-off-by: Roger Shimizu +Reviewed-by: Andrew Lunn +Signed-off-by: Gregory CLEMENT +--- + .../devicetree/bindings/arm/marvell,kirkwood.txt | 3 +- + arch/arm/boot/dts/Makefile | 3 +- + .../boot/dts/kirkwood-linkstation-duo-6281.dtsi | 186 ++++++++++++ + arch/arm/boot/dts/kirkwood-linkstation-lswsxl.dts | 57 ++++ + arch/arm/boot/dts/kirkwood-linkstation-lswxl.dts | 116 +++++++ + arch/arm/boot/dts/kirkwood-linkstation.dtsi | 202 +++++++++++++ + arch/arm/boot/dts/kirkwood-lswxl.dts | 335 --------------------- + 7 files changed, 565 insertions(+), 337 deletions(-) + create mode 100644 arch/arm/boot/dts/kirkwood-linkstation-duo-6281.dtsi + create mode 100644 arch/arm/boot/dts/kirkwood-linkstation-lswsxl.dts + create mode 100644 arch/arm/boot/dts/kirkwood-linkstation-lswxl.dts + create mode 100644 arch/arm/boot/dts/kirkwood-linkstation.dtsi + delete mode 100644 arch/arm/boot/dts/kirkwood-lswxl.dts + +--- a/Documentation/devicetree/bindings/arm/marvell,kirkwood.txt ++++ b/Documentation/devicetree/bindings/arm/marvell,kirkwood.txt +@@ -19,9 +19,10 @@ SoC. Currently known SoC compatibles are + And in addition, the compatible shall be extended with the specific + board. Currently known boards are: + ++"buffalo,linkstation-lswsxl" ++"buffalo,linkstation-lswxl" + "buffalo,lschlv2" + "buffalo,lswvl" +-"buffalo,lswxl" + "buffalo,lsxhl" + "buffalo,lsxl" + "cloudengines,pogo02" +--- a/arch/arm/boot/dts/Makefile ++++ b/arch/arm/boot/dts/Makefile +@@ -189,9 +189,10 @@ dtb-$(CONFIG_MACH_KIRKWOOD) += \ + kirkwood-is2.dtb \ + kirkwood-km_kirkwood.dtb \ + kirkwood-laplug.dtb \ ++ kirkwood-linkstation-lswsxl.dtb \ ++ kirkwood-linkstation-lswxl.dtb \ + kirkwood-lschlv2.dtb \ + kirkwood-lswvl.dtb \ +- kirkwood-lswxl.dtb \ + kirkwood-lsxhl.dtb \ + kirkwood-mplcec4.dtb \ + kirkwood-mv88f6281gtw-ge.dtb \ +--- /dev/null ++++ b/arch/arm/boot/dts/kirkwood-linkstation-duo-6281.dtsi +@@ -0,0 +1,186 @@ ++/* ++ * Device Tree common file for kirkwood-6281 based 2-Bay Buffalo Linkstation ++ * ++ * Copyright (C) 2015, 2016 ++ * Roger Shimizu ++ * ++ * This file is dual-licensed: you can use it either under the terms ++ * of the GPL or the X11 license, at your option. Note that this dual ++ * licensing only applies to this file, and not this project as a ++ * whole. ++ * ++ * a) This file is free software; you can redistribute it and/or ++ * modify it under the terms of the GNU General Public License as ++ * published by the Free Software Foundation; either version 2 of the ++ * License, or (at your option) any later version. ++ * ++ * This file is distributed in the hope that it will be useful ++ * but WITHOUT ANY WARRANTY; without even the implied warranty of ++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++ * GNU General Public License for more details. ++ * ++ * Or, alternatively ++ * ++ * b) Permission is hereby granted, free of charge, to any person ++ * obtaining a copy of this software and associated documentation ++ * files (the "Software"), to deal in the Software without ++ * restriction, including without limitation the rights to use ++ * copy, modify, merge, publish, distribute, sublicense, and/or ++ * sell copies of the Software, and to permit persons to whom the ++ * Software is furnished to do so, subject to the following ++ * conditions: ++ * ++ * The above copyright notice and this permission notice shall be ++ * included in all copies or substantial portions of the Software. ++ * ++ * THE SOFTWARE IS PROVIDED , WITHOUT WARRANTY OF ANY KIND ++ * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES ++ * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND ++ * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT ++ * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY ++ * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING ++ * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR ++ * OTHER DEALINGS IN THE SOFTWARE. ++ */ ++ ++#include "kirkwood.dtsi" ++#include "kirkwood-6281.dtsi" ++#include "kirkwood-linkstation.dtsi" ++ ++/ { ++ ocp@f1000000 { ++ pinctrl: pin-controller@10000 { ++ pmx_power_hdd0: pmx-power-hdd0 { ++ marvell,pins = "mpp28"; ++ marvell,function = "gpio"; ++ }; ++ pmx_power_hdd1: pmx-power-hdd1 { ++ marvell,pins = "mpp29"; ++ marvell,function = "gpio"; ++ }; ++ pmx_usb_vbus: pmx-usb-vbus { ++ marvell,pins = "mpp37"; ++ marvell,function = "gpio"; ++ }; ++ pmx_led_alarm: pmx-led-alarm { ++ marvell,pins = "mpp49"; ++ marvell,function = "gpio"; ++ }; ++ pmx_led_function_red: pmx-led-function-red { ++ marvell,pins = "mpp34"; ++ marvell,function = "gpio"; ++ }; ++ pmx_led_function_blue: pmx-led-function-blue { ++ marvell,pins = "mpp36"; ++ marvell,function = "gpio"; ++ }; ++ pmx_led_info: pmx-led-info { ++ marvell,pins = "mpp38"; ++ marvell,function = "gpio"; ++ }; ++ pmx_led_power: pmx-led-power { ++ marvell,pins = "mpp39"; ++ marvell,function = "gpio"; ++ }; ++ pmx_button_function: pmx-button-function { ++ marvell,pins = "mpp41"; ++ marvell,function = "gpio"; ++ }; ++ pmx_power_switch: pmx-power-switch { ++ marvell,pins = "mpp42"; ++ marvell,function = "gpio"; ++ }; ++ pmx_power_auto_switch: pmx-power-auto-switch { ++ marvell,pins = "mpp43"; ++ marvell,function = "gpio"; ++ }; ++ }; ++ ++ sata@80000 { ++ nr-ports = <2>; ++ }; ++ }; ++ ++ gpio_keys { ++ function-button { ++ gpios = <&gpio1 9 GPIO_ACTIVE_LOW>; ++ }; ++ ++ power-on-switch { ++ gpios = <&gpio1 10 GPIO_ACTIVE_LOW>; ++ }; ++ ++ power-auto-switch { ++ gpios = <&gpio1 11 GPIO_ACTIVE_LOW>; ++ }; ++ }; ++ ++ gpio_leds { ++ red-alarm-led { ++ label = "linkstation:red:alarm"; ++ gpios = <&gpio1 17 GPIO_ACTIVE_LOW>; ++ }; ++ ++ red-function-led { ++ label = "linkstation:red:function"; ++ gpios = <&gpio1 2 GPIO_ACTIVE_HIGH>; ++ }; ++ ++ amber-info-led { ++ label = "linkstation:amber:info"; ++ gpios = <&gpio1 6 GPIO_ACTIVE_LOW>; ++ }; ++ ++ blue-function-led { ++ label = "linkstation:blue:function"; ++ gpios = <&gpio1 4 GPIO_ACTIVE_LOW>; ++ }; ++ ++ blue-power-led { ++ label = "linkstation:blue:power"; ++ gpios = <&gpio1 7 GPIO_ACTIVE_HIGH>; ++ default-state = "keep"; ++ }; ++ }; ++ ++ regulators { ++ pinctrl-0 = <&pmx_power_hdd0 &pmx_power_hdd1 &pmx_usb_vbus>; ++ ++ usb_power: regulator@1 { ++ gpio = <&gpio1 5 GPIO_ACTIVE_HIGH>; ++ }; ++ ++ hdd_power0: regulator@2 { ++ gpio = <&gpio0 28 GPIO_ACTIVE_HIGH>; ++ }; ++ ++ hdd_power1: regulator@3 { ++ compatible = "regulator-fixed"; ++ reg = <3>; ++ regulator-name = "HDD1 Power"; ++ regulator-min-microvolt = <5000000>; ++ regulator-max-microvolt = <5000000>; ++ enable-active-high; ++ regulator-always-on; ++ regulator-boot-on; ++ gpio = <&gpio0 29 GPIO_ACTIVE_HIGH>; ++ }; ++ }; ++}; ++ ++&mdio { ++ status = "okay"; ++ ++ ethphy1: ethernet-phy@8 { ++ device_type = "ethernet-phy"; ++ reg = <8>; ++ }; ++}; ++ ++ð1 { ++ status = "okay"; ++ ++ ethernet1-port@0 { ++ phy-handle = <ðphy1>; ++ }; ++}; +--- /dev/null ++++ b/arch/arm/boot/dts/kirkwood-linkstation-lswsxl.dts +@@ -0,0 +1,57 @@ ++/* ++ * Device Tree file for Buffalo Linkstation LS-WSXL ++ * ++ * Copyright (C) 2015, 2016 ++ * Roger Shimizu ++ * ++ * This file is dual-licensed: you can use it either under the terms ++ * of the GPL or the X11 license, at your option. Note that this dual ++ * licensing only applies to this file, and not this project as a ++ * whole. ++ * ++ * a) This file is free software; you can redistribute it and/or ++ * modify it under the terms of the GNU General Public License as ++ * published by the Free Software Foundation; either version 2 of the ++ * License, or (at your option) any later version. ++ * ++ * This file is distributed in the hope that it will be useful ++ * but WITHOUT ANY WARRANTY; without even the implied warranty of ++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++ * GNU General Public License for more details. ++ * ++ * Or, alternatively ++ * ++ * b) Permission is hereby granted, free of charge, to any person ++ * obtaining a copy of this software and associated documentation ++ * files (the "Software"), to deal in the Software without ++ * restriction, including without limitation the rights to use ++ * copy, modify, merge, publish, distribute, sublicense, and/or ++ * sell copies of the Software, and to permit persons to whom the ++ * Software is furnished to do so, subject to the following ++ * conditions: ++ * ++ * The above copyright notice and this permission notice shall be ++ * included in all copies or substantial portions of the Software. ++ * ++ * THE SOFTWARE IS PROVIDED , WITHOUT WARRANTY OF ANY KIND ++ * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES ++ * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND ++ * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT ++ * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY ++ * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING ++ * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR ++ * OTHER DEALINGS IN THE SOFTWARE. ++ */ ++ ++/dts-v1/; ++#include "kirkwood-linkstation-duo-6281.dtsi" ++ ++/ { ++ model = "Buffalo Linkstation LS-WSXL"; ++ compatible = "buffalo,lswsxl", "marvell,kirkwood-88f6281", "marvell,kirkwood"; ++ ++ memory { /* 128 MB */ ++ device_type = "memory"; ++ reg = <0x00000000 0x8000000>; ++ }; ++}; +--- /dev/null ++++ b/arch/arm/boot/dts/kirkwood-linkstation-lswxl.dts +@@ -0,0 +1,116 @@ ++/* ++ * Device Tree file for Buffalo Linkstation LS-WXL ++ * ++ * Copyright (C) 2015, 2016 ++ * Roger Shimizu ++ * ++ * This file is dual-licensed: you can use it either under the terms ++ * of the GPL or the X11 license, at your option. Note that this dual ++ * licensing only applies to this file, and not this project as a ++ * whole. ++ * ++ * a) This file is free software; you can redistribute it and/or ++ * modify it under the terms of the GNU General Public License as ++ * published by the Free Software Foundation; either version 2 of the ++ * License, or (at your option) any later version. ++ * ++ * This file is distributed in the hope that it will be useful ++ * but WITHOUT ANY WARRANTY; without even the implied warranty of ++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++ * GNU General Public License for more details. ++ * ++ * Or, alternatively ++ * ++ * b) Permission is hereby granted, free of charge, to any person ++ * obtaining a copy of this software and associated documentation ++ * files (the "Software"), to deal in the Software without ++ * restriction, including without limitation the rights to use ++ * copy, modify, merge, publish, distribute, sublicense, and/or ++ * sell copies of the Software, and to permit persons to whom the ++ * Software is furnished to do so, subject to the following ++ * conditions: ++ * ++ * The above copyright notice and this permission notice shall be ++ * included in all copies or substantial portions of the Software. ++ * ++ * THE SOFTWARE IS PROVIDED , WITHOUT WARRANTY OF ANY KIND ++ * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES ++ * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND ++ * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT ++ * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY ++ * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING ++ * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR ++ * OTHER DEALINGS IN THE SOFTWARE. ++ */ ++ ++/dts-v1/; ++#include "kirkwood-linkstation-duo-6281.dtsi" ++ ++/ { ++ model = "Buffalo Linkstation LS-WXL"; ++ compatible = "buffalo,lswxl", "marvell,kirkwood-88f6281", "marvell,kirkwood"; ++ ++ memory { /* 128 MB */ ++ device_type = "memory"; ++ reg = <0x00000000 0x8000000>; ++ }; ++ ++ ocp@f1000000 { ++ pinctrl: pin-controller@10000 { ++ pmx_led_hdderr0: pmx-led-hdderr0 { ++ marvell,pins = "mpp8"; ++ marvell,function = "gpio"; ++ }; ++ pmx_led_hdderr1: pmx-led-hdderr1 { ++ marvell,pins = "mpp46"; ++ marvell,function = "gpio"; ++ }; ++ pmx_fan_lock: pmx-fan-lock { ++ marvell,pins = "mpp40"; ++ marvell,function = "gpio"; ++ }; ++ pmx_fan_high: pmx-fan-high { ++ marvell,pins = "mpp47"; ++ marvell,function = "gpio"; ++ }; ++ pmx_fan_low: pmx-fan-low { ++ marvell,pins = "mpp48"; ++ marvell,function = "gpio"; ++ }; ++ }; ++ }; ++ ++ gpio_leds { ++ pinctrl-0 = <&pmx_led_function_red &pmx_led_alarm ++ &pmx_led_info &pmx_led_power ++ &pmx_led_function_blue ++ &pmx_led_hdderr0 ++ &pmx_led_hdderr1>; ++ ++ red-hdderr0-led { ++ label = "linkstation:red:hdderr0"; ++ gpios = <&gpio0 8 GPIO_ACTIVE_HIGH>; ++ }; ++ ++ red-hdderr1-led { ++ label = "linkstation:red:hdderr1"; ++ gpios = <&gpio1 14 GPIO_ACTIVE_HIGH>; ++ }; ++ }; ++ ++ gpio_fan { ++ compatible = "gpio-fan"; ++ pinctrl-0 = <&pmx_fan_low &pmx_fan_high &pmx_fan_lock>; ++ pinctrl-names = "default"; ++ ++ gpios = <&gpio1 16 GPIO_ACTIVE_LOW ++ &gpio1 15 GPIO_ACTIVE_LOW>; ++ ++ gpio-fan,speed-map = <0 3 ++ 1500 2 ++ 3250 1 ++ 5000 0>; ++ ++ alarm-gpios = <&gpio1 8 GPIO_ACTIVE_HIGH>; ++ }; ++}; +--- /dev/null ++++ b/arch/arm/boot/dts/kirkwood-linkstation.dtsi +@@ -0,0 +1,202 @@ ++/* ++ * Device Tree common file for kirkwood based Buffalo Linkstation ++ * ++ * Copyright (C) 2015, 2016 ++ * Roger Shimizu ++ * ++ * This file is dual-licensed: you can use it either under the terms ++ * of the GPL or the X11 license, at your option. Note that this dual ++ * licensing only applies to this file, and not this project as a ++ * whole. ++ * ++ * a) This file is free software; you can redistribute it and/or ++ * modify it under the terms of the GNU General Public License as ++ * published by the Free Software Foundation; either version 2 of the ++ * License, or (at your option) any later version. ++ * ++ * This file is distributed in the hope that it will be useful ++ * but WITHOUT ANY WARRANTY; without even the implied warranty of ++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++ * GNU General Public License for more details. ++ * ++ * Or, alternatively ++ * ++ * b) Permission is hereby granted, free of charge, to any person ++ * obtaining a copy of this software and associated documentation ++ * files (the "Software"), to deal in the Software without ++ * restriction, including without limitation the rights to use ++ * copy, modify, merge, publish, distribute, sublicense, and/or ++ * sell copies of the Software, and to permit persons to whom the ++ * Software is furnished to do so, subject to the following ++ * conditions: ++ * ++ * The above copyright notice and this permission notice shall be ++ * included in all copies or substantial portions of the Software. ++ * ++ * THE SOFTWARE IS PROVIDED , WITHOUT WARRANTY OF ANY KIND ++ * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES ++ * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND ++ * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT ++ * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY ++ * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING ++ * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR ++ * OTHER DEALINGS IN THE SOFTWARE. ++ */ ++ ++/ { ++ chosen { ++ bootargs = "console=ttyS0,115200n8 earlyprintk"; ++ stdout-path = &uart0; ++ }; ++ ++ mbus { ++ pcie-controller { ++ status = "okay"; ++ pcie@1,0 { ++ status = "okay"; ++ }; ++ }; ++ }; ++ ++ ocp@f1000000 { ++ pinctrl: pin-controller@10000 { ++ pmx_power_hdd0: pmx-power-hdd0 { ++ marvell,function = "gpio"; ++ }; ++ pmx_usb_vbus: pmx-usb-vbus { ++ marvell,function = "gpio"; ++ }; ++ pmx_led_alarm: pmx-led-alarm { ++ marvell,function = "gpio"; ++ }; ++ pmx_led_function_red: pmx-led-function-red { ++ marvell,function = "gpio"; ++ }; ++ pmx_led_function_blue: pmx-led-function-blue { ++ marvell,function = "gpio"; ++ }; ++ pmx_led_info: pmx-led-info { ++ marvell,function = "gpio"; ++ }; ++ pmx_led_power: pmx-led-power { ++ marvell,function = "gpio"; ++ }; ++ pmx_button_function: pmx-button-function { ++ marvell,function = "gpio"; ++ }; ++ pmx_power_switch: pmx-power-switch { ++ marvell,function = "gpio"; ++ }; ++ pmx_power_auto_switch: pmx-power-auto-switch { ++ marvell,function = "gpio"; ++ }; ++ }; ++ ++ serial@12000 { ++ status = "okay"; ++ }; ++ ++ sata@80000 { ++ status = "okay"; ++ nr-ports = <1>; ++ }; ++ ++ spi@10600 { ++ status = "okay"; ++ ++ m25p40@0 { ++ #address-cells = <1>; ++ #size-cells = <1>; ++ compatible = "st,m25p40", "jedec,spi-nor"; ++ reg = <0>; ++ spi-max-frequency = <25000000>; ++ mode = <0>; ++ ++ partition@0 { ++ reg = <0x0 0x60000>; ++ label = "uboot"; ++ read-only; ++ }; ++ ++ partition@60000 { ++ reg = <0x60000 0x10000>; ++ label = "dtb"; ++ read-only; ++ }; ++ ++ partition@70000 { ++ reg = <0x70000 0x10000>; ++ label = "uboot_env"; ++ }; ++ }; ++ }; ++ }; ++ ++ gpio_keys { ++ compatible = "gpio-keys"; ++ #address-cells = <1>; ++ #size-cells = <0>; ++ pinctrl-0 = <&pmx_button_function &pmx_power_switch ++ &pmx_power_auto_switch>; ++ pinctrl-names = "default"; ++ ++ function-button { ++ label = "Function Button"; ++ linux,code = ; ++ }; ++ ++ power-on-switch { ++ label = "Power-on Switch"; ++ linux,code = ; ++ linux,input-type = <5>; ++ }; ++ ++ power-auto-switch { ++ label = "Power-auto Switch"; ++ linux,code = ; ++ linux,input-type = <5>; ++ }; ++ }; ++ ++ gpio_leds { ++ compatible = "gpio-leds"; ++ pinctrl-0 = <&pmx_led_function_red &pmx_led_alarm ++ &pmx_led_info &pmx_led_power ++ &pmx_led_function_blue>; ++ pinctrl-names = "default"; ++ }; ++ ++ restart_poweroff { ++ compatible = "restart-poweroff"; ++ }; ++ ++ regulators { ++ compatible = "simple-bus"; ++ #address-cells = <1>; ++ #size-cells = <0>; ++ pinctrl-0 = <&pmx_power_hdd0 &pmx_usb_vbus>; ++ pinctrl-names = "default"; ++ ++ usb_power: regulator@1 { ++ compatible = "regulator-fixed"; ++ reg = <1>; ++ regulator-name = "USB Power"; ++ regulator-min-microvolt = <5000000>; ++ regulator-max-microvolt = <5000000>; ++ enable-active-high; ++ regulator-always-on; ++ regulator-boot-on; ++ }; ++ ++ hdd_power0: regulator@2 { ++ compatible = "regulator-fixed"; ++ reg = <2>; ++ regulator-name = "HDD0 Power"; ++ regulator-min-microvolt = <5000000>; ++ regulator-max-microvolt = <5000000>; ++ enable-active-high; ++ regulator-always-on; ++ regulator-boot-on; ++ }; ++ }; ++}; +--- a/arch/arm/boot/dts/kirkwood-lswxl.dts ++++ /dev/null +@@ -1,335 +0,0 @@ +-/* +- * Device Tree file for Buffalo Linkstation LS-WXL/WSXL +- * +- * Copyright (C) 2015, 2016 +- * Roger Shimizu +- * +- * This file is dual-licensed: you can use it either under the terms +- * of the GPL or the X11 license, at your option. Note that this dual +- * licensing only applies to this file, and not this project as a +- * whole. +- * +- * a) This file is free software; you can redistribute it and/or +- * modify it under the terms of the GNU General Public License as +- * published by the Free Software Foundation; either version 2 of the +- * License, or (at your option) any later version. +- * +- * This file is distributed in the hope that it will be useful +- * but WITHOUT ANY WARRANTY; without even the implied warranty of +- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +- * GNU General Public License for more details. +- * +- * Or, alternatively +- * +- * b) Permission is hereby granted, free of charge, to any person +- * obtaining a copy of this software and associated documentation +- * files (the "Software"), to deal in the Software without +- * restriction, including without limitation the rights to use +- * copy, modify, merge, publish, distribute, sublicense, and/or +- * sell copies of the Software, and to permit persons to whom the +- * Software is furnished to do so, subject to the following +- * conditions: +- * +- * The above copyright notice and this permission notice shall be +- * included in all copies or substantial portions of the Software. +- * +- * THE SOFTWARE IS PROVIDED , WITHOUT WARRANTY OF ANY KIND +- * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES +- * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +- * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT +- * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY +- * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING +- * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR +- * OTHER DEALINGS IN THE SOFTWARE. +- */ +- +-/dts-v1/; +- +-#include "kirkwood.dtsi" +-#include "kirkwood-6281.dtsi" +- +-/ { +- model = "Buffalo Linkstation LS-WXL/WSXL"; +- compatible = "buffalo,lswxl", "marvell,kirkwood-88f6281", "marvell,kirkwood"; +- +- memory { /* 128 MB */ +- device_type = "memory"; +- reg = <0x00000000 0x8000000>; +- }; +- +- chosen { +- bootargs = "console=ttyS0,115200n8 earlyprintk"; +- stdout-path = &uart0; +- }; +- +- mbus { +- pcie-controller { +- status = "okay"; +- pcie@1,0 { +- status = "okay"; +- }; +- }; +- }; +- +- ocp@f1000000 { +- pinctrl: pin-controller@10000 { +- pmx_power_hdd0: pmx-power-hdd0 { +- marvell,pins = "mpp28"; +- marvell,function = "gpio"; +- }; +- pmx_power_hdd1: pmx-power-hdd1 { +- marvell,pins = "mpp29"; +- marvell,function = "gpio"; +- }; +- pmx_usb_vbus: pmx-usb-vbus { +- marvell,pins = "mpp37"; +- marvell,function = "gpio"; +- }; +- pmx_fan_high: pmx-fan-high { +- marvell,pins = "mpp47"; +- marvell,function = "gpio"; +- }; +- pmx_fan_low: pmx-fan-low { +- marvell,pins = "mpp48"; +- marvell,function = "gpio"; +- }; +- pmx_led_hdderr0: pmx-led-hdderr0 { +- marvell,pins = "mpp8"; +- marvell,function = "gpio"; +- }; +- pmx_led_hdderr1: pmx-led-hdderr1 { +- marvell,pins = "mpp46"; +- marvell,function = "gpio"; +- }; +- pmx_led_alarm: pmx-led-alarm { +- marvell,pins = "mpp49"; +- marvell,function = "gpio"; +- }; +- pmx_led_function_red: pmx-led-function-red { +- marvell,pins = "mpp34"; +- marvell,function = "gpio"; +- }; +- pmx_led_function_blue: pmx-led-function-blue { +- marvell,pins = "mpp36"; +- marvell,function = "gpio"; +- }; +- pmx_led_info: pmx-led-info { +- marvell,pins = "mpp38"; +- marvell,function = "gpio"; +- }; +- pmx_led_power: pmx-led-power { +- marvell,pins = "mpp39"; +- marvell,function = "gpio"; +- }; +- pmx_fan_lock: pmx-fan-lock { +- marvell,pins = "mpp40"; +- marvell,function = "gpio"; +- }; +- pmx_button_function: pmx-button-function { +- marvell,pins = "mpp41"; +- marvell,function = "gpio"; +- }; +- pmx_power_switch: pmx-power-switch { +- marvell,pins = "mpp42"; +- marvell,function = "gpio"; +- }; +- pmx_power_auto_switch: pmx-power-auto-switch { +- marvell,pins = "mpp43"; +- marvell,function = "gpio"; +- }; +- }; +- +- serial@12000 { +- status = "okay"; +- }; +- +- sata@80000 { +- status = "okay"; +- nr-ports = <2>; +- }; +- +- spi@10600 { +- status = "okay"; +- +- m25p40@0 { +- #address-cells = <1>; +- #size-cells = <1>; +- compatible = "st,m25p40", "jedec,spi-nor"; +- reg = <0>; +- spi-max-frequency = <25000000>; +- mode = <0>; +- +- partition@0 { +- reg = <0x0 0x60000>; +- label = "uboot"; +- read-only; +- }; +- +- partition@60000 { +- reg = <0x60000 0x10000>; +- label = "dtb"; +- read-only; +- }; +- +- partition@70000 { +- reg = <0x70000 0x10000>; +- label = "uboot_env"; +- }; +- }; +- }; +- }; +- +- gpio_keys { +- compatible = "gpio-keys"; +- #address-cells = <1>; +- #size-cells = <0>; +- pinctrl-0 = <&pmx_button_function &pmx_power_switch +- &pmx_power_auto_switch>; +- pinctrl-names = "default"; +- +- button@1 { +- label = "Function Button"; +- linux,code = ; +- gpios = <&gpio1 9 GPIO_ACTIVE_LOW>; +- }; +- +- button@2 { +- label = "Power-on Switch"; +- linux,code = ; +- linux,input-type = <5>; +- gpios = <&gpio1 10 GPIO_ACTIVE_LOW>; +- }; +- +- button@3 { +- label = "Power-auto Switch"; +- linux,code = ; +- linux,input-type = <5>; +- gpios = <&gpio1 11 GPIO_ACTIVE_LOW>; +- }; +- }; +- +- gpio_leds { +- compatible = "gpio-leds"; +- pinctrl-0 = <&pmx_led_function_red &pmx_led_alarm +- &pmx_led_info &pmx_led_power +- &pmx_led_function_blue +- &pmx_led_hdderr0 +- &pmx_led_hdderr1>; +- pinctrl-names = "default"; +- +- led@1 { +- label = "lswxl:blue:func"; +- gpios = <&gpio1 4 GPIO_ACTIVE_LOW>; +- }; +- +- led@2 { +- label = "lswxl:red:alarm"; +- gpios = <&gpio1 17 GPIO_ACTIVE_LOW>; +- }; +- +- led@3 { +- label = "lswxl:amber:info"; +- gpios = <&gpio1 6 GPIO_ACTIVE_LOW>; +- }; +- +- led@4 { +- label = "lswxl:blue:power"; +- gpios = <&gpio1 7 GPIO_ACTIVE_HIGH>; +- default-state = "keep"; +- }; +- +- led@5 { +- label = "lswxl:red:func"; +- gpios = <&gpio1 2 GPIO_ACTIVE_HIGH>; +- }; +- +- led@6 { +- label = "lswxl:red:hdderr0"; +- gpios = <&gpio0 8 GPIO_ACTIVE_HIGH>; +- }; +- +- led@7 { +- label = "lswxl:red:hdderr1"; +- gpios = <&gpio1 14 GPIO_ACTIVE_HIGH>; +- }; +- }; +- +- gpio_fan { +- compatible = "gpio-fan"; +- pinctrl-0 = <&pmx_fan_low &pmx_fan_high &pmx_fan_lock>; +- pinctrl-names = "default"; +- +- gpios = <&gpio1 16 GPIO_ACTIVE_LOW +- &gpio1 15 GPIO_ACTIVE_LOW>; +- +- gpio-fan,speed-map = <0 3 +- 1500 2 +- 3250 1 +- 5000 0>; +- +- alarm-gpios = <&gpio1 8 GPIO_ACTIVE_HIGH>; +- }; +- +- restart_poweroff { +- compatible = "restart-poweroff"; +- }; +- +- regulators { +- compatible = "simple-bus"; +- #address-cells = <1>; +- #size-cells = <0>; +- pinctrl-0 = <&pmx_power_hdd0 &pmx_power_hdd1 &pmx_usb_vbus>; +- pinctrl-names = "default"; +- +- usb_power: regulator@1 { +- compatible = "regulator-fixed"; +- reg = <1>; +- regulator-name = "USB Power"; +- regulator-min-microvolt = <5000000>; +- regulator-max-microvolt = <5000000>; +- enable-active-high; +- regulator-always-on; +- regulator-boot-on; +- gpio = <&gpio1 5 GPIO_ACTIVE_HIGH>; +- }; +- hdd_power0: regulator@2 { +- compatible = "regulator-fixed"; +- reg = <2>; +- regulator-name = "HDD0 Power"; +- regulator-min-microvolt = <5000000>; +- regulator-max-microvolt = <5000000>; +- enable-active-high; +- regulator-always-on; +- regulator-boot-on; +- gpio = <&gpio0 28 GPIO_ACTIVE_HIGH>; +- }; +- hdd_power1: regulator@3 { +- compatible = "regulator-fixed"; +- reg = <3>; +- regulator-name = "HDD1 Power"; +- regulator-min-microvolt = <5000000>; +- regulator-max-microvolt = <5000000>; +- enable-active-high; +- regulator-always-on; +- regulator-boot-on; +- gpio = <&gpio0 29 GPIO_ACTIVE_HIGH>; +- }; +- }; +-}; +- +-&mdio { +- status = "okay"; +- +- ethphy1: ethernet-phy@8 { +- device_type = "ethernet-phy"; +- reg = <8>; +- }; +-}; +- +-ð1 { +- status = "okay"; +- +- ethernet1-port@0 { +- phy-handle = <ðphy1>; +- }; +-}; diff --git a/debian/patches/features/arm/device-tree/ARM-dts-orion5x-add-for-buffalo-linkstation-ls-gl.patch b/debian/patches/features/arm/device-tree/ARM-dts-orion5x-add-for-buffalo-linkstation-ls-gl.patch new file mode 100644 index 000000000..8b9049ec8 --- /dev/null +++ b/debian/patches/features/arm/device-tree/ARM-dts-orion5x-add-for-buffalo-linkstation-ls-gl.patch @@ -0,0 +1,132 @@ +From: Roger Shimizu +Date: Sat, 6 Feb 2016 14:59:53 +0900 +Subject: ARM: dts: orion5x: add device tree for buffalo linkstation ls-gl +Origin: https://git.kernel.org/cgit/linux/kernel/git/next/linux-next.git/commit/?id=b1742ffa9ddb347a8bcb8e5f7dcf4d3a790f9041 + +Add dts file to support Buffalo Linkstation LS-GL +(a.k.a Buffalo Linkstation Pro/Live), which is marvell orion5x based +3.5" HDD NAS. + +Product info: + - (JPN) http://buffalo.jp/products/catalog/item/l/ls-gl/ + - (ENG) http://www.buffalotech.com/products/network-storage/linkstation/linkstation-pro + +This device tree is based on the board file: + arch/arm/mach-orion5x/kurobox_pro-setup.c +However, that board file also support Kurobox Pro, which is not supported by +device tree yet. So the board file is not removed. + +Signed-off-by: Roger Shimizu +Reviewed-by: Andrew Lunn +Signed-off-by: Gregory CLEMENT +--- + arch/arm/boot/dts/Makefile | 1 + + arch/arm/boot/dts/orion5x-linkstation-lsgl.dts | 87 ++++++++++++++++++++++++++ + 2 files changed, 88 insertions(+) + create mode 100644 arch/arm/boot/dts/orion5x-linkstation-lsgl.dts + +diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile +index 30d316dc050f..66f464dd814a 100644 +--- a/arch/arm/boot/dts/Makefile ++++ b/arch/arm/boot/dts/Makefile +@@ -517,6 +517,7 @@ dtb-$(CONFIG_SOC_DRA7XX) += \ + dtb-$(CONFIG_ARCH_ORION5X) += \ + orion5x-lacie-d2-network.dtb \ + orion5x-lacie-ethernet-disk-mini-v2.dtb \ ++ orion5x-linkstation-lsgl.dtb \ + orion5x-linkstation-lswtgl.dtb \ + orion5x-lswsgl.dtb \ + orion5x-maxtor-shared-storage-2.dtb \ +diff --git a/arch/arm/boot/dts/orion5x-linkstation-lsgl.dts b/arch/arm/boot/dts/orion5x-linkstation-lsgl.dts +new file mode 100644 +index 000000000000..1cf644bfd7ea +--- /dev/null ++++ b/arch/arm/boot/dts/orion5x-linkstation-lsgl.dts +@@ -0,0 +1,87 @@ ++/* ++ * Device Tree file for Buffalo Linkstation LS-GL ++ * (also known as Buffalo Linkstation Pro/Live) ++ * ++ * Copyright (C) 2016 ++ * Roger Shimizu ++ * ++ * Based on the board file arch/arm/mach-orion5x/kurobox_pro-setup.c ++ * Copyright (C) Ronen Shitrit ++ * ++ * This file is dual-licensed: you can use it either under the terms ++ * of the GPL or the X11 license, at your option. Note that this dual ++ * licensing only applies to this file, and not this project as a ++ * whole. ++ * ++ * a) This file is free software; you can redistribute it and/or ++ * modify it under the terms of the GNU General Public License as ++ * published by the Free Software Foundation; either version 2 of the ++ * License, or (at your option) any later version. ++ * ++ * This file is distributed in the hope that it will be useful ++ * but WITHOUT ANY WARRANTY; without even the implied warranty of ++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++ * GNU General Public License for more details. ++ * ++ * Or, alternatively ++ * ++ * b) Permission is hereby granted, free of charge, to any person ++ * obtaining a copy of this software and associated documentation ++ * files (the "Software"), to deal in the Software without ++ * restriction, including without limitation the rights to use ++ * copy, modify, merge, publish, distribute, sublicense, and/or ++ * sell copies of the Software, and to permit persons to whom the ++ * Software is furnished to do so, subject to the following ++ * conditions: ++ * ++ * The above copyright notice and this permission notice shall be ++ * included in all copies or substantial portions of the Software. ++ * ++ * THE SOFTWARE IS PROVIDED , WITHOUT WARRANTY OF ANY KIND ++ * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES ++ * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND ++ * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT ++ * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY ++ * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING ++ * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR ++ * OTHER DEALINGS IN THE SOFTWARE. ++ */ ++ ++/dts-v1/; ++ ++#include "orion5x-linkstation.dtsi" ++#include ++ ++/ { ++ model = "Buffalo Linkstation Pro/Live"; ++ compatible = "buffalo,lsgl", "marvell,orion5x-88f5182", "marvell,orion5x"; ++ ++ memory { /* 128 MB */ ++ device_type = "memory"; ++ reg = <0x00000000 0x8000000>; ++ }; ++}; ++ ++&pinctrl { ++ pmx_power_hdd: pmx-power-hdd { ++ marvell,pins = "mpp1"; ++ marvell,function = "gpio"; ++ }; ++ ++ pmx_power_usb: pmx-power-usb { ++ marvell,pins = "mpp9"; ++ marvell,function = "gpio"; ++ }; ++}; ++ ++&hdd_power { ++ gpios = <&gpio0 1 GPIO_ACTIVE_HIGH>; ++}; ++ ++&usb_power { ++ gpios = <&gpio0 9 GPIO_ACTIVE_HIGH>; ++}; ++ ++&ehci1 { ++ status = "okay"; ++}; diff --git a/debian/patches/features/arm/device-tree/ARM-dts-orion5x-split-linkstation-lswtgl-into-common-and-.patch b/debian/patches/features/arm/device-tree/ARM-dts-orion5x-split-linkstation-lswtgl-into-common-and-.patch new file mode 100644 index 000000000..837133ae4 --- /dev/null +++ b/debian/patches/features/arm/device-tree/ARM-dts-orion5x-split-linkstation-lswtgl-into-common-and-.patch @@ -0,0 +1,699 @@ +From: Roger Shimizu +Date: Sat, 6 Feb 2016 14:59:52 +0900 +Subject: ARM: dts: orion5x: split linkstation lswtgl into common and device parts +Origin: https://git.kernel.org/cgit/linux/kernel/git/next/linux-next.git/commit/?id=305e0b2a7a85e8bd65818cb3636b205f784ed377 + +In order to support more linkstation devices, common part of current +.dts file goes into .dtsi file. Some .dtsi start with "mvebu-" prefix +because other kirkwood based linkstation devices are similar, and +will be migrated to use these .dtsi some time later. + - orion5x-linkstation.dtsi + - mvebu-linkstation-fan.dtsi + - mvebu-linkstation-gpio-simple.dtsi +while all rest part remains in device specific .dts file: + - orion5x-linkstation-lswtgl.dts + +Signed-off-by: Roger Shimizu +Reviewed-by: Andrew Lunn +Signed-off-by: Gregory CLEMENT +--- + arch/arm/boot/dts/mvebu-linkstation-fan.dtsi | 72 ++++++ + .../boot/dts/mvebu-linkstation-gpio-simple.dtsi | 105 +++++++++ + arch/arm/boot/dts/orion5x-linkstation-lswtgl.dts | 243 ++++----------------- + arch/arm/boot/dts/orion5x-linkstation.dtsi | 180 +++++++++++++++ + 4 files changed, 402 insertions(+), 198 deletions(-) + create mode 100644 arch/arm/boot/dts/mvebu-linkstation-fan.dtsi + create mode 100644 arch/arm/boot/dts/mvebu-linkstation-gpio-simple.dtsi + create mode 100644 arch/arm/boot/dts/orion5x-linkstation.dtsi + +--- /dev/null ++++ b/arch/arm/boot/dts/mvebu-linkstation-fan.dtsi +@@ -0,0 +1,72 @@ ++/* ++ * Device Tree common file for gpio-fan on Buffalo Linkstation ++ * ++ * Copyright (C) 2015, 2016 ++ * Roger Shimizu ++ * ++ * This file is dual-licensed: you can use it either under the terms ++ * of the GPL or the X11 license, at your option. Note that this dual ++ * licensing only applies to this file, and not this project as a ++ * whole. ++ * ++ * a) This file is free software; you can redistribute it and/or ++ * modify it under the terms of the GNU General Public License as ++ * published by the Free Software Foundation; either version 2 of the ++ * License, or (at your option) any later version. ++ * ++ * This file is distributed in the hope that it will be useful ++ * but WITHOUT ANY WARRANTY; without even the implied warranty of ++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++ * GNU General Public License for more details. ++ * ++ * Or, alternatively ++ * ++ * b) Permission is hereby granted, free of charge, to any person ++ * obtaining a copy of this software and associated documentation ++ * files (the "Software"), to deal in the Software without ++ * restriction, including without limitation the rights to use ++ * copy, modify, merge, publish, distribute, sublicense, and/or ++ * sell copies of the Software, and to permit persons to whom the ++ * Software is furnished to do so, subject to the following ++ * conditions: ++ * ++ * The above copyright notice and this permission notice shall be ++ * included in all copies or substantial portions of the Software. ++ * ++ * THE SOFTWARE IS PROVIDED , WITHOUT WARRANTY OF ANY KIND ++ * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES ++ * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND ++ * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT ++ * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY ++ * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING ++ * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR ++ * OTHER DEALINGS IN THE SOFTWARE. ++ */ ++ ++/ { ++ gpio_fan { ++ compatible = "gpio-fan"; ++ pinctrl-0 = <&pmx_fan_low &pmx_fan_high &pmx_fan_lock>; ++ pinctrl-names = "default"; ++ ++ gpio-fan,speed-map = ++ <0 3 ++ 1500 2 ++ 3250 1 ++ 5000 0>; ++ }; ++}; ++ ++&pinctrl { ++ pmx_fan_low: pmx-fan-low { ++ marvell,function = "gpio"; ++ }; ++ ++ pmx_fan_high: pmx-fan-high { ++ marvell,function = "gpio"; ++ }; ++ ++ pmx_fan_lock: pmx-fan-lock { ++ marvell,function = "gpio"; ++ }; ++}; +--- /dev/null ++++ b/arch/arm/boot/dts/mvebu-linkstation-gpio-simple.dtsi +@@ -0,0 +1,105 @@ ++/* ++ * Device Tree common file for gpio-{keys,leds} on Buffalo Linkstation ++ * ++ * Copyright (C) 2015, 2016 ++ * Roger Shimizu ++ * ++ * This file is dual-licensed: you can use it either under the terms ++ * of the GPL or the X11 license, at your option. Note that this dual ++ * licensing only applies to this file, and not this project as a ++ * whole. ++ * ++ * a) This file is free software; you can redistribute it and/or ++ * modify it under the terms of the GNU General Public License as ++ * published by the Free Software Foundation; either version 2 of the ++ * License, or (at your option) any later version. ++ * ++ * This file is distributed in the hope that it will be useful ++ * but WITHOUT ANY WARRANTY; without even the implied warranty of ++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++ * GNU General Public License for more details. ++ * ++ * Or, alternatively ++ * ++ * b) Permission is hereby granted, free of charge, to any person ++ * obtaining a copy of this software and associated documentation ++ * files (the "Software"), to deal in the Software without ++ * restriction, including without limitation the rights to use ++ * copy, modify, merge, publish, distribute, sublicense, and/or ++ * sell copies of the Software, and to permit persons to whom the ++ * Software is furnished to do so, subject to the following ++ * conditions: ++ * ++ * The above copyright notice and this permission notice shall be ++ * included in all copies or substantial portions of the Software. ++ * ++ * THE SOFTWARE IS PROVIDED , WITHOUT WARRANTY OF ANY KIND ++ * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES ++ * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND ++ * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT ++ * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY ++ * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING ++ * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR ++ * OTHER DEALINGS IN THE SOFTWARE. ++ */ ++ ++#include ++ ++/ { ++ gpio_keys { ++ compatible = "gpio-keys"; ++ #address-cells = <1>; ++ #size-cells = <0>; ++ pinctrl-0 = <&pmx_power_switch>; ++ pinctrl-names = "default"; ++ ++ power-on-switch { ++ label = "Power-on Switch"; ++ linux,code = ; ++ linux,input-type = <5>; ++ }; ++ ++ power-auto-switch { ++ label = "Power-auto Switch"; ++ linux,code = ; ++ linux,input-type = <5>; ++ }; ++ }; ++ ++ gpio_leds { ++ compatible = "gpio-leds"; ++ pinctrl-0 = <&pmx_led_power &pmx_led_alarm &pmx_led_info>; ++ pinctrl-names = "default"; ++ ++ blue-power-led { ++ label = "linkstation:blue:power"; ++ default-state = "keep"; ++ }; ++ ++ red-alarm-led { ++ label = "linkstation:red:alarm"; ++ }; ++ ++ amber-info-led { ++ label = "linkstation:amber:info"; ++ }; ++ }; ++}; ++ ++&pinctrl { ++ pmx_power_switch: pmx-power-switch { ++ marvell,function = "gpio"; ++ }; ++ ++ pmx_led_power: pmx-leds { ++ marvell,function = "gpio"; ++ }; ++ ++ pmx_led_alarm: pmx-leds { ++ marvell,function = "gpio"; ++ }; ++ ++ pmx_led_info: pmx-leds { ++ marvell,function = "gpio"; ++ }; ++}; +--- a/arch/arm/boot/dts/orion5x-linkstation-lswtgl.dts ++++ b/arch/arm/boot/dts/orion5x-linkstation-lswtgl.dts +@@ -45,9 +45,10 @@ + + /dts-v1/; + ++#include "orion5x-linkstation.dtsi" ++#include "mvebu-linkstation-gpio-simple.dtsi" ++#include "mvebu-linkstation-fan.dtsi" + #include +-#include +-#include "orion5x-mv88f5182.dtsi" + + / { + model = "Buffalo Linkstation LS-WTGL"; +@@ -58,247 +59,93 @@ + reg = <0x00000000 0x4000000>; + }; + +- chosen { +- bootargs = "console=ttyS0,115200n8 earlyprintk"; +- linux,stdout-path = &uart0; +- }; +- +- soc { +- ranges = , +- , +- ; +- +- internal-regs { +- pinctrl: pinctrl@10000 { +- pinctrl-names = "default"; +- +- pmx_led_power: pmx-leds { +- marvell,pins = "mpp0"; +- marvell,function = "gpio"; +- }; +- +- pmx_led_alarm: pmx-leds { +- marvell,pins = "mpp2"; +- marvell,function = "gpio"; +- }; +- +- pmx_led_info: pmx-leds { +- marvell,pins = "mpp3"; +- marvell,function = "gpio"; +- }; +- +- pmx_power_hdd: pmx-power-hdd { +- marvell,pins = "mpp1"; +- marvell,function = "gpio"; +- }; +- +- pmx_usb_power: pmx-usb-power { +- marvell,pins = "mpp9"; +- marvell,function = "gpio"; +- }; +- +- pmx_sata0: pmx-sata0 { +- marvell,pins = "mpp12"; +- marvell,function = "sata0"; +- }; +- +- pmx_sata1: pmx-sata1 { +- marvell,pins = "mpp13"; +- marvell,function = "sata1"; +- }; +- +- pmx_fan_high: pmx-fan-high { +- marvell,pins = "mpp14"; +- marvell,function = "gpio"; +- }; +- +- pmx_fan_low: pmx-fan-low { +- marvell,pins = "mpp17"; +- marvell,function = "gpio"; +- }; +- +- pmx_fan_lock: pmx-fan-lock { +- marvell,pins = "mpp6"; +- marvell,function = "gpio"; +- }; +- +- pmx_power_switch: pmx-power-switch { +- marvell,pins = "mpp8", "mpp10"; +- marvell,function = "gpio"; +- }; +- }; +- }; +- }; +- + gpio_keys { +- compatible = "gpio-keys"; +- #address-cells = <1>; +- #size-cells = <0>; +- pinctrl-0 = <&pmx_power_switch>; +- pinctrl-names = "default"; +- +- button@1 { +- label = "Power-on Switch"; +- linux,code = ; +- linux,input-type = <5>; ++ power-on-switch { + gpios = <&gpio0 8 GPIO_ACTIVE_LOW>; + }; + +- button@2 { +- label = "Power-auto Switch"; +- linux,code = ; +- linux,input-type = <5>; ++ power-auto-switch { + gpios = <&gpio0 10 GPIO_ACTIVE_LOW>; + }; + }; + + gpio_leds { +- compatible = "gpio-leds"; +- pinctrl-0 = <&pmx_led_power &pmx_led_alarm +- &pmx_led_info>; +- pinctrl-names = "default"; +- +- led@1 { +- label = "lswtgl:blue:power"; ++ blue-power-led { + gpios = <&gpio0 0 GPIO_ACTIVE_LOW>; +- default-state = "keep"; + }; + +- led@2 { +- label = "lswtgl:red:alarm"; ++ red-alarm-led { + gpios = <&gpio0 2 GPIO_ACTIVE_LOW>; + }; + +- led@3 { +- label = "lswtgl:amber:info"; ++ amber-info-led { + gpios = <&gpio0 3 GPIO_ACTIVE_LOW>; + }; + }; + + gpio_fan { +- compatible = "gpio-fan"; +- pinctrl-0 = <&pmx_fan_low &pmx_fan_high &pmx_fan_lock>; +- pinctrl-names = "default"; +- + gpios = <&gpio0 14 GPIO_ACTIVE_LOW + &gpio0 17 GPIO_ACTIVE_LOW>; + +- gpio-fan,speed-map = <0 3 +- 1500 2 +- 3250 1 +- 5000 0>; +- + alarm-gpios = <&gpio0 6 GPIO_ACTIVE_HIGH>; + }; ++}; + +- restart_poweroff { +- compatible = "restart-poweroff"; ++&pinctrl { ++ pmx_led_power: pmx-leds { ++ marvell,pins = "mpp0"; ++ marvell,function = "gpio"; + }; + +- regulators { +- compatible = "simple-bus"; +- #address-cells = <1>; +- #size-cells = <0>; +- pinctrl-0 = <&pmx_power_hdd &pmx_usb_power>; +- pinctrl-names = "default"; +- +- usb_power: regulator@1 { +- compatible = "regulator-fixed"; +- reg = <1>; +- regulator-name = "USB Power"; +- regulator-min-microvolt = <5000000>; +- regulator-max-microvolt = <5000000>; +- enable-active-high; +- regulator-always-on; +- regulator-boot-on; +- gpios = <&gpio0 9 GPIO_ACTIVE_HIGH>; +- }; ++ pmx_power_hdd: pmx-power-hdd { ++ marvell,pins = "mpp1"; ++ marvell,function = "gpio"; ++ }; + +- hdd_power: regulator@2 { +- compatible = "regulator-fixed"; +- reg = <2>; +- regulator-name = "HDD Power"; +- regulator-min-microvolt = <5000000>; +- regulator-max-microvolt = <5000000>; +- enable-active-high; +- regulator-always-on; +- regulator-boot-on; +- gpios = <&gpio0 1 GPIO_ACTIVE_HIGH>; +- }; ++ pmx_led_alarm: pmx-leds { ++ marvell,pins = "mpp2"; ++ marvell,function = "gpio"; + }; +-}; + +-&devbus_bootcs { +- status = "okay"; +- devbus,keep-config; +- +- flash@0 { +- compatible = "jedec-flash"; +- reg = <0 0x40000>; +- bank-width = <1>; +- +- partitions { +- compatible = "fixed-partitions"; +- #address-cells = <1>; +- #size-cells = <1>; +- +- header@0 { +- reg = <0 0x30000>; +- read-only; +- }; +- +- uboot@30000 { +- reg = <0x30000 0xF000>; +- read-only; +- }; +- +- uboot_env@3F000 { +- reg = <0x3F000 0x1000>; +- }; +- }; ++ pmx_led_info: pmx-leds { ++ marvell,pins = "mpp3"; ++ marvell,function = "gpio"; + }; +-}; + +-&mdio { +- status = "okay"; ++ pmx_fan_lock: pmx-fan-lock { ++ marvell,pins = "mpp6"; ++ marvell,function = "gpio"; ++ }; + +- ethphy: ethernet-phy { +- reg = <8>; ++ pmx_power_switch: pmx-power-switch { ++ marvell,pins = "mpp8", "mpp10"; ++ marvell,function = "gpio"; + }; +-}; + +-ð { +- status = "okay"; ++ pmx_power_usb: pmx-power-usb { ++ marvell,pins = "mpp9"; ++ marvell,function = "gpio"; ++ }; + +- ethernet-port@0 { +- phy-handle = <ðphy>; ++ pmx_fan_high: pmx-fan-high { ++ marvell,pins = "mpp14"; ++ marvell,function = "gpio"; + }; +-}; + +-&ehci0 { +- status = "okay"; ++ pmx_fan_low: pmx-fan-low { ++ marvell,pins = "mpp17"; ++ marvell,function = "gpio"; ++ }; + }; + +-&i2c { +- status = "okay"; +- +- rtc { +- compatible = "ricoh,rs5c372a"; +- reg = <0x32>; +- }; ++&hdd_power { ++ gpios = <&gpio0 1 GPIO_ACTIVE_HIGH>; + }; + +-&wdt { +- status = "disabled"; ++&usb_power { ++ gpios = <&gpio0 9 GPIO_ACTIVE_HIGH>; + }; + + &sata { +- pinctrl-0 = <&pmx_sata0 &pmx_sata1>; +- pinctrl-names = "default"; +- status = "okay"; + nr-ports = <2>; + }; +- +-&uart0 { +- status = "okay"; +-}; +--- /dev/null ++++ b/arch/arm/boot/dts/orion5x-linkstation.dtsi +@@ -0,0 +1,180 @@ ++/* ++ * Device Tree common file for orion5x based Buffalo Linkstation ++ * ++ * Copyright (C) 2015, 2016 ++ * Roger Shimizu ++ * ++ * This file is dual-licensed: you can use it either under the terms ++ * of the GPL or the X11 license, at your option. Note that this dual ++ * licensing only applies to this file, and not this project as a ++ * whole. ++ * ++ * a) This file is free software; you can redistribute it and/or ++ * modify it under the terms of the GNU General Public License as ++ * published by the Free Software Foundation; either version 2 of the ++ * License, or (at your option) any later version. ++ * ++ * This file is distributed in the hope that it will be useful ++ * but WITHOUT ANY WARRANTY; without even the implied warranty of ++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++ * GNU General Public License for more details. ++ * ++ * Or, alternatively ++ * ++ * b) Permission is hereby granted, free of charge, to any person ++ * obtaining a copy of this software and associated documentation ++ * files (the "Software"), to deal in the Software without ++ * restriction, including without limitation the rights to use ++ * copy, modify, merge, publish, distribute, sublicense, and/or ++ * sell copies of the Software, and to permit persons to whom the ++ * Software is furnished to do so, subject to the following ++ * conditions: ++ * ++ * The above copyright notice and this permission notice shall be ++ * included in all copies or substantial portions of the Software. ++ * ++ * THE SOFTWARE IS PROVIDED , WITHOUT WARRANTY OF ANY KIND ++ * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES ++ * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND ++ * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT ++ * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY ++ * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING ++ * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR ++ * OTHER DEALINGS IN THE SOFTWARE. ++ */ ++ ++#include "orion5x-mv88f5182.dtsi" ++ ++/ { ++ chosen { ++ bootargs = "console=ttyS0,115200n8 earlyprintk"; ++ linux,stdout-path = &uart0; ++ }; ++ ++ soc { ++ ranges = , ++ , ++ ; ++ }; ++ ++ restart_poweroff { ++ compatible = "restart-poweroff"; ++ }; ++ ++ regulators { ++ compatible = "simple-bus"; ++ #address-cells = <1>; ++ #size-cells = <0>; ++ pinctrl-0 = <&pmx_power_usb &pmx_power_hdd>; ++ pinctrl-names = "default"; ++ ++ usb_power: regulator@1 { ++ compatible = "regulator-fixed"; ++ reg = <1>; ++ regulator-name = "USB Power"; ++ regulator-min-microvolt = <5000000>; ++ regulator-max-microvolt = <5000000>; ++ enable-active-high; ++ regulator-always-on; ++ regulator-boot-on; ++ }; ++ ++ hdd_power: regulator@2 { ++ compatible = "regulator-fixed"; ++ reg = <2>; ++ regulator-name = "HDD Power"; ++ regulator-min-microvolt = <5000000>; ++ regulator-max-microvolt = <5000000>; ++ enable-active-high; ++ regulator-always-on; ++ regulator-boot-on; ++ }; ++ }; ++}; ++ ++&pinctrl { ++ pmx_power_hdd: pmx-power-hdd { ++ marvell,function = "gpio"; ++ }; ++ ++ pmx_power_usb: pmx-power-usb { ++ marvell,function = "gpio"; ++ }; ++}; ++ ++&devbus_bootcs { ++ status = "okay"; ++ devbus,keep-config; ++ ++ flash@0 { ++ compatible = "jedec-flash"; ++ reg = <0 0x40000>; ++ bank-width = <1>; ++ ++ partitions { ++ compatible = "fixed-partitions"; ++ #address-cells = <1>; ++ #size-cells = <1>; ++ ++ header@0 { ++ reg = <0 0x30000>; ++ read-only; ++ }; ++ ++ uboot@30000 { ++ reg = <0x30000 0xF000>; ++ read-only; ++ }; ++ ++ uboot_env@3F000 { ++ reg = <0x3F000 0x1000>; ++ }; ++ }; ++ }; ++}; ++ ++&mdio { ++ status = "okay"; ++ ++ ethphy: ethernet-phy { ++ reg = <8>; ++ }; ++}; ++ ++ð { ++ status = "okay"; ++ ++ ethernet-port@0 { ++ phy-handle = <ðphy>; ++ }; ++}; ++ ++&ehci0 { ++ status = "okay"; ++}; ++ ++&i2c { ++ status = "okay"; ++ ++ rtc { ++ compatible = "ricoh,rs5c372a"; ++ reg = <0x32>; ++ }; ++}; ++ ++&wdt { ++ status = "disabled"; ++}; ++ ++&sata { ++ status = "okay"; ++ nr-ports = <1>; ++}; ++ ++&uart0 { ++ status = "okay"; ++}; ++ ++&uart1 { ++ status = "okay"; ++}; diff --git a/debian/patches/series b/debian/patches/series index eff715db2..3b197417d 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -50,6 +50,13 @@ features/mips/MIPS-octeon-Add-support-for-the-UBNT-E200-board.patch features/x86/x86-memtest-WARN-if-bad-RAM-found.patch features/x86/x86-make-x32-syscall-support-conditional.patch features/sparc/hwrng-n2-attach-on-t5-m5-t7-m7-sparc-cpus.patch +features/arm/device-tree/ARM-dts-imx6dlq-wandboard-revb1.dts-use-unique-model-id.patch +features/arm/device-tree/ARM-dts-kirkwood-relicense-dts-of-ls-wvl-vl-and-ls-wxl-ws.patch +features/arm/device-tree/ARM-dts-kirkwood-split-lswxl-dts-to-linkstation-lswsxl-an.patch +features/arm/device-tree/ARM-dts-kirkwood-split-lswvl-dts-to-linkstation-lsvl-and-.patch +features/arm/device-tree/ARM-dts-kirkwood-add-for-buffalo-linkstation-ls-qvl.patch +features/arm/device-tree/ARM-dts-orion5x-split-linkstation-lswtgl-into-common-and-.patch +features/arm/device-tree/ARM-dts-orion5x-add-for-buffalo-linkstation-ls-gl.patch # Miscellaneous bug fixes bugfix/all/misc-bmp085-Enable-building-as-a-module.patch @@ -76,3 +83,5 @@ bugfix/x86/x86-efi-setup-separate-efi-page-tables-in-kexec-path.patch debian/i386-686-pae-pci-set-pci-nobios-by-default.patch bugfix/x86/x86-efi-bgrt-fix-kernel-panic-when-mapping-bgrt-data.patch bugfix/x86/x86-efi-bgrt-replace-early_memremap-with-memremap.patch +bugfix/all/uas-fix-high-order-alloc.patch +bugfix/all/revert-drm-radeon-call-hpd_irq_event-on-resume.patch