Support NVIDIA Tegra-based Acer A500 and Nexus 7 devices
Subsystems (4)
v3 cover Support NVIDIA Tegra-based Acer A500 and Nexus 7 devices
Hello,
This series introduces upstream kernel support for Acer Iconia Tab A500 and ASUS Google Nexus 7 tablet devices. Please review and apply, thanks in advance.
Changelog:
v3: - Improved device-tree node-names in accordance to review comments that
were made by Thierry Reding to v2.
- Corrected LVDS encoder powerdown-GPIO polarity on both A500 and Nexus 7 because I implemented the DRM bridges support in the Tegra DRM driver and found that there was a mistake in the device-trees. The updated polarity also matches the boards schematics. Now DRM bridges support becomes mandatory since LVDS is getting disabled during of the encoder driver probing. I'll send the DRM patch separately from this series.
- Replaced recently deprecated CONFIG_DRM_LVDS_ENCODER with the new CONFIG_DRM_LVDS_CODEC in tegra_defconfig.
- Added more config options to tegra_defconfig, like pstore and thermal.
- Added atmel,cfg_name to the A500 DT, which is a new upcoming property in 5.8+ that allows to specify the per-board hardware config file name.
v2: - Corrected "volume down" key-label in the grouper's device-tree and
improved some other names in device-trees.
- Added optional (upcoming in 5.8+) VDD/AVDD regulators to the touchscreen node in A500 device-tree.
Dmitry Osipenko (6):
ARM: tegra: Add device-tree for Acer Iconia Tab A500
ARM: tegra: Add device-tree for ASUS Google Nexus 7
dt-bindings: Add vendor prefix for Acer Inc.
dt-bindings: ARM: tegra: Add Acer Iconia Tab A500
dt-bindings: ARM: tegra: Add ASUS Google Nexus 7
ARM: tegra_defconfig: Enable options useful for Nexus 7 and Acer A500
.../devicetree/bindings/arm/tegra.yaml | 10 + .../devicetree/bindings/vendor-prefixes.yaml | 2 + arch/arm/boot/dts/Makefile | 3 + .../boot/dts/tegra20-acer-a500-picasso.dts | 1458 +++++++++ .../tegra30-asus-nexus7-grouper-common.dtsi | 2646 +++++++++++++++++ .../boot/dts/tegra30-asus-nexus7-grouper.dts | 463 +++ .../boot/dts/tegra30-asus-nexus7-tilapia.dts | 549 ++++ arch/arm/configs/tegra_defconfig | 38 + 8 files changed, 5169 insertions(+) create mode 100644 arch/arm/boot/dts/tegra20-acer-a500-picasso.dts create mode 100644 arch/arm/boot/dts/tegra30-asus-nexus7-grouper-common.dtsi create mode 100644 arch/arm/boot/dts/tegra30-asus-nexus7-grouper.dts create mode 100644 arch/arm/boot/dts/tegra30-asus-nexus7-tilapia.dts
Signature · 1 line
2.25.1
PATCH v3 1/6 ARM: tegra: Add device-tree for Acer Iconia Tab A500
Add device-tree for Acer Iconia Tab A500, which is NVIDIA Tegra20-based tablet device.
--- arch/arm/boot/dts/Makefile | 1 + .../boot/dts/tegra20-acer-a500-picasso.dts | 1458 +++++++++++++++++ 2 files changed, 1459 insertions(+) create mode 100644 arch/arm/boot/dts/tegra20-acer-a500-picasso.dts
arch/arm/boot/dts/Makefile +1 -0
@@ -1186,6 +1186,7 @@ dtb-$(CONFIG_MACH_SUNIV) += \ dtb-$(CONFIG_ARCH_TANGO) += \ tango4-vantage-1172.dtb dtb-$(CONFIG_ARCH_TEGRA_2x_SOC) += \ + tegra20-acer-a500-picasso.dtb \ tegra20-harmony.dtb \ tegra20-colibri-eval-v3.dtb \ tegra20-colibri-iris.dtb \
arch/arm/boot/dts/tegra20-acer-a500-picasso.dts new file +1458 -0
1,458 lines not on this page · raw message
Signature · 1 line
2.25.1
PATCH v3 2/6 ARM: tegra: Add device-tree for ASUS Google Nexus 7
In reply to Dmitry OsipenkoThere are two variants of the NVIDIA Tegra30-based Nexus 7 device:
WiFi-only (named Grouper) and GSM (named Tilapia). This patch adds device-trees for the both variants.
--- arch/arm/boot/dts/Makefile | 2 + .../tegra30-asus-nexus7-grouper-common.dtsi | 2646 +++++++++++++++++ .../boot/dts/tegra30-asus-nexus7-grouper.dts | 463 +++ .../boot/dts/tegra30-asus-nexus7-tilapia.dts | 549 ++++ 4 files changed, 3660 insertions(+) create mode 100644 arch/arm/boot/dts/tegra30-asus-nexus7-grouper-common.dtsi create mode 100644 arch/arm/boot/dts/tegra30-asus-nexus7-grouper.dts create mode 100644 arch/arm/boot/dts/tegra30-asus-nexus7-tilapia.dts
arch/arm/boot/dts/Makefile +2 -0
@@ -1200,6 +1200,8 @@ dtb-$(CONFIG_ARCH_TEGRA_2x_SOC) += \ dtb-$(CONFIG_ARCH_TEGRA_3x_SOC) += \ tegra30-apalis-eval.dtb \ tegra30-apalis-v1.1-eval.dtb \ + tegra30-asus-nexus7-grouper.dtb \ + tegra30-asus-nexus7-tilapia.dtb \ tegra30-beaver.dtb \ tegra30-cardhu-a02.dtb \ tegra30-cardhu-a04.dtb \
arch/arm/boot/dts/tegra30-asus-nexus7-grouper-common.dtsi new file +2646 -0
2,646 lines not on this page · raw message
arch/arm/boot/dts/tegra30-asus-nexus7-grouper.dts new file +463 -0
346 lines not on this page · raw message
arch/arm/boot/dts/tegra30-asus-nexus7-tilapia.dts new file +549 -0
549 lines not on this page · raw message
The rest of this diff is not shown. View the raw message.
Signature · 1 line
2.25.1
Part of the diff is not shown here. View the raw message.
PATCH v3 3/6 dt-bindings: Add vendor prefix for Acer Inc.
In reply to Dmitry OsipenkoAcer is a hardware and electronics corporation, specializing in advanced electronics technology. Acer's products include desktop PCs, laptop PCs, tablets, servers, displays, storage devices, virtual reality devices, smartphones and peripherals. Their web site is http://www.acer.com/.
--- Documentation/devicetree/bindings/vendor-prefixes.yaml | 2 ++ 1 file changed, 2 insertions(+)
Documentation/devicetree/bindings/vendor-prefixes.yaml +2 -0
@@ -27,6 +27,8 @@ patternProperties: description: Abilis Systems "^abracon,.*": description: Abracon Corporation + "^acer,.*": + description: Acer Inc. "^acme,.*": description: Acme Systems srl "^actions,.*":
Signature · 1 line
2.25.1
PATCH v3 4/6 dt-bindings: ARM: tegra: Add Acer Iconia Tab A500
In reply to Dmitry OsipenkoAdd a binding for the Tegra20-based Acer Iconia Tab A500 tablet device.
--- Documentation/devicetree/bindings/arm/tegra.yaml | 3 +++ 1 file changed, 3 insertions(+)
Documentation/devicetree/bindings/arm/tegra.yaml +3 -0
@@ -34,6 +34,9 @@ properties: - toradex,colibri_t20-iris - const: toradex,colibri_t20 - const: nvidia,tegra20 + - items: + - const: acer,picasso + - const: nvidia,tegra20 - items: - enum: - nvidia,beaver
Signature · 1 line
2.25.1
PATCH v3 5/6 dt-bindings: ARM: tegra: Add ASUS Google Nexus 7
In reply to Dmitry OsipenkoAdd a binding for the Tegra30-based ASUS Google Nexus 7 tablet device.
--- Documentation/devicetree/bindings/arm/tegra.yaml | 7 +++++++ 1 file changed, 7 insertions(+)
Documentation/devicetree/bindings/arm/tegra.yaml +7 -0
@@ -62,6 +62,13 @@ properties: - toradex,colibri_t30-eval-v3 - const: toradex,colibri_t30 - const: nvidia,tegra30 + - items: + - const: asus,grouper + - const: nvidia,tegra30 + - items: + - const: asus,tilapia + - const: asus,grouper + - const: nvidia,tegra30 - items: - enum: - nvidia,dalmore
Signature · 1 line
2.25.1
PATCH v3 6/6 ARM: tegra_defconfig: Enable options useful for Nexus 7 and Acer A500
In reply to Dmitry OsipenkoEnable several drivers for hardware that is found on Nexus 7 and Acer A500 tablet devices. Please note that some drivers may require firmware files extracted from original Android image.
--- arch/arm/configs/tegra_defconfig | 38 ++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+)
arch/arm/configs/tegra_defconfig +38 -0
@@ -63,11 +63,17 @@ CONFIG_BT_RFCOMM=y CONFIG_BT_BNEP=y CONFIG_BT_HIDP=y CONFIG_BT_HCIBTUSB=m +CONFIG_BT_HCIUART=y +CONFIG_BT_HCIUART_BCM=y CONFIG_CFG80211=y CONFIG_MAC80211=y CONFIG_RFKILL=y CONFIG_RFKILL_INPUT=y CONFIG_RFKILL_GPIO=y +CONFIG_NFC=y +CONFIG_NFC_HCI=y +CONFIG_NFC_SHDLC=y +CONFIG_NFC_PN544_I2C=y CONFIG_PCI=y CONFIG_PCIEPORTBUS=y CONFIG_PCI_MSI=y
@@ -106,20 +112,24 @@ CONFIG_INPUT_JOYDEV=y CONFIG_INPUT_EVDEV=y CONFIG_KEYBOARD_GPIO=y CONFIG_KEYBOARD_TEGRA=y +CONFIG_KEYBOARD_CAP11XX=y CONFIG_KEYBOARD_CROS_EC=y CONFIG_MOUSE_PS2_ELANTECH=y CONFIG_INPUT_TOUCHSCREEN=y CONFIG_TOUCHSCREEN_ATMEL_MXT=y +CONFIG_TOUCHSCREEN_ELAN=y CONFIG_TOUCHSCREEN_WM97XX=y # CONFIG_TOUCHSCREEN_WM9705 is not set # CONFIG_TOUCHSCREEN_WM9713 is not set CONFIG_TOUCHSCREEN_STMPE=y CONFIG_INPUT_MISC=y +CONFIG_INPUT_GPIO_VIBRA=y # CONFIG_LEGACY_PTYS is not set CONFIG_SERIAL_8250=y CONFIG_SERIAL_8250_CONSOLE=y CONFIG_SERIAL_OF_PLATFORM=y CONFIG_SERIAL_TEGRA=y +CONFIG_SERIAL_DEV_BUS=y # CONFIG_HW_RANDOM is not set # CONFIG_I2C_COMPAT is not set CONFIG_I2C_CHARDEV=y
@@ -135,6 +145,7 @@ CONFIG_PINCTRL_PALMAS=y CONFIG_GPIO_SYSFS=y CONFIG_GPIO_PCA953X=y CONFIG_GPIO_PCA953X_IRQ=y +CONFIG_GPIO_MAX77620=y CONFIG_GPIO_PALMAS=y CONFIG_GPIO_TPS6586X=y CONFIG_GPIO_TPS65910=y
@@ -142,13 +153,21 @@ CONFIG_POWER_RESET=y CONFIG_POWER_RESET_AS3722=y CONFIG_POWER_RESET_GPIO=y CONFIG_BATTERY_SBS=y +CONFIG_BATTERY_BQ27XXX=y +CONFIG_CHARGER_GPIO=y +CONFIG_CHARGER_SMB347=y CONFIG_CHARGER_TPS65090=y CONFIG_SENSORS_LM90=y CONFIG_SENSORS_LM95245=y +CONFIG_THERMAL=y +CONFIG_THERMAL_STATISTICS=y +CONFIG_CPU_THERMAL=y CONFIG_WATCHDOG=y +CONFIG_MAX77620_WATCHDOG=y CONFIG_TEGRA_WATCHDOG=y CONFIG_MFD_AS3722=y CONFIG_MFD_CROS_EC=y +CONFIG_MFD_MAX77620=y CONFIG_MFD_MAX8907=y CONFIG_MFD_STMPE=y CONFIG_MFD_PALMAS=y
@@ -159,6 +178,7 @@ CONFIG_REGULATOR=y CONFIG_REGULATOR_FIXED_VOLTAGE=y CONFIG_REGULATOR_AS3722=y CONFIG_REGULATOR_GPIO=y +CONFIG_REGULATOR_MAX77620=y CONFIG_REGULATOR_MAX8907=y CONFIG_REGULATOR_PALMAS=y CONFIG_REGULATOR_TPS51632=y
@@ -174,7 +194,10 @@ CONFIG_USB_GSPCA=y CONFIG_DRM=y CONFIG_DRM_NOUVEAU=m CONFIG_DRM_TEGRA=y +CONFIG_DRM_TEGRA_STAGING=y +CONFIG_DRM_PANEL_LVDS=y CONFIG_DRM_PANEL_SIMPLE=y +CONFIG_DRM_LVDS_CODEC=y # CONFIG_LCD_CLASS_DEVICE is not set CONFIG_BACKLIGHT_CLASS_DEVICE=y # CONFIG_BACKLIGHT_GENERIC is not set
@@ -238,6 +261,7 @@ CONFIG_RTC_CLASS=y CONFIG_RTC_DRV_AS3722=y CONFIG_RTC_DRV_DS1307=y CONFIG_RTC_DRV_MAX8907=y +CONFIG_RTC_DRV_MAX77686=y CONFIG_RTC_DRV_PALMAS=y CONFIG_RTC_DRV_TPS6586X=y CONFIG_RTC_DRV_TPS65910=y
@@ -259,11 +283,18 @@ CONFIG_ARCH_TEGRA_2x_SOC=y CONFIG_ARCH_TEGRA_3x_SOC=y CONFIG_ARCH_TEGRA_114_SOC=y CONFIG_ARCH_TEGRA_124_SOC=y +CONFIG_PM_DEVFREQ=y +CONFIG_ARM_TEGRA_DEVFREQ=y +CONFIG_ARM_TEGRA20_DEVFREQ=y CONFIG_MEMORY=y CONFIG_IIO=y +CONFIG_KXCJK1013=y CONFIG_MPU3050_I2C=y +CONFIG_INV_MPU6050_I2C=y +CONFIG_AL3010=y CONFIG_SENSORS_ISL29018=y CONFIG_SENSORS_ISL29028=y +CONFIG_AK8974=y CONFIG_AK8975=y CONFIG_PWM=y CONFIG_PWM_TEGRA=y
@@ -283,6 +314,13 @@ CONFIG_TMPFS_POSIX_ACL=y CONFIG_SQUASHFS=y CONFIG_SQUASHFS_LZO=y CONFIG_SQUASHFS_XZ=y +CONFIG_PSTORE=y +CONFIG_PSTORE_LZO_COMPRESS=y +CONFIG_PSTORE_LZ4_COMPRESS=y +CONFIG_PSTORE_LZ4HC_COMPRESS=y +CONFIG_PSTORE_842_COMPRESS=y +CONFIG_PSTORE_CONSOLE=y +CONFIG_PSTORE_RAM=y CONFIG_NFS_FS=y CONFIG_NFS_V4=y CONFIG_ROOT_NFS=y
Signature · 1 line
2.25.1