* [PATCH v4 0/5] platform/surface: Create a platform subdirectory for Microsoft Surface devices
@ 2020-10-09 14:11 Maximilian Luz
2020-10-09 14:11 ` [PATCH v4 1/5] platform: Add Surface platform directory Maximilian Luz
` (5 more replies)
0 siblings, 6 replies; 9+ messages in thread
From: Maximilian Luz @ 2020-10-09 14:11 UTC (permalink / raw)
To: platform-driver-x86
Cc: Andy Shevchenko, Darren Hart, Hans de Goede, Mark Gross,
Mika Westerberg, Gayatri Kammela, Enric Balletbo i Serra,
Blaž Hrastnik, Stephen Just, Dan Carpenter,
Benjamin Tissoires, Chen Yu, linux-kernel, Maximilian Luz
As has come up in the discussion around
[RFC PATCH] Add support for Microsoft Surface System Aggregator Module
it may make sense to add a Microsoft Surface specific platform
subdirectory. Andy has suggested drivers/platform/surface for that.
This series follows said suggestion and creates that subdirectory, as
well as moves Microsoft Surface related drivers over to it and updates
their MAINTAINERS entries (if available) accordingly.
This series does not modify any existing driver code, symbols, or help
text.
More details regarding maintainership can be found in
[PATCH v4 1/5] platform: Add Surface platform directory
Thanks,
Max
Link to discussion:
https://lore.kernel.org/lkml/CAHp75Vfp86h38Rd-VEgER7ASADdmz5ymAkuHvD0Q6WPDqZBqHw@mail.gmail.com/
Cc: Hans de Goede <hdegoede@redhat.com>
Cc: Andy Shevchenko <andy.shevchenko@gmail.com>
Changes in v2:
- Rebase onto linux-platform-drivers-x86/for-next to incorporate
changes in Maintainer file.
Changes in v3:
- Add separate MAINTAINERS entry for platform/surface
- Add Maximilian Luz as reviewer for platform/surface
Changes in v4:
- Rebase onto platform-drivers-x86/for-next.
- Restructure MAINTAINERS entry and Kconfig option to be more similar
to platform/chrome.
- Drop placeholder comments.
For more details regarding changes, refer to the individual patches.
P.S: for Andy:
I have not added your Rb tag for 1 and 2 as I was not completely sure
that the changes are as you intended.
Maximilian Luz (5):
platform: Add Surface platform directory
platform/surface: Move Surface 3 WMI driver to platform/surface
platform/surface: Move Surface 3 Button driver to platform/surface
platform/surface: Move Surface 3 Power OpRegion driver to
platform/surface
platform/surface: Move Surface Pro 3 Button driver to platform/surface
MAINTAINERS | 11 ++++-
drivers/platform/Kconfig | 2 +
drivers/platform/Makefile | 1 +
drivers/platform/surface/Kconfig | 49 +++++++++++++++++++
drivers/platform/surface/Makefile | 10 ++++
.../platform/{x86 => surface}/surface3-wmi.c | 0
.../{x86 => surface}/surface3_button.c | 0
.../{x86 => surface}/surface3_power.c | 0
.../{x86 => surface}/surfacepro3_button.c | 0
drivers/platform/x86/Kconfig | 31 ------------
drivers/platform/x86/Makefile | 6 ---
11 files changed, 72 insertions(+), 38 deletions(-)
create mode 100644 drivers/platform/surface/Kconfig
create mode 100644 drivers/platform/surface/Makefile
rename drivers/platform/{x86 => surface}/surface3-wmi.c (100%)
rename drivers/platform/{x86 => surface}/surface3_button.c (100%)
rename drivers/platform/{x86 => surface}/surface3_power.c (100%)
rename drivers/platform/{x86 => surface}/surfacepro3_button.c (100%)
--
2.28.0
^ permalink raw reply [flat|nested] 9+ messages in thread
* [PATCH v4 1/5] platform: Add Surface platform directory
2020-10-09 14:11 [PATCH v4 0/5] platform/surface: Create a platform subdirectory for Microsoft Surface devices Maximilian Luz
@ 2020-10-09 14:11 ` Maximilian Luz
2020-10-09 14:25 ` Andy Shevchenko
2020-10-09 14:11 ` [PATCH v4 2/5] platform/surface: Move Surface 3 WMI driver to platform/surface Maximilian Luz
` (4 subsequent siblings)
5 siblings, 1 reply; 9+ messages in thread
From: Maximilian Luz @ 2020-10-09 14:11 UTC (permalink / raw)
To: platform-driver-x86
Cc: Andy Shevchenko, Darren Hart, Hans de Goede, Mark Gross,
Mika Westerberg, Gayatri Kammela, Enric Balletbo i Serra,
Blaž Hrastnik, Stephen Just, Dan Carpenter,
Benjamin Tissoires, Chen Yu, linux-kernel, Maximilian Luz
It may make sense to split the Microsoft Surface hardware platform
drivers out to a separate subdirectory, since some of it may be shared
between ARM and x86 in the future (regarding devices like the Surface
Pro X).
Further, newer Surface devices will require additional platform drivers
for fundamental support (mostly regarding their embedded controller),
which may also warrant this split from a size perspective.
This commit introduces a new platform/surface subdirectory for the
Surface device family, with subsequent commits moving existing Surface
drivers over from platform/x86.
A new MAINTAINERS entry is added for this directory. Patches to files in
this directory will be taken up by the platform-drivers-x86 team (i.e.
Hans de Goede and Mark Gross) after they have been reviewed by
Maximilian Luz.
Signed-off-by: Maximilian Luz <luzmaximilian@gmail.com>
---
Changes in v2:
- Do not create a separate MAINTAINERS entry for platform/surface.
Instead add drivers/platform/surface to x86 platform drivers entry.
This incorporates recent changes in the x86 platform driver
MAINTAINERS entry.
- Fix typo in commit message.
Changes in v3:
- Add separate MAINTAINERS entry for platform/surface
- Add Maximilian Luz as reviewer for platform/surface
Changes in v4:
- Rename MAINTAINERS entry to be similar to platform/chrome.
- Rename Kconfig options to be similar to platform/chrome
(PLATFORM -> PLATFORMS)
- Drop placeholder comments.
---
MAINTAINERS | 9 +++++++++
drivers/platform/Kconfig | 2 ++
drivers/platform/Makefile | 1 +
drivers/platform/surface/Kconfig | 14 ++++++++++++++
drivers/platform/surface/Makefile | 5 +++++
5 files changed, 31 insertions(+)
create mode 100644 drivers/platform/surface/Kconfig
create mode 100644 drivers/platform/surface/Makefile
diff --git a/MAINTAINERS b/MAINTAINERS
index 2a2170ff3a91..9fea3ce2db2d 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -11532,6 +11532,15 @@ F: drivers/scsi/smartpqi/smartpqi*.[ch]
F: include/linux/cciss*.h
F: include/uapi/linux/cciss*.h
+MICROSOFT SURFACE HARDWARE PLATFORM SUPPORT
+M: Hans de Goede <hdegoede@redhat.com>
+M: Mark Gross <mgross@linux.intel.com>
+M: Maximilian Luz <luzmaximilian@gmail.com>
+L: platform-driver-x86@vger.kernel.org
+S: Maintained
+T: git git://git.kernel.org/pub/scm/linux/kernel/git/pdx86/platform-drivers-x86.git
+F: drivers/platform/surface/
+
MICROSOFT SURFACE PRO 3 BUTTON DRIVER
M: Chen Yu <yu.c.chen@intel.com>
L: platform-driver-x86@vger.kernel.org
diff --git a/drivers/platform/Kconfig b/drivers/platform/Kconfig
index 971426bb4302..18fc6a08569e 100644
--- a/drivers/platform/Kconfig
+++ b/drivers/platform/Kconfig
@@ -13,3 +13,5 @@ source "drivers/platform/chrome/Kconfig"
source "drivers/platform/mellanox/Kconfig"
source "drivers/platform/olpc/Kconfig"
+
+source "drivers/platform/surface/Kconfig"
diff --git a/drivers/platform/Makefile b/drivers/platform/Makefile
index 6fda58c021ca..4de08ef4ec9d 100644
--- a/drivers/platform/Makefile
+++ b/drivers/platform/Makefile
@@ -9,3 +9,4 @@ obj-$(CONFIG_MIPS) += mips/
obj-$(CONFIG_OLPC_EC) += olpc/
obj-$(CONFIG_GOLDFISH) += goldfish/
obj-$(CONFIG_CHROME_PLATFORMS) += chrome/
+obj-$(CONFIG_SURFACE_PLATFORMS) += surface/
diff --git a/drivers/platform/surface/Kconfig b/drivers/platform/surface/Kconfig
new file mode 100644
index 000000000000..b67926ece95f
--- /dev/null
+++ b/drivers/platform/surface/Kconfig
@@ -0,0 +1,14 @@
+# SPDX-License-Identifier: GPL-2.0-only
+#
+# Microsoft Surface Platform-Specific Drivers
+#
+
+menuconfig SURFACE_PLATFORMS
+ bool "Microsoft Surface Platform-Specific Device Drivers"
+ default y
+ help
+ Say Y here to get to see options for platform-specific device drivers
+ for Microsoft Surface devices. This option alone does not add any
+ kernel code.
+
+ If you say N, all options in this submenu will be skipped and disabled.
diff --git a/drivers/platform/surface/Makefile b/drivers/platform/surface/Makefile
new file mode 100644
index 000000000000..3700f9e84299
--- /dev/null
+++ b/drivers/platform/surface/Makefile
@@ -0,0 +1,5 @@
+# SPDX-License-Identifier: GPL-2.0
+#
+# Makefile for linux/drivers/platform/surface
+# Microsoft Surface Platform-Specific Drivers
+#
--
2.28.0
^ permalink raw reply related [flat|nested] 9+ messages in thread
* [PATCH v4 2/5] platform/surface: Move Surface 3 WMI driver to platform/surface
2020-10-09 14:11 [PATCH v4 0/5] platform/surface: Create a platform subdirectory for Microsoft Surface devices Maximilian Luz
2020-10-09 14:11 ` [PATCH v4 1/5] platform: Add Surface platform directory Maximilian Luz
@ 2020-10-09 14:11 ` Maximilian Luz
2020-10-09 14:26 ` Andy Shevchenko
2020-10-09 14:11 ` [PATCH v4 3/5] platform/surface: Move Surface 3 Button " Maximilian Luz
` (3 subsequent siblings)
5 siblings, 1 reply; 9+ messages in thread
From: Maximilian Luz @ 2020-10-09 14:11 UTC (permalink / raw)
To: platform-driver-x86
Cc: Andy Shevchenko, Darren Hart, Hans de Goede, Mark Gross,
Mika Westerberg, Gayatri Kammela, Enric Balletbo i Serra,
Blaž Hrastnik, Stephen Just, Dan Carpenter,
Benjamin Tissoires, Chen Yu, linux-kernel, Maximilian Luz
Move the Surface 3 WMI driver from platform/x86 to the newly created
platform/surface directory.
Signed-off-by: Maximilian Luz <luzmaximilian@gmail.com>
---
drivers/platform/surface/Kconfig | 16 ++++++++++++++++
drivers/platform/surface/Makefile | 2 ++
drivers/platform/{x86 => surface}/surface3-wmi.c | 0
drivers/platform/x86/Kconfig | 12 ------------
drivers/platform/x86/Makefile | 1 -
5 files changed, 18 insertions(+), 13 deletions(-)
rename drivers/platform/{x86 => surface}/surface3-wmi.c (100%)
diff --git a/drivers/platform/surface/Kconfig b/drivers/platform/surface/Kconfig
index b67926ece95f..326f7bbf83d7 100644
--- a/drivers/platform/surface/Kconfig
+++ b/drivers/platform/surface/Kconfig
@@ -12,3 +12,19 @@ menuconfig SURFACE_PLATFORMS
kernel code.
If you say N, all options in this submenu will be skipped and disabled.
+
+if SURFACE_PLATFORMS
+
+config SURFACE3_WMI
+ tristate "Surface 3 WMI Driver"
+ depends on ACPI_WMI
+ depends on DMI
+ depends on INPUT
+ depends on SPI
+ help
+ Say Y here if you have a Surface 3.
+
+ To compile this driver as a module, choose M here: the module will
+ be called surface3-wmi.
+
+endif # SURFACE_PLATFORMS
diff --git a/drivers/platform/surface/Makefile b/drivers/platform/surface/Makefile
index 3700f9e84299..f889d521420f 100644
--- a/drivers/platform/surface/Makefile
+++ b/drivers/platform/surface/Makefile
@@ -3,3 +3,5 @@
# Makefile for linux/drivers/platform/surface
# Microsoft Surface Platform-Specific Drivers
#
+
+obj-$(CONFIG_SURFACE3_WMI) += surface3-wmi.o
diff --git a/drivers/platform/x86/surface3-wmi.c b/drivers/platform/surface/surface3-wmi.c
similarity index 100%
rename from drivers/platform/x86/surface3-wmi.c
rename to drivers/platform/surface/surface3-wmi.c
diff --git a/drivers/platform/x86/Kconfig b/drivers/platform/x86/Kconfig
index 0d91d136bc3b..0759913c9846 100644
--- a/drivers/platform/x86/Kconfig
+++ b/drivers/platform/x86/Kconfig
@@ -870,18 +870,6 @@ config INTEL_VBTN
To compile this driver as a module, choose M here: the module will
be called intel_vbtn.
-config SURFACE3_WMI
- tristate "Surface 3 WMI Driver"
- depends on ACPI_WMI
- depends on DMI
- depends on INPUT
- depends on SPI
- help
- Say Y here if you have a Surface 3.
-
- To compile this driver as a module, choose M here: the module will
- be called surface3-wmi.
-
config SURFACE_3_BUTTON
tristate "Power/home/volume buttons driver for Microsoft Surface 3 tablet"
depends on ACPI && KEYBOARD_GPIO && I2C
diff --git a/drivers/platform/x86/Makefile b/drivers/platform/x86/Makefile
index 5f823f7eff45..29563a32b3e3 100644
--- a/drivers/platform/x86/Makefile
+++ b/drivers/platform/x86/Makefile
@@ -82,7 +82,6 @@ obj-$(CONFIG_INTEL_OAKTRAIL) += intel_oaktrail.o
obj-$(CONFIG_INTEL_VBTN) += intel-vbtn.o
# Microsoft
-obj-$(CONFIG_SURFACE3_WMI) += surface3-wmi.o
obj-$(CONFIG_SURFACE_3_BUTTON) += surface3_button.o
obj-$(CONFIG_SURFACE_3_POWER_OPREGION) += surface3_power.o
obj-$(CONFIG_SURFACE_PRO3_BUTTON) += surfacepro3_button.o
--
2.28.0
^ permalink raw reply related [flat|nested] 9+ messages in thread
* [PATCH v4 3/5] platform/surface: Move Surface 3 Button driver to platform/surface
2020-10-09 14:11 [PATCH v4 0/5] platform/surface: Create a platform subdirectory for Microsoft Surface devices Maximilian Luz
2020-10-09 14:11 ` [PATCH v4 1/5] platform: Add Surface platform directory Maximilian Luz
2020-10-09 14:11 ` [PATCH v4 2/5] platform/surface: Move Surface 3 WMI driver to platform/surface Maximilian Luz
@ 2020-10-09 14:11 ` Maximilian Luz
2020-10-09 14:11 ` [PATCH v4 4/5] platform/surface: Move Surface 3 Power OpRegion " Maximilian Luz
` (2 subsequent siblings)
5 siblings, 0 replies; 9+ messages in thread
From: Maximilian Luz @ 2020-10-09 14:11 UTC (permalink / raw)
To: platform-driver-x86
Cc: Andy Shevchenko, Darren Hart, Hans de Goede, Mark Gross,
Mika Westerberg, Gayatri Kammela, Enric Balletbo i Serra,
Blaž Hrastnik, Stephen Just, Dan Carpenter,
Benjamin Tissoires, Chen Yu, linux-kernel, Maximilian Luz
Move the Surface 3 Button driver from platform/x86 to the newly created
platform/surface directory.
Signed-off-by: Maximilian Luz <luzmaximilian@gmail.com>
Reviewed-by: Andy Shevchenko <andy.shevchenko@gmail.com>
---
drivers/platform/surface/Kconfig | 6 ++++++
drivers/platform/surface/Makefile | 1 +
drivers/platform/{x86 => surface}/surface3_button.c | 0
drivers/platform/x86/Kconfig | 6 ------
drivers/platform/x86/Makefile | 1 -
5 files changed, 7 insertions(+), 7 deletions(-)
rename drivers/platform/{x86 => surface}/surface3_button.c (100%)
diff --git a/drivers/platform/surface/Kconfig b/drivers/platform/surface/Kconfig
index 326f7bbf83d7..1a7cf6a73d52 100644
--- a/drivers/platform/surface/Kconfig
+++ b/drivers/platform/surface/Kconfig
@@ -27,4 +27,10 @@ config SURFACE3_WMI
To compile this driver as a module, choose M here: the module will
be called surface3-wmi.
+config SURFACE_3_BUTTON
+ tristate "Power/home/volume buttons driver for Microsoft Surface 3 tablet"
+ depends on ACPI && KEYBOARD_GPIO && I2C
+ help
+ This driver handles the power/home/volume buttons on the Microsoft Surface 3 tablet.
+
endif # SURFACE_PLATFORMS
diff --git a/drivers/platform/surface/Makefile b/drivers/platform/surface/Makefile
index f889d521420f..8588dc178245 100644
--- a/drivers/platform/surface/Makefile
+++ b/drivers/platform/surface/Makefile
@@ -5,3 +5,4 @@
#
obj-$(CONFIG_SURFACE3_WMI) += surface3-wmi.o
+obj-$(CONFIG_SURFACE_3_BUTTON) += surface3_button.o
diff --git a/drivers/platform/x86/surface3_button.c b/drivers/platform/surface/surface3_button.c
similarity index 100%
rename from drivers/platform/x86/surface3_button.c
rename to drivers/platform/surface/surface3_button.c
diff --git a/drivers/platform/x86/Kconfig b/drivers/platform/x86/Kconfig
index 0759913c9846..5fba590a1a67 100644
--- a/drivers/platform/x86/Kconfig
+++ b/drivers/platform/x86/Kconfig
@@ -870,12 +870,6 @@ config INTEL_VBTN
To compile this driver as a module, choose M here: the module will
be called intel_vbtn.
-config SURFACE_3_BUTTON
- tristate "Power/home/volume buttons driver for Microsoft Surface 3 tablet"
- depends on ACPI && KEYBOARD_GPIO && I2C
- help
- This driver handles the power/home/volume buttons on the Microsoft Surface 3 tablet.
-
config SURFACE_3_POWER_OPREGION
tristate "Surface 3 battery platform operation region support"
depends on ACPI && I2C
diff --git a/drivers/platform/x86/Makefile b/drivers/platform/x86/Makefile
index 29563a32b3e3..0fd70d5d2cf3 100644
--- a/drivers/platform/x86/Makefile
+++ b/drivers/platform/x86/Makefile
@@ -82,7 +82,6 @@ obj-$(CONFIG_INTEL_OAKTRAIL) += intel_oaktrail.o
obj-$(CONFIG_INTEL_VBTN) += intel-vbtn.o
# Microsoft
-obj-$(CONFIG_SURFACE_3_BUTTON) += surface3_button.o
obj-$(CONFIG_SURFACE_3_POWER_OPREGION) += surface3_power.o
obj-$(CONFIG_SURFACE_PRO3_BUTTON) += surfacepro3_button.o
--
2.28.0
^ permalink raw reply related [flat|nested] 9+ messages in thread
* [PATCH v4 4/5] platform/surface: Move Surface 3 Power OpRegion driver to platform/surface
2020-10-09 14:11 [PATCH v4 0/5] platform/surface: Create a platform subdirectory for Microsoft Surface devices Maximilian Luz
` (2 preceding siblings ...)
2020-10-09 14:11 ` [PATCH v4 3/5] platform/surface: Move Surface 3 Button " Maximilian Luz
@ 2020-10-09 14:11 ` Maximilian Luz
2020-10-09 14:11 ` [PATCH v4 5/5] platform/surface: Move Surface Pro 3 Button " Maximilian Luz
2020-10-27 11:54 ` [PATCH v4 0/5] platform/surface: Create a platform subdirectory for Microsoft Surface devices Hans de Goede
5 siblings, 0 replies; 9+ messages in thread
From: Maximilian Luz @ 2020-10-09 14:11 UTC (permalink / raw)
To: platform-driver-x86
Cc: Andy Shevchenko, Darren Hart, Hans de Goede, Mark Gross,
Mika Westerberg, Gayatri Kammela, Enric Balletbo i Serra,
Blaž Hrastnik, Stephen Just, Dan Carpenter,
Benjamin Tissoires, Chen Yu, linux-kernel, Maximilian Luz
Move the Surface 3 Power operation region driver from platform/x86 to
the newly created platform/surface directory.
Signed-off-by: Maximilian Luz <luzmaximilian@gmail.com>
Reviewed-by: Andy Shevchenko <andy.shevchenko@gmail.com>
---
drivers/platform/surface/Kconfig | 7 +++++++
drivers/platform/surface/Makefile | 1 +
drivers/platform/{x86 => surface}/surface3_power.c | 0
drivers/platform/x86/Kconfig | 7 -------
drivers/platform/x86/Makefile | 1 -
5 files changed, 8 insertions(+), 8 deletions(-)
rename drivers/platform/{x86 => surface}/surface3_power.c (100%)
diff --git a/drivers/platform/surface/Kconfig b/drivers/platform/surface/Kconfig
index 1a7cf6a73d52..ac1c749a7a2f 100644
--- a/drivers/platform/surface/Kconfig
+++ b/drivers/platform/surface/Kconfig
@@ -33,4 +33,11 @@ config SURFACE_3_BUTTON
help
This driver handles the power/home/volume buttons on the Microsoft Surface 3 tablet.
+config SURFACE_3_POWER_OPREGION
+ tristate "Surface 3 battery platform operation region support"
+ depends on ACPI && I2C
+ help
+ This driver provides support for ACPI operation
+ region of the Surface 3 battery platform driver.
+
endif # SURFACE_PLATFORMS
diff --git a/drivers/platform/surface/Makefile b/drivers/platform/surface/Makefile
index 8588dc178245..4940d4db58b2 100644
--- a/drivers/platform/surface/Makefile
+++ b/drivers/platform/surface/Makefile
@@ -6,3 +6,4 @@
obj-$(CONFIG_SURFACE3_WMI) += surface3-wmi.o
obj-$(CONFIG_SURFACE_3_BUTTON) += surface3_button.o
+obj-$(CONFIG_SURFACE_3_POWER_OPREGION) += surface3_power.o
diff --git a/drivers/platform/x86/surface3_power.c b/drivers/platform/surface/surface3_power.c
similarity index 100%
rename from drivers/platform/x86/surface3_power.c
rename to drivers/platform/surface/surface3_power.c
diff --git a/drivers/platform/x86/Kconfig b/drivers/platform/x86/Kconfig
index 5fba590a1a67..8417ee0178d0 100644
--- a/drivers/platform/x86/Kconfig
+++ b/drivers/platform/x86/Kconfig
@@ -870,13 +870,6 @@ config INTEL_VBTN
To compile this driver as a module, choose M here: the module will
be called intel_vbtn.
-config SURFACE_3_POWER_OPREGION
- tristate "Surface 3 battery platform operation region support"
- depends on ACPI && I2C
- help
- This driver provides support for ACPI operation
- region of the Surface 3 battery platform driver.
-
config SURFACE_PRO3_BUTTON
tristate "Power/home/volume buttons driver for Microsoft Surface Pro 3/4 tablet"
depends on ACPI && INPUT
diff --git a/drivers/platform/x86/Makefile b/drivers/platform/x86/Makefile
index 0fd70d5d2cf3..ffa31f57d9a2 100644
--- a/drivers/platform/x86/Makefile
+++ b/drivers/platform/x86/Makefile
@@ -82,7 +82,6 @@ obj-$(CONFIG_INTEL_OAKTRAIL) += intel_oaktrail.o
obj-$(CONFIG_INTEL_VBTN) += intel-vbtn.o
# Microsoft
-obj-$(CONFIG_SURFACE_3_POWER_OPREGION) += surface3_power.o
obj-$(CONFIG_SURFACE_PRO3_BUTTON) += surfacepro3_button.o
# MSI
--
2.28.0
^ permalink raw reply related [flat|nested] 9+ messages in thread
* [PATCH v4 5/5] platform/surface: Move Surface Pro 3 Button driver to platform/surface
2020-10-09 14:11 [PATCH v4 0/5] platform/surface: Create a platform subdirectory for Microsoft Surface devices Maximilian Luz
` (3 preceding siblings ...)
2020-10-09 14:11 ` [PATCH v4 4/5] platform/surface: Move Surface 3 Power OpRegion " Maximilian Luz
@ 2020-10-09 14:11 ` Maximilian Luz
2020-10-27 11:54 ` [PATCH v4 0/5] platform/surface: Create a platform subdirectory for Microsoft Surface devices Hans de Goede
5 siblings, 0 replies; 9+ messages in thread
From: Maximilian Luz @ 2020-10-09 14:11 UTC (permalink / raw)
To: platform-driver-x86
Cc: Andy Shevchenko, Darren Hart, Hans de Goede, Mark Gross,
Mika Westerberg, Gayatri Kammela, Enric Balletbo i Serra,
Blaž Hrastnik, Stephen Just, Dan Carpenter,
Benjamin Tissoires, Chen Yu, linux-kernel, Maximilian Luz
Move the Surface Pro 3 Button driver from platform/x86 to the newly
created platform/surface directory.
Signed-off-by: Maximilian Luz <luzmaximilian@gmail.com>
Reviewed-by: Andy Shevchenko <andy.shevchenko@gmail.com>
Acked-by: Chen Yu <yu.c.chen@intel.com>
---
MAINTAINERS | 2 +-
drivers/platform/surface/Kconfig | 6 ++++++
drivers/platform/surface/Makefile | 1 +
drivers/platform/{x86 => surface}/surfacepro3_button.c | 0
drivers/platform/x86/Kconfig | 6 ------
drivers/platform/x86/Makefile | 3 ---
6 files changed, 8 insertions(+), 10 deletions(-)
rename drivers/platform/{x86 => surface}/surfacepro3_button.c (100%)
diff --git a/MAINTAINERS b/MAINTAINERS
index 9fea3ce2db2d..8ff126ced757 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -11545,7 +11545,7 @@ MICROSOFT SURFACE PRO 3 BUTTON DRIVER
M: Chen Yu <yu.c.chen@intel.com>
L: platform-driver-x86@vger.kernel.org
S: Supported
-F: drivers/platform/x86/surfacepro3_button.c
+F: drivers/platform/surface/surfacepro3_button.c
MICROTEK X6 SCANNER
M: Oliver Neukum <oliver@neukum.org>
diff --git a/drivers/platform/surface/Kconfig b/drivers/platform/surface/Kconfig
index ac1c749a7a2f..10902ea43861 100644
--- a/drivers/platform/surface/Kconfig
+++ b/drivers/platform/surface/Kconfig
@@ -40,4 +40,10 @@ config SURFACE_3_POWER_OPREGION
This driver provides support for ACPI operation
region of the Surface 3 battery platform driver.
+config SURFACE_PRO3_BUTTON
+ tristate "Power/home/volume buttons driver for Microsoft Surface Pro 3/4 tablet"
+ depends on ACPI && INPUT
+ help
+ This driver handles the power/home/volume buttons on the Microsoft Surface Pro 3/4 tablet.
+
endif # SURFACE_PLATFORMS
diff --git a/drivers/platform/surface/Makefile b/drivers/platform/surface/Makefile
index 4940d4db58b2..dcb1df06d57a 100644
--- a/drivers/platform/surface/Makefile
+++ b/drivers/platform/surface/Makefile
@@ -7,3 +7,4 @@
obj-$(CONFIG_SURFACE3_WMI) += surface3-wmi.o
obj-$(CONFIG_SURFACE_3_BUTTON) += surface3_button.o
obj-$(CONFIG_SURFACE_3_POWER_OPREGION) += surface3_power.o
+obj-$(CONFIG_SURFACE_PRO3_BUTTON) += surfacepro3_button.o
diff --git a/drivers/platform/x86/surfacepro3_button.c b/drivers/platform/surface/surfacepro3_button.c
similarity index 100%
rename from drivers/platform/x86/surfacepro3_button.c
rename to drivers/platform/surface/surfacepro3_button.c
diff --git a/drivers/platform/x86/Kconfig b/drivers/platform/x86/Kconfig
index 8417ee0178d0..6083f8241b7d 100644
--- a/drivers/platform/x86/Kconfig
+++ b/drivers/platform/x86/Kconfig
@@ -870,12 +870,6 @@ config INTEL_VBTN
To compile this driver as a module, choose M here: the module will
be called intel_vbtn.
-config SURFACE_PRO3_BUTTON
- tristate "Power/home/volume buttons driver for Microsoft Surface Pro 3/4 tablet"
- depends on ACPI && INPUT
- help
- This driver handles the power/home/volume buttons on the Microsoft Surface Pro 3/4 tablet.
-
config MSI_LAPTOP
tristate "MSI Laptop Extras"
depends on ACPI
diff --git a/drivers/platform/x86/Makefile b/drivers/platform/x86/Makefile
index ffa31f57d9a2..aeff497e23a5 100644
--- a/drivers/platform/x86/Makefile
+++ b/drivers/platform/x86/Makefile
@@ -81,9 +81,6 @@ obj-$(CONFIG_INTEL_MENLOW) += intel_menlow.o
obj-$(CONFIG_INTEL_OAKTRAIL) += intel_oaktrail.o
obj-$(CONFIG_INTEL_VBTN) += intel-vbtn.o
-# Microsoft
-obj-$(CONFIG_SURFACE_PRO3_BUTTON) += surfacepro3_button.o
-
# MSI
obj-$(CONFIG_MSI_LAPTOP) += msi-laptop.o
obj-$(CONFIG_MSI_WMI) += msi-wmi.o
--
2.28.0
^ permalink raw reply related [flat|nested] 9+ messages in thread
* Re: [PATCH v4 1/5] platform: Add Surface platform directory
2020-10-09 14:11 ` [PATCH v4 1/5] platform: Add Surface platform directory Maximilian Luz
@ 2020-10-09 14:25 ` Andy Shevchenko
0 siblings, 0 replies; 9+ messages in thread
From: Andy Shevchenko @ 2020-10-09 14:25 UTC (permalink / raw)
To: Maximilian Luz
Cc: Platform Driver, Darren Hart, Hans de Goede, Mark Gross,
Mika Westerberg, Gayatri Kammela, Enric Balletbo i Serra,
Blaž Hrastnik, Stephen Just, Dan Carpenter,
Benjamin Tissoires, Chen Yu, Linux Kernel Mailing List
On Fri, Oct 9, 2020 at 5:11 PM Maximilian Luz <luzmaximilian@gmail.com> wrote:
>
> It may make sense to split the Microsoft Surface hardware platform
> drivers out to a separate subdirectory, since some of it may be shared
> between ARM and x86 in the future (regarding devices like the Surface
> Pro X).
>
> Further, newer Surface devices will require additional platform drivers
> for fundamental support (mostly regarding their embedded controller),
> which may also warrant this split from a size perspective.
>
> This commit introduces a new platform/surface subdirectory for the
> Surface device family, with subsequent commits moving existing Surface
> drivers over from platform/x86.
>
> A new MAINTAINERS entry is added for this directory. Patches to files in
> this directory will be taken up by the platform-drivers-x86 team (i.e.
> Hans de Goede and Mark Gross) after they have been reviewed by
> Maximilian Luz.
Reviewed-by: Andy Shevchenko <andy.shevchenko@gmail.com>
> Signed-off-by: Maximilian Luz <luzmaximilian@gmail.com>
> ---
>
> Changes in v2:
> - Do not create a separate MAINTAINERS entry for platform/surface.
> Instead add drivers/platform/surface to x86 platform drivers entry.
> This incorporates recent changes in the x86 platform driver
> MAINTAINERS entry.
> - Fix typo in commit message.
>
> Changes in v3:
> - Add separate MAINTAINERS entry for platform/surface
> - Add Maximilian Luz as reviewer for platform/surface
>
> Changes in v4:
> - Rename MAINTAINERS entry to be similar to platform/chrome.
> - Rename Kconfig options to be similar to platform/chrome
> (PLATFORM -> PLATFORMS)
> - Drop placeholder comments.
>
> ---
> MAINTAINERS | 9 +++++++++
> drivers/platform/Kconfig | 2 ++
> drivers/platform/Makefile | 1 +
> drivers/platform/surface/Kconfig | 14 ++++++++++++++
> drivers/platform/surface/Makefile | 5 +++++
> 5 files changed, 31 insertions(+)
> create mode 100644 drivers/platform/surface/Kconfig
> create mode 100644 drivers/platform/surface/Makefile
>
> diff --git a/MAINTAINERS b/MAINTAINERS
> index 2a2170ff3a91..9fea3ce2db2d 100644
> --- a/MAINTAINERS
> +++ b/MAINTAINERS
> @@ -11532,6 +11532,15 @@ F: drivers/scsi/smartpqi/smartpqi*.[ch]
> F: include/linux/cciss*.h
> F: include/uapi/linux/cciss*.h
>
> +MICROSOFT SURFACE HARDWARE PLATFORM SUPPORT
> +M: Hans de Goede <hdegoede@redhat.com>
> +M: Mark Gross <mgross@linux.intel.com>
> +M: Maximilian Luz <luzmaximilian@gmail.com>
> +L: platform-driver-x86@vger.kernel.org
> +S: Maintained
> +T: git git://git.kernel.org/pub/scm/linux/kernel/git/pdx86/platform-drivers-x86.git
> +F: drivers/platform/surface/
> +
> MICROSOFT SURFACE PRO 3 BUTTON DRIVER
> M: Chen Yu <yu.c.chen@intel.com>
> L: platform-driver-x86@vger.kernel.org
> diff --git a/drivers/platform/Kconfig b/drivers/platform/Kconfig
> index 971426bb4302..18fc6a08569e 100644
> --- a/drivers/platform/Kconfig
> +++ b/drivers/platform/Kconfig
> @@ -13,3 +13,5 @@ source "drivers/platform/chrome/Kconfig"
> source "drivers/platform/mellanox/Kconfig"
>
> source "drivers/platform/olpc/Kconfig"
> +
> +source "drivers/platform/surface/Kconfig"
> diff --git a/drivers/platform/Makefile b/drivers/platform/Makefile
> index 6fda58c021ca..4de08ef4ec9d 100644
> --- a/drivers/platform/Makefile
> +++ b/drivers/platform/Makefile
> @@ -9,3 +9,4 @@ obj-$(CONFIG_MIPS) += mips/
> obj-$(CONFIG_OLPC_EC) += olpc/
> obj-$(CONFIG_GOLDFISH) += goldfish/
> obj-$(CONFIG_CHROME_PLATFORMS) += chrome/
> +obj-$(CONFIG_SURFACE_PLATFORMS) += surface/
> diff --git a/drivers/platform/surface/Kconfig b/drivers/platform/surface/Kconfig
> new file mode 100644
> index 000000000000..b67926ece95f
> --- /dev/null
> +++ b/drivers/platform/surface/Kconfig
> @@ -0,0 +1,14 @@
> +# SPDX-License-Identifier: GPL-2.0-only
> +#
> +# Microsoft Surface Platform-Specific Drivers
> +#
> +
> +menuconfig SURFACE_PLATFORMS
> + bool "Microsoft Surface Platform-Specific Device Drivers"
> + default y
> + help
> + Say Y here to get to see options for platform-specific device drivers
> + for Microsoft Surface devices. This option alone does not add any
> + kernel code.
> +
> + If you say N, all options in this submenu will be skipped and disabled.
> diff --git a/drivers/platform/surface/Makefile b/drivers/platform/surface/Makefile
> new file mode 100644
> index 000000000000..3700f9e84299
> --- /dev/null
> +++ b/drivers/platform/surface/Makefile
> @@ -0,0 +1,5 @@
> +# SPDX-License-Identifier: GPL-2.0
> +#
> +# Makefile for linux/drivers/platform/surface
> +# Microsoft Surface Platform-Specific Drivers
> +#
> --
> 2.28.0
>
--
With Best Regards,
Andy Shevchenko
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH v4 2/5] platform/surface: Move Surface 3 WMI driver to platform/surface
2020-10-09 14:11 ` [PATCH v4 2/5] platform/surface: Move Surface 3 WMI driver to platform/surface Maximilian Luz
@ 2020-10-09 14:26 ` Andy Shevchenko
0 siblings, 0 replies; 9+ messages in thread
From: Andy Shevchenko @ 2020-10-09 14:26 UTC (permalink / raw)
To: Maximilian Luz
Cc: Platform Driver, Darren Hart, Hans de Goede, Mark Gross,
Mika Westerberg, Gayatri Kammela, Enric Balletbo i Serra,
Blaž Hrastnik, Stephen Just, Dan Carpenter,
Benjamin Tissoires, Chen Yu, Linux Kernel Mailing List
On Fri, Oct 9, 2020 at 5:11 PM Maximilian Luz <luzmaximilian@gmail.com> wrote:
>
> Move the Surface 3 WMI driver from platform/x86 to the newly created
> platform/surface directory.
Reviewed-by: Andy Shevchenko <andy.shevchenko@gmail.com>
> Signed-off-by: Maximilian Luz <luzmaximilian@gmail.com>
> ---
> drivers/platform/surface/Kconfig | 16 ++++++++++++++++
> drivers/platform/surface/Makefile | 2 ++
> drivers/platform/{x86 => surface}/surface3-wmi.c | 0
> drivers/platform/x86/Kconfig | 12 ------------
> drivers/platform/x86/Makefile | 1 -
> 5 files changed, 18 insertions(+), 13 deletions(-)
> rename drivers/platform/{x86 => surface}/surface3-wmi.c (100%)
>
> diff --git a/drivers/platform/surface/Kconfig b/drivers/platform/surface/Kconfig
> index b67926ece95f..326f7bbf83d7 100644
> --- a/drivers/platform/surface/Kconfig
> +++ b/drivers/platform/surface/Kconfig
> @@ -12,3 +12,19 @@ menuconfig SURFACE_PLATFORMS
> kernel code.
>
> If you say N, all options in this submenu will be skipped and disabled.
> +
> +if SURFACE_PLATFORMS
> +
> +config SURFACE3_WMI
> + tristate "Surface 3 WMI Driver"
> + depends on ACPI_WMI
> + depends on DMI
> + depends on INPUT
> + depends on SPI
> + help
> + Say Y here if you have a Surface 3.
> +
> + To compile this driver as a module, choose M here: the module will
> + be called surface3-wmi.
> +
> +endif # SURFACE_PLATFORMS
> diff --git a/drivers/platform/surface/Makefile b/drivers/platform/surface/Makefile
> index 3700f9e84299..f889d521420f 100644
> --- a/drivers/platform/surface/Makefile
> +++ b/drivers/platform/surface/Makefile
> @@ -3,3 +3,5 @@
> # Makefile for linux/drivers/platform/surface
> # Microsoft Surface Platform-Specific Drivers
> #
> +
> +obj-$(CONFIG_SURFACE3_WMI) += surface3-wmi.o
> diff --git a/drivers/platform/x86/surface3-wmi.c b/drivers/platform/surface/surface3-wmi.c
> similarity index 100%
> rename from drivers/platform/x86/surface3-wmi.c
> rename to drivers/platform/surface/surface3-wmi.c
> diff --git a/drivers/platform/x86/Kconfig b/drivers/platform/x86/Kconfig
> index 0d91d136bc3b..0759913c9846 100644
> --- a/drivers/platform/x86/Kconfig
> +++ b/drivers/platform/x86/Kconfig
> @@ -870,18 +870,6 @@ config INTEL_VBTN
> To compile this driver as a module, choose M here: the module will
> be called intel_vbtn.
>
> -config SURFACE3_WMI
> - tristate "Surface 3 WMI Driver"
> - depends on ACPI_WMI
> - depends on DMI
> - depends on INPUT
> - depends on SPI
> - help
> - Say Y here if you have a Surface 3.
> -
> - To compile this driver as a module, choose M here: the module will
> - be called surface3-wmi.
> -
> config SURFACE_3_BUTTON
> tristate "Power/home/volume buttons driver for Microsoft Surface 3 tablet"
> depends on ACPI && KEYBOARD_GPIO && I2C
> diff --git a/drivers/platform/x86/Makefile b/drivers/platform/x86/Makefile
> index 5f823f7eff45..29563a32b3e3 100644
> --- a/drivers/platform/x86/Makefile
> +++ b/drivers/platform/x86/Makefile
> @@ -82,7 +82,6 @@ obj-$(CONFIG_INTEL_OAKTRAIL) += intel_oaktrail.o
> obj-$(CONFIG_INTEL_VBTN) += intel-vbtn.o
>
> # Microsoft
> -obj-$(CONFIG_SURFACE3_WMI) += surface3-wmi.o
> obj-$(CONFIG_SURFACE_3_BUTTON) += surface3_button.o
> obj-$(CONFIG_SURFACE_3_POWER_OPREGION) += surface3_power.o
> obj-$(CONFIG_SURFACE_PRO3_BUTTON) += surfacepro3_button.o
> --
> 2.28.0
>
--
With Best Regards,
Andy Shevchenko
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH v4 0/5] platform/surface: Create a platform subdirectory for Microsoft Surface devices
2020-10-09 14:11 [PATCH v4 0/5] platform/surface: Create a platform subdirectory for Microsoft Surface devices Maximilian Luz
` (4 preceding siblings ...)
2020-10-09 14:11 ` [PATCH v4 5/5] platform/surface: Move Surface Pro 3 Button " Maximilian Luz
@ 2020-10-27 11:54 ` Hans de Goede
5 siblings, 0 replies; 9+ messages in thread
From: Hans de Goede @ 2020-10-27 11:54 UTC (permalink / raw)
To: Maximilian Luz, platform-driver-x86
Cc: Andy Shevchenko, Darren Hart, Mark Gross, Mika Westerberg,
Gayatri Kammela, Enric Balletbo i Serra, Blaž Hrastnik,
Stephen Just, Dan Carpenter, Benjamin Tissoires, Chen Yu,
linux-kernel
Hi,
On 10/9/20 4:11 PM, Maximilian Luz wrote:
> As has come up in the discussion around
>
> [RFC PATCH] Add support for Microsoft Surface System Aggregator Module
>
> it may make sense to add a Microsoft Surface specific platform
> subdirectory. Andy has suggested drivers/platform/surface for that.
> This series follows said suggestion and creates that subdirectory, as
> well as moves Microsoft Surface related drivers over to it and updates
> their MAINTAINERS entries (if available) accordingly.
>
> This series does not modify any existing driver code, symbols, or help
> text.
Thank you for your patch-series, I've applied the series to my
review-hans branch:
https://git.kernel.org/pub/scm/linux/kernel/git/pdx86/platform-drivers-x86.git/log/?h=review-hans
Note it will show up there once I've pushed my local branch there,
which might take a while.
Once I've run some tests on this branch the patches there will be
added to the platform-drivers-x86/for-next branch and eventually
will be included in the pdx86 pull-request to Linus for the next
merge-window.
Regards,
Hans
^ permalink raw reply [flat|nested] 9+ messages in thread
end of thread, other threads:[~2020-10-27 11:54 UTC | newest]
Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-10-09 14:11 [PATCH v4 0/5] platform/surface: Create a platform subdirectory for Microsoft Surface devices Maximilian Luz
2020-10-09 14:11 ` [PATCH v4 1/5] platform: Add Surface platform directory Maximilian Luz
2020-10-09 14:25 ` Andy Shevchenko
2020-10-09 14:11 ` [PATCH v4 2/5] platform/surface: Move Surface 3 WMI driver to platform/surface Maximilian Luz
2020-10-09 14:26 ` Andy Shevchenko
2020-10-09 14:11 ` [PATCH v4 3/5] platform/surface: Move Surface 3 Button " Maximilian Luz
2020-10-09 14:11 ` [PATCH v4 4/5] platform/surface: Move Surface 3 Power OpRegion " Maximilian Luz
2020-10-09 14:11 ` [PATCH v4 5/5] platform/surface: Move Surface Pro 3 Button " Maximilian Luz
2020-10-27 11:54 ` [PATCH v4 0/5] platform/surface: Create a platform subdirectory for Microsoft Surface devices Hans de Goede
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.