Commit dfdc1de6 authored by Linus Torvalds's avatar Linus Torvalds
Browse files
Pull staging driver updates from Greg KH:
 "Here is the big set of staging driver updates for 5.18-rc1.

  Loads of tiny cleanups for almost all staging drivers in here, nothing
  major at all. Highlights include:

   - remove the ashmem Android driver. It is long-dead and if there are
     any legacy userspace applications still using it, the Android
     kernel images will maintain it, the community shouldn't care about
     it anymore

   - wfx wifi driver major cleanups. Should be ready to merge out of
     staging soon, and will coordinate with the wifi maintainers after
     -rc1 is out

   - major cleanups and unwinding of the layers of the r8188eu driver.
     It's amazing just how many unneeded layers of abstraction is in
     there, just when we think it's done, another is found...

   - lots of tiny coding style cleanups in many other staging drivers.

  All have been in linux-next for a while with no reported problems"

* tag 'staging-5.18-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging: (455 commits)
  staging: r8188eu: remove unnecessary memset in r8188eu
  staging: greybus: introduce pwm_ops::apply
  staging: rts5208: Resolve checkpatch.pl issues.
  staging: sm750fb: fix naming style
  staging: fbtft: Consider type of init sequence values in fbtft_init_display()
  staging: fbtft: Constify buf parameter in fbtft_dbg_hex()
  staging: mmal-vchiq: clear redundant item named bulk_scratch
  mips: dts: ralink: add MT7621 SoC
  staging: r8188eu: remove some unused local ieee80211 macros
  staging: r8188eu: make rtl8188e_process_phy_info static
  staging: r8188eu: remove unused function prototype
  staging: r8188eu: remove three unused receive defines
  staging: r8188eu: remove unnecessary initializations
  staging: rtl8192e: Fix spelling mistake "RESQUEST" -> "REQUEST"
  MAINTAINERS: remove the obsolete file entry for staging in ANDROID DRIVERS
  staging: r8188eu: proper error handling in rtw_init_drv_sw
  staging: r8188eu: call _cancel_timer_ex from _rtw_free_recv_priv
  staging: vt6656: Removed unused variable vt3342_vnt_threshold
  staging: vt6656: Removed unused variable bb_vga_0
  staging: remove ashmem
  ...
parents 266d17a8 41197a5f
Loading
Loading
Loading
Loading
+12 −0
Original line number Diff line number Diff line
@@ -22,6 +22,11 @@ description: |

  The clocks are provided inside a system controller node.

  This node is also a reset provider for all the peripherals.

  Reset related bits are defined in:
  [2]: <include/dt-bindings/reset/mt7621-reset.h>.

properties:
  compatible:
    items:
@@ -37,6 +42,12 @@ properties:
      clocks.
    const: 1

  "#reset-cells":
    description:
      The first cell indicates the reset bit within the register, see
      [2] for available resets.
    const: 1

  ralink,memctl:
    $ref: /schemas/types.yaml#/definitions/phandle
    description:
@@ -61,6 +72,7 @@ examples:
      compatible = "mediatek,mt7621-sysc", "syscon";
      reg = <0x0 0x100>;
      #clock-cells = <1>;
      #reset-cells = <1>;
      ralink,memctl = <&memc>;
      clock-output-names = "xtal", "cpu", "bus",
                           "50m", "125m", "150m",
+47 −35
Original line number Diff line number Diff line
@@ -3,7 +3,7 @@
%YAML 1.2
---

$id: http://devicetree.org/schemas/net/wireless/silabs,wfx.yaml#
$id: http://devicetree.org/schemas/staging/net/wireless/silabs,wfx.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Silicon Labs WFxxx devicetree bindings
@@ -11,67 +11,79 @@ title: Silicon Labs WFxxx devicetree bindings
maintainers:
  - Jérôme Pouiller <jerome.pouiller@silabs.com>

description:
  The WFxxx chip series can be connected via SPI or via SDIO.
description: >
  Support for the Wifi chip WFxxx from Silicon Labs. Currently, the only device
  from the WFxxx series is the WF200 described here:
     https://www.silabs.com/documents/public/data-sheets/wf200-datasheet.pdf

  The WF200 can be connected via SPI or via SDIO.

  For SDIO':'
  For SDIO:

    The driver is able to detect a WFxxx chip on SDIO bus by matching its Vendor
    ID and Product ID. However, driver will only provide limited features in
    this case. Thus declaring WFxxx chip in device tree is recommended (and may
    become mandatory in the future).
    Declaring the WFxxx chip in device tree is mandatory (usually, the VID/PID is
    sufficient for the SDIO devices).

    In addition, it is recommended to declare a mmc-pwrseq on SDIO host above
    WFx. Without it, you may encounter issues with warm boot. The mmc-pwrseq
    should be compatible with mmc-pwrseq-simple. Please consult
    It is recommended to declare a mmc-pwrseq on SDIO host above WFx. Without
    it, you may encounter issues during reboot. The mmc-pwrseq should be
    compatible with mmc-pwrseq-simple. Please consult
    Documentation/devicetree/bindings/mmc/mmc-pwrseq-simple.yaml for more
    information.

  For SPI':'
  For SPI:

    In add of the properties below, please consult
    Documentation/devicetree/bindings/spi/spi-controller.yaml for optional SPI
    related properties.

  Note that in add of the properties below, the WFx driver also supports
  `mac-address` and `local-mac-address` as described in
  Documentation/devicetree/bindings/net/ethernet.txt

properties:
  compatible:
    const: silabs,wf200
    items:
      - enum:
          - silabs,brd4001a # WGM160P Evaluation Board
          - silabs,brd8022a # WF200 Evaluation Board
          - silabs,brd8023a # WFM200 Evaluation Board
      - const: silabs,wf200 # Chip alone without antenna

  reg:
    description:
      When used on SDIO bus, <reg> must be set to 1. When used on SPI bus, it is
      the chip select address of the device as defined in the SPI devices
      bindings.
    maxItems: 1
  spi-max-frequency:
    description: (SPI only) Maximum SPI clocking speed of device in Hz.
    maxItems: 1

  spi-max-frequency: true

  interrupts:
    description: The interrupt line. Triggers IRQ_TYPE_LEVEL_HIGH and
      IRQ_TYPE_EDGE_RISING are both supported by the chip and the driver. When
      SPI is used, this property is required. When SDIO is used, the "in-band"
    description: The interrupt line. Should be IRQ_TYPE_EDGE_RISING. When SPI is
      used, this property is required. When SDIO is used, the "in-band"
      interrupt provided by the SDIO bus is used unless an interrupt is defined
      in the Device Tree.
    maxItems: 1

  reset-gpios:
    description: (SPI only) Phandle of gpio that will be used to reset chip
      during probe. Without this property, you may encounter issues with warm
      boot. (For legacy purpose, the gpio in inverted when compatible ==
      "silabs,wfx-spi")
      boot.

      For SDIO, the reset gpio should declared using a mmc-pwrseq.
    maxItems: 1

  wakeup-gpios:
    description: Phandle of gpio that will be used to wake-up chip. Without this
      property, driver will disable most of power saving features.
    maxItems: 1
  config-file:
    description: Use an alternative file as PDS. Default is `wf200.pds`. Only
      necessary for development/debug purpose.
    maxItems: 1

  silabs,antenna-config-file:
    $ref: /schemas/types.yaml#/definitions/string
    description: Use an alternative file for antenna configuration (aka
      "Platform Data Set" in Silabs jargon). Default depends of "compatible"
      string. For "silabs,wf200", the default is 'wf200.pds'.

  local-mac-address: true

  mac-address: true

additionalProperties: false

required:
  - compatible
@@ -82,12 +94,12 @@ examples:
    #include <dt-bindings/gpio/gpio.h>
    #include <dt-bindings/interrupt-controller/irq.h>

    spi0 {
    spi {
        #address-cells = <1>;
        #size-cells = <0>;

        wfx@0 {
            compatible = "silabs,wf200";
        wifi@0 {
            compatible = "silabs,brd8022a", "silabs,wf200";
            pinctrl-names = "default";
            pinctrl-0 = <&wfx_irq &wfx_gpios>;
            reg = <0>;
@@ -109,13 +121,13 @@ examples:
        reset-gpios = <&gpio 13 GPIO_ACTIVE_LOW>;
    };

    mmc0 {
    mmc {
        mmc-pwrseq = <&wfx_pwrseq>;
        #address-cells = <1>;
        #size-cells = <0>;

        mmc@1 {
            compatible = "silabs,wf200";
        wifi@1 {
            compatible = "silabs,brd8022a", "silabs,wf200";
            pinctrl-names = "default";
            pinctrl-0 = <&wfx_wakeup>;
            reg = <1>;
+8 −1
Original line number Diff line number Diff line
@@ -1325,7 +1325,6 @@ L: linux-kernel@vger.kernel.org
S:	Supported
T:	git git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging.git
F:	drivers/android/
F:	drivers/staging/android/
ANDROID GOLDFISH PIC DRIVER
M:	Miodrag Dinic <miodrag.dinic@mips.com>
@@ -16460,6 +16459,13 @@ L: linux-mips@vger.kernel.org
S:	Maintained
F:	arch/mips/ralink
RALINK MT7621 MIPS ARCHITECTURE
M:	Arınç ÜNAL <arinc.unal@arinc9.com>
M:	Sergio Paracuellos <sergio.paracuellos@gmail.com>
L:	linux-mips@vger.kernel.org
S:	Maintained
F:	arch/mips/boot/dts/ralink/mt7621*
RALINK RT2X00 WIRELESS LAN DRIVER
M:	Stanislaw Gruszka <stf_xl@wp.pl>
M:	Helmut Schaa <helmut.schaa@googlemail.com>
@@ -17940,6 +17946,7 @@ F: drivers/platform/x86/touchscreen_dmi.c
SILICON LABS WIRELESS DRIVERS (for WFxxx series)
M:	Jérôme Pouiller <jerome.pouiller@silabs.com>
S:	Supported
F:	Documentation/devicetree/bindings/staging/net/wireless/silabs,wfx.yaml
F:	drivers/staging/wfx/
SILICON MOTION SM712 FRAME BUFFER DRIVER
+4 −0
Original line number Diff line number Diff line
@@ -6,4 +6,8 @@ dtb-$(CONFIG_DTB_MT7620A_EVAL) += mt7620a_eval.dtb
dtb-$(CONFIG_DTB_OMEGA2P)	+= omega2p.dtb
dtb-$(CONFIG_DTB_VOCORE2)	+= vocore2.dtb

dtb-$(CONFIG_SOC_MT7621) += \
	mt7621-gnubee-gb-pc1.dtb \
	mt7621-gnubee-gb-pc2.dtb

obj-$(CONFIG_BUILTIN_DTB)	+= $(addsuffix .o, $(dtb-y))
+22 −22
Original line number Diff line number Diff line
@@ -12,7 +12,8 @@

	memory@0 {
		device_type = "memory";
		reg = <0x0 0x1c000000>, <0x20000000 0x4000000>;
		reg = <0x00000000 0x1c000000>,
		      <0x20000000 0x04000000>;
	};

	chosen {
@@ -38,24 +39,16 @@
	gpio-leds {
		compatible = "gpio-leds";

		system {
			label = "gb-pc1:green:system";
		power {
			label = "green:power";
			gpios = <&gpio 6 GPIO_ACTIVE_LOW>;
			linux,default-trigger = "default-on";
		};

		status {
			label = "gb-pc1:green:status";
		system {
			label = "green:system";
			gpios = <&gpio 8 GPIO_ACTIVE_LOW>;
		};

		lan1 {
			label = "gb-pc1:green:lan1";
			gpios = <&gpio 24 GPIO_ACTIVE_LOW>;
		};

		lan2 {
			label = "gb-pc1:green:lan2";
			gpios = <&gpio 25 GPIO_ACTIVE_LOW>;
			linux,default-trigger = "disk-activity";
		};
	};
};
@@ -95,9 +88,8 @@

		partition@50000 {
			label = "firmware";
			reg = <0x50000 0x1FB0000>;
			reg = <0x50000 0x1fb0000>;
		};

	};
};

@@ -106,23 +98,31 @@
};

&pinctrl {
	state_default: pinctrl0 {
		default_gpio: gpio {
			groups = "wdt", "rgmii2", "uart3";
	pinctrl-names = "default";
	pinctrl-0 = <&state_default>;

	state_default: state-default {
		gpio-pinmux {
			groups = "rgmii2", "uart3", "wdt";
			function = "gpio";
		};
	};
};

&ethernet {
	pinctrl-0 = <&mdio_pins>, <&rgmii1_pins>;
};

&switch0 {
	ports {
		port@0 {
			status = "okay";
			label = "ethblack";
			status = "ok";
		};

		port@4 {
			status = "okay";
			label = "ethblue";
			status = "ok";
		};
	};
};
Loading