summaryrefslogtreecommitdiffstats
path: root/0015-mfd-intel-lpss-Pass-HSUART-configuration-via-propert.patch
diff options
context:
space:
mode:
Diffstat (limited to '0015-mfd-intel-lpss-Pass-HSUART-configuration-via-propert.patch')
-rw-r--r--0015-mfd-intel-lpss-Pass-HSUART-configuration-via-propert.patch55
1 files changed, 55 insertions, 0 deletions
diff --git a/0015-mfd-intel-lpss-Pass-HSUART-configuration-via-propert.patch b/0015-mfd-intel-lpss-Pass-HSUART-configuration-via-propert.patch
new file mode 100644
index 000000000..5b3c2753e
--- /dev/null
+++ b/0015-mfd-intel-lpss-Pass-HSUART-configuration-via-propert.patch
@@ -0,0 +1,55 @@
+From ec14c5395dfbc1d40a49c9f19d2bfde6739d89d5 Mon Sep 17 00:00:00 2001
+From: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
+Date: Mon, 30 Nov 2015 17:11:43 +0200
+Subject: [PATCH 15/16] mfd: intel-lpss: Pass HSUART configuration via
+ properties
+
+The HS-UART host controller driver needs to know certain properties like
+width of the register set if it cannot get that information from ACPI or
+DT. In order to support non-ACPI systems we pass this information to the
+driver via device properties.
+
+Signed-off-by: Mika Westerberg <mika.westerberg@linux.intel.com>
+Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
+Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
+---
+ drivers/mfd/intel-lpss-pci.c | 13 +++++++++++++
+ 1 file changed, 13 insertions(+)
+
+diff --git a/drivers/mfd/intel-lpss-pci.c b/drivers/mfd/intel-lpss-pci.c
+index a677480..a7136c7 100644
+--- a/drivers/mfd/intel-lpss-pci.c
++++ b/drivers/mfd/intel-lpss-pci.c
+@@ -80,9 +80,21 @@ static const struct intel_lpss_platform_info spt_i2c_info = {
+ .pset = &spt_i2c_pset,
+ };
+
++static struct property_entry uart_properties[] = {
++ PROPERTY_ENTRY_U32("reg-io-width", 4),
++ PROPERTY_ENTRY_U32("reg-shift", 2),
++ PROPERTY_ENTRY_BOOL("snps,uart-16550-compatible"),
++ { },
++};
++
++static struct property_set uart_pset = {
++ .properties = uart_properties,
++};
++
+ static const struct intel_lpss_platform_info spt_uart_info = {
+ .clk_rate = 120000000,
+ .clk_con_id = "baudclk",
++ .pset = &uart_pset,
+ };
+
+ static const struct intel_lpss_platform_info bxt_info = {
+@@ -92,6 +104,7 @@ static const struct intel_lpss_platform_info bxt_info = {
+ static const struct intel_lpss_platform_info bxt_uart_info = {
+ .clk_rate = 100000000,
+ .clk_con_id = "baudclk",
++ .pset = &uart_pset,
+ };
+
+ static const struct intel_lpss_platform_info bxt_i2c_info = {
+--
+2.5.0
+