linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/8] OLPC 1.75 Keyboard/Touchpad fixes
@ 2018-09-10 11:26 Lubomir Rintel
  2018-09-10 11:26 ` [PATCH 1/8] dt-bindings: olpc,ap-sp: add clock Lubomir Rintel
                   ` (8 more replies)
  0 siblings, 9 replies; 13+ messages in thread
From: Lubomir Rintel @ 2018-09-10 11:26 UTC (permalink / raw)
  To: linux-kernel
  Cc: linux-clk, devicetree, linux-input, Rob Herring, Mark Rutland,
	Dmitry Torokhov, Michael Turquette, Stephen Boyd

This makes keyboard/touchpad work on a DT MMP2 platform.



^ permalink raw reply	[flat|nested] 13+ messages in thread

* [PATCH 1/8] dt-bindings: olpc,ap-sp: add clock
  2018-09-10 11:26 [PATCH 0/8] OLPC 1.75 Keyboard/Touchpad fixes Lubomir Rintel
@ 2018-09-10 11:26 ` Lubomir Rintel
  2018-09-10 11:26 ` [PATCH 2/8] dt-bindings: olpc,ap-sp: add GPIO lines Lubomir Rintel
                   ` (7 subsequent siblings)
  8 siblings, 0 replies; 13+ messages in thread
From: Lubomir Rintel @ 2018-09-10 11:26 UTC (permalink / raw)
  To: linux-kernel
  Cc: linux-clk, devicetree, linux-input, Rob Herring, Mark Rutland,
	Dmitry Torokhov, Michael Turquette, Stephen Boyd, Lubomir Rintel

The clock is necessary for the device operation, hence it's required.
Its name, "sp", stands for "Security Processor". It is one of several
names that are used for the processor that serves as the keyboard
controller on an OLPC and is consistent with the node name.

Signed-off-by: Lubomir Rintel <lkundrak@v3.sk>
---
 Documentation/devicetree/bindings/serio/olpc,ap-sp.txt | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/Documentation/devicetree/bindings/serio/olpc,ap-sp.txt b/Documentation/devicetree/bindings/serio/olpc,ap-sp.txt
index 0e72183f52bc..36603419d6f8 100644
--- a/Documentation/devicetree/bindings/serio/olpc,ap-sp.txt
+++ b/Documentation/devicetree/bindings/serio/olpc,ap-sp.txt
@@ -4,10 +4,14 @@ Required properties:
 - compatible : "olpc,ap-sp"
 - reg : base address and length of SoC's WTM registers
 - interrupts : SP-AP interrupt
+- clocks : phandle + clock-specifier for the clock that drives the WTM
+- clock-names:  should be "sp"
 
 Example:
 	ap-sp@d4290000 {
 		compatible = "olpc,ap-sp";
 		reg = <0xd4290000 0x1000>;
 		interrupts = <40>;
+		clocks = <&soc_clocks MMP2_CLK_SP>;
+		clock-names = "sp";
 	}
-- 
2.17.1


^ permalink raw reply related	[flat|nested] 13+ messages in thread

* [PATCH 2/8] dt-bindings: olpc,ap-sp: add GPIO lines
  2018-09-10 11:26 [PATCH 0/8] OLPC 1.75 Keyboard/Touchpad fixes Lubomir Rintel
  2018-09-10 11:26 ` [PATCH 1/8] dt-bindings: olpc,ap-sp: add clock Lubomir Rintel
@ 2018-09-10 11:26 ` Lubomir Rintel
  2018-09-10 11:26 ` [PATCH 3/8] dt-bindings: marvell,mmp2: Add clock id for the SP clock Lubomir Rintel
                   ` (6 subsequent siblings)
  8 siblings, 0 replies; 13+ messages in thread
From: Lubomir Rintel @ 2018-09-10 11:26 UTC (permalink / raw)
  To: linux-kernel
  Cc: linux-clk, devicetree, linux-input, Rob Herring, Mark Rutland,
	Dmitry Torokhov, Michael Turquette, Stephen Boyd, Lubomir Rintel

Add properties describing the GPIO lines used by the keyboard controller.
The olpc-apsp driver will do happily without them, but they are still part
of the hardware description. The driver could still reserve the lines,
so that nothing else touches them.

This makes the device node almost compatible with "ps2-gpio". I'm not
adding a compatible property, because ps2-gpio would use a different
interrupt, so that we'd need to name it. And I haven't actually tried it.

Signed-off-by: Lubomir Rintel <lkundrak@v3.sk>
---
 Documentation/devicetree/bindings/serio/olpc,ap-sp.txt | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/Documentation/devicetree/bindings/serio/olpc,ap-sp.txt b/Documentation/devicetree/bindings/serio/olpc,ap-sp.txt
index 36603419d6f8..2b1b1dbb54c1 100644
--- a/Documentation/devicetree/bindings/serio/olpc,ap-sp.txt
+++ b/Documentation/devicetree/bindings/serio/olpc,ap-sp.txt
@@ -7,6 +7,10 @@ Required properties:
 - clocks : phandle + clock-specifier for the clock that drives the WTM
 - clock-names:  should be "sp"
 
+Optional properties:
+- data-gpios : GPIO line used for PS/2 interface data
+- clk-gpios : GPIO line used for PS/2 interface clock
+
 Example:
 	ap-sp@d4290000 {
 		compatible = "olpc,ap-sp";
@@ -14,4 +18,6 @@ Example:
 		interrupts = <40>;
 		clocks = <&soc_clocks MMP2_CLK_SP>;
 		clock-names = "sp";
+		data-gpios = <&gpio 72 GPIO_ACTIVE_HIGH>;
+		clk-gpios = <&gpio 71 GPIO_ACTIVE_HIGH>;
 	}
-- 
2.17.1


^ permalink raw reply related	[flat|nested] 13+ messages in thread

* [PATCH 3/8] dt-bindings: marvell,mmp2: Add clock id for the SP clock
  2018-09-10 11:26 [PATCH 0/8] OLPC 1.75 Keyboard/Touchpad fixes Lubomir Rintel
  2018-09-10 11:26 ` [PATCH 1/8] dt-bindings: olpc,ap-sp: add clock Lubomir Rintel
  2018-09-10 11:26 ` [PATCH 2/8] dt-bindings: olpc,ap-sp: add GPIO lines Lubomir Rintel
@ 2018-09-10 11:26 ` Lubomir Rintel
  2018-10-02  7:18   ` Stephen Boyd
  2018-09-10 11:26 ` [PATCH 4/8] clk: mmp2: add " Lubomir Rintel
                   ` (5 subsequent siblings)
  8 siblings, 1 reply; 13+ messages in thread
From: Lubomir Rintel @ 2018-09-10 11:26 UTC (permalink / raw)
  To: linux-kernel
  Cc: linux-clk, devicetree, linux-input, Rob Herring, Mark Rutland,
	Dmitry Torokhov, Michael Turquette, Stephen Boyd, Lubomir Rintel

This is the clock for the "security processor" core.

Signed-off-by: Lubomir Rintel <lkundrak@v3.sk>
---
 include/dt-bindings/clock/marvell,mmp2.h | 1 +
 1 file changed, 1 insertion(+)

diff --git a/include/dt-bindings/clock/marvell,mmp2.h b/include/dt-bindings/clock/marvell,mmp2.h
index 228a5e234af0..7b24fc791146 100644
--- a/include/dt-bindings/clock/marvell,mmp2.h
+++ b/include/dt-bindings/clock/marvell,mmp2.h
@@ -71,6 +71,7 @@
 #define MMP2_CLK_CCIC1_MIX		117
 #define MMP2_CLK_CCIC1_PHY		118
 #define MMP2_CLK_CCIC1_SPHY		119
+#define MMP2_CLK_SP			120
 
 #define MMP2_NR_CLKS			200
 #endif
-- 
2.17.1


^ permalink raw reply related	[flat|nested] 13+ messages in thread

* [PATCH 4/8] clk: mmp2: add SP clock
  2018-09-10 11:26 [PATCH 0/8] OLPC 1.75 Keyboard/Touchpad fixes Lubomir Rintel
                   ` (2 preceding siblings ...)
  2018-09-10 11:26 ` [PATCH 3/8] dt-bindings: marvell,mmp2: Add clock id for the SP clock Lubomir Rintel
@ 2018-09-10 11:26 ` Lubomir Rintel
  2018-10-02  7:18   ` Stephen Boyd
  2018-09-10 11:26 ` [PATCH 5/8] Input: olpc_apsp: depend on CONFIG_OF Lubomir Rintel
                   ` (4 subsequent siblings)
  8 siblings, 1 reply; 13+ messages in thread
From: Lubomir Rintel @ 2018-09-10 11:26 UTC (permalink / raw)
  To: linux-kernel
  Cc: linux-clk, devicetree, linux-input, Rob Herring, Mark Rutland,
	Dmitry Torokhov, Michael Turquette, Stephen Boyd, Lubomir Rintel

The "security processor", sometimes referred to as "wireless trusted
module" or "generic encrypt unit" is a low-power core present on MMP2,
that has nothing to do with security, wireless, trust or encryption.

On an OLPC machine it runs CForth and serves as a keyboard controller:
http://dev.laptop.org/git/users/wmb/cforth/tree/src/app/arm-xo-1.75/ps2.fth

The register address was obtained from the OLPC kernel, since the
datasheet seems to be the Marvell's most important business secret.

Signed-off-by: Lubomir Rintel <lkundrak@v3.sk>
---
 drivers/clk/mmp/clk-of-mmp2.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/drivers/clk/mmp/clk-of-mmp2.c b/drivers/clk/mmp/clk-of-mmp2.c
index 0fc75c395957..1da50f827a15 100644
--- a/drivers/clk/mmp/clk-of-mmp2.c
+++ b/drivers/clk/mmp/clk-of-mmp2.c
@@ -53,6 +53,7 @@
 #define APMU_DISP1	0x110
 #define APMU_CCIC0	0x50
 #define APMU_CCIC1	0xf4
+#define APMU_SP		0x68
 #define MPMU_UART_PLL	0x14
 
 struct mmp2_clk_unit {
@@ -209,6 +210,8 @@ static struct mmp_clk_mix_config ccic1_mix_config = {
 	.reg_info = DEFINE_MIX_REG_INFO(4, 16, 2, 6, 32),
 };
 
+static DEFINE_SPINLOCK(sp_lock);
+
 static struct mmp_param_mux_clk apmu_mux_clks[] = {
 	{MMP2_CLK_DISP0_MUX, "disp0_mux", disp_parent_names, ARRAY_SIZE(disp_parent_names), CLK_SET_RATE_PARENT, APMU_DISP0, 6, 2, 0, &disp0_lock},
 	{MMP2_CLK_DISP1_MUX, "disp1_mux", disp_parent_names, ARRAY_SIZE(disp_parent_names), CLK_SET_RATE_PARENT, APMU_DISP1, 6, 2, 0, &disp1_lock},
@@ -239,6 +242,7 @@ static struct mmp_param_gate_clk apmu_gate_clks[] = {
 	{MMP2_CLK_CCIC1, "ccic1_clk", "ccic1_mix_clk", CLK_SET_RATE_PARENT, APMU_CCIC1, 0x1b, 0x1b, 0x0, 0, &ccic1_lock},
 	{MMP2_CLK_CCIC1_PHY, "ccic1_phy_clk", "ccic1_mix_clk", CLK_SET_RATE_PARENT, APMU_CCIC1, 0x24, 0x24, 0x0, 0, &ccic1_lock},
 	{MMP2_CLK_CCIC1_SPHY, "ccic1_sphy_clk", "ccic1_sphy_div", CLK_SET_RATE_PARENT, APMU_CCIC1, 0x300, 0x300, 0x0, 0, &ccic1_lock},
+	{MMP2_CLK_SP, "sp_clk", NULL, CLK_SET_RATE_PARENT, APMU_SP, 0x1b, 0x1b, 0x0, 0, &sp_lock},
 };
 
 static void mmp2_axi_periph_clk_init(struct mmp2_clk_unit *pxa_unit)
-- 
2.17.1


^ permalink raw reply related	[flat|nested] 13+ messages in thread

* [PATCH 5/8] Input: olpc_apsp: depend on CONFIG_OF
  2018-09-10 11:26 [PATCH 0/8] OLPC 1.75 Keyboard/Touchpad fixes Lubomir Rintel
                   ` (3 preceding siblings ...)
  2018-09-10 11:26 ` [PATCH 4/8] clk: mmp2: add " Lubomir Rintel
@ 2018-09-10 11:26 ` Lubomir Rintel
  2018-09-10 11:26 ` [PATCH 6/8] Input: olpc_apsp: check FIFO status on open(), not probe() Lubomir Rintel
                   ` (3 subsequent siblings)
  8 siblings, 0 replies; 13+ messages in thread
From: Lubomir Rintel @ 2018-09-10 11:26 UTC (permalink / raw)
  To: linux-kernel
  Cc: linux-clk, devicetree, linux-input, Rob Herring, Mark Rutland,
	Dmitry Torokhov, Michael Turquette, Stephen Boyd, Lubomir Rintel

This is a device-tree enabled driver. Moreover CONFIG_OLPC is specific
to the x86 platform code, while the driver is for an ARM-based laptop.

Signed-off-by: Lubomir Rintel <lkundrak@v3.sk>
---
 drivers/input/serio/Kconfig | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/input/serio/Kconfig b/drivers/input/serio/Kconfig
index d90d9f1098ff..a4f70021b53e 100644
--- a/drivers/input/serio/Kconfig
+++ b/drivers/input/serio/Kconfig
@@ -254,7 +254,7 @@ config SERIO_APBPS2
 
 config SERIO_OLPC_APSP
 	tristate "OLPC AP-SP input support"
-	depends on OLPC || COMPILE_TEST
+	depends on OF
 	help
 	  Say Y here if you want support for the keyboard and touchpad included
 	  in the OLPC XO-1.75 and XO-4 laptops.
-- 
2.17.1


^ permalink raw reply related	[flat|nested] 13+ messages in thread

* [PATCH 6/8] Input: olpc_apsp: check FIFO status on open(), not probe()
  2018-09-10 11:26 [PATCH 0/8] OLPC 1.75 Keyboard/Touchpad fixes Lubomir Rintel
                   ` (4 preceding siblings ...)
  2018-09-10 11:26 ` [PATCH 5/8] Input: olpc_apsp: depend on CONFIG_OF Lubomir Rintel
@ 2018-09-10 11:26 ` Lubomir Rintel
  2018-11-02 22:16   ` Pavel Machek
  2018-09-10 11:26 ` [PATCH 7/8] Input: olpc_apsp: enable the SP clock Lubomir Rintel
                   ` (2 subsequent siblings)
  8 siblings, 1 reply; 13+ messages in thread
From: Lubomir Rintel @ 2018-09-10 11:26 UTC (permalink / raw)
  To: linux-kernel
  Cc: linux-clk, devicetree, linux-input, Rob Herring, Mark Rutland,
	Dmitry Torokhov, Michael Turquette, Stephen Boyd, Lubomir Rintel

Let's defer the FIFO status checking until open().

When we'll get a clk handle, this will allow us to defer clock enablement
until the device is actually used.

Signed-off-by: Lubomir Rintel <lkundrak@v3.sk>
---
 drivers/input/serio/olpc_apsp.c | 14 +++++++-------
 1 file changed, 7 insertions(+), 7 deletions(-)

diff --git a/drivers/input/serio/olpc_apsp.c b/drivers/input/serio/olpc_apsp.c
index 8e9a4209fcad..8b19a47dfa46 100644
--- a/drivers/input/serio/olpc_apsp.c
+++ b/drivers/input/serio/olpc_apsp.c
@@ -145,8 +145,15 @@ static int olpc_apsp_open(struct serio *port)
 {
 	struct olpc_apsp *priv = port->port_data;
 	unsigned int tmp;
+	unsigned long l;
 
 	if (priv->open_count++ == 0) {
+		l = readl(priv->base + COMMAND_FIFO_STATUS);
+		if (!(l & CMD_STS_MASK)) {
+			dev_err(priv->dev, "SP cannot accept commands.\n");
+			return -EIO;
+		}
+
 		/* Enable interrupt 0 by clearing its bit */
 		tmp = readl(priv->base + PJ_INTERRUPT_MASK);
 		writel(tmp & ~INT_0, priv->base + PJ_INTERRUPT_MASK);
@@ -173,7 +180,6 @@ static int olpc_apsp_probe(struct platform_device *pdev)
 	struct olpc_apsp *priv;
 	struct resource *res;
 	struct device_node *np;
-	unsigned long l;
 	int error;
 
 	priv = devm_kzalloc(&pdev->dev, sizeof(struct olpc_apsp), GFP_KERNEL);
@@ -192,12 +198,6 @@ static int olpc_apsp_probe(struct platform_device *pdev)
 	if (priv->irq < 0)
 		return priv->irq;
 
-	l = readl(priv->base + COMMAND_FIFO_STATUS);
-	if (!(l & CMD_STS_MASK)) {
-		dev_err(&pdev->dev, "SP cannot accept commands.\n");
-		return -EIO;
-	}
-
 	/* KEYBOARD */
 	kb_serio = kzalloc(sizeof(struct serio), GFP_KERNEL);
 	if (!kb_serio)
-- 
2.17.1


^ permalink raw reply related	[flat|nested] 13+ messages in thread

* [PATCH 7/8] Input: olpc_apsp: enable the SP clock
  2018-09-10 11:26 [PATCH 0/8] OLPC 1.75 Keyboard/Touchpad fixes Lubomir Rintel
                   ` (5 preceding siblings ...)
  2018-09-10 11:26 ` [PATCH 6/8] Input: olpc_apsp: check FIFO status on open(), not probe() Lubomir Rintel
@ 2018-09-10 11:26 ` Lubomir Rintel
  2018-09-10 11:26 ` [PATCH 8/8] Input: olpc_apsp: allocate the GPIOs used Lubomir Rintel
  2018-11-01 21:56 ` [PATCH 0/8] OLPC 1.75 Keyboard/Touchpad fixes Pavel Machek
  8 siblings, 0 replies; 13+ messages in thread
From: Lubomir Rintel @ 2018-09-10 11:26 UTC (permalink / raw)
  To: linux-kernel
  Cc: linux-clk, devicetree, linux-input, Rob Herring, Mark Rutland,
	Dmitry Torokhov, Michael Turquette, Stephen Boyd, Lubomir Rintel

Without the clock, the keyboard controller won't operate.
Tested on an OLPC XO 1.75.

Signed-off-by: Lubomir Rintel <lkundrak@v3.sk>
---
 drivers/input/serio/olpc_apsp.c | 13 +++++++++++++
 1 file changed, 13 insertions(+)

diff --git a/drivers/input/serio/olpc_apsp.c b/drivers/input/serio/olpc_apsp.c
index 8b19a47dfa46..fe9e19014e70 100644
--- a/drivers/input/serio/olpc_apsp.c
+++ b/drivers/input/serio/olpc_apsp.c
@@ -23,6 +23,7 @@
 #include <linux/of.h>
 #include <linux/slab.h>
 #include <linux/delay.h>
+#include <linux/clk.h>
 
 /*
  * The OLPC XO-1.75 and XO-4 laptops do not have a hardware PS/2 controller.
@@ -74,6 +75,7 @@ struct olpc_apsp {
 	struct serio *kbio;
 	struct serio *padio;
 	void __iomem *base;
+	struct clk *clk;
 	int open_count;
 	int irq;
 };
@@ -146,8 +148,13 @@ static int olpc_apsp_open(struct serio *port)
 	struct olpc_apsp *priv = port->port_data;
 	unsigned int tmp;
 	unsigned long l;
+	int error;
 
 	if (priv->open_count++ == 0) {
+		error = clk_prepare_enable(priv->clk);
+		if (error)
+			return error;
+
 		l = readl(priv->base + COMMAND_FIFO_STATUS);
 		if (!(l & CMD_STS_MASK)) {
 			dev_err(priv->dev, "SP cannot accept commands.\n");
@@ -171,6 +178,8 @@ static void olpc_apsp_close(struct serio *port)
 		/* Disable interrupt 0 */
 		tmp = readl(priv->base + PJ_INTERRUPT_MASK);
 		writel(tmp | INT_0, priv->base + PJ_INTERRUPT_MASK);
+
+		clk_disable_unprepare(priv->clk);
 	}
 }
 
@@ -198,6 +207,10 @@ static int olpc_apsp_probe(struct platform_device *pdev)
 	if (priv->irq < 0)
 		return priv->irq;
 
+	priv->clk = devm_clk_get(&pdev->dev, "sp");
+	if (IS_ERR(priv->clk))
+		return PTR_ERR(priv->clk);
+
 	/* KEYBOARD */
 	kb_serio = kzalloc(sizeof(struct serio), GFP_KERNEL);
 	if (!kb_serio)
-- 
2.17.1


^ permalink raw reply related	[flat|nested] 13+ messages in thread

* [PATCH 8/8] Input: olpc_apsp: allocate the GPIOs used
  2018-09-10 11:26 [PATCH 0/8] OLPC 1.75 Keyboard/Touchpad fixes Lubomir Rintel
                   ` (6 preceding siblings ...)
  2018-09-10 11:26 ` [PATCH 7/8] Input: olpc_apsp: enable the SP clock Lubomir Rintel
@ 2018-09-10 11:26 ` Lubomir Rintel
  2018-11-01 21:56 ` [PATCH 0/8] OLPC 1.75 Keyboard/Touchpad fixes Pavel Machek
  8 siblings, 0 replies; 13+ messages in thread
From: Lubomir Rintel @ 2018-09-10 11:26 UTC (permalink / raw)
  To: linux-kernel
  Cc: linux-clk, devicetree, linux-input, Rob Herring, Mark Rutland,
	Dmitry Torokhov, Michael Turquette, Stephen Boyd, Lubomir Rintel

Take the GPIO lines are used by the SP. The driver doesn't touch the
lines -- this is done to disallow anything else from fiddling with
them because that would confuse the SP firmware.

Also, the lines are now nicely visible in /sys/kernel/debug/gpio.

Signed-off-by: Lubomir Rintel <lkundrak@v3.sk>
---
 drivers/input/serio/olpc_apsp.c | 13 +++++++++++++
 1 file changed, 13 insertions(+)

diff --git a/drivers/input/serio/olpc_apsp.c b/drivers/input/serio/olpc_apsp.c
index fe9e19014e70..287759c5f36d 100644
--- a/drivers/input/serio/olpc_apsp.c
+++ b/drivers/input/serio/olpc_apsp.c
@@ -24,6 +24,7 @@
 #include <linux/slab.h>
 #include <linux/delay.h>
 #include <linux/clk.h>
+#include <linux/gpio/consumer.h>
 
 /*
  * The OLPC XO-1.75 and XO-4 laptops do not have a hardware PS/2 controller.
@@ -76,6 +77,8 @@ struct olpc_apsp {
 	struct serio *padio;
 	void __iomem *base;
 	struct clk *clk;
+	struct gpio_desc *clk_gpio;
+	struct gpio_desc *data_gpio;
 	int open_count;
 	int irq;
 };
@@ -211,6 +214,16 @@ static int olpc_apsp_probe(struct platform_device *pdev)
 	if (IS_ERR(priv->clk))
 		return PTR_ERR(priv->clk);
 
+	priv->clk_gpio = devm_gpiod_get_optional(&pdev->dev, "clk",
+							GPIOD_ASIS);
+	if (IS_ERR(priv->clk_gpio))
+		return PTR_ERR(priv->clk_gpio);
+
+	priv->data_gpio = devm_gpiod_get_optional(&pdev->dev, "data",
+							GPIOD_ASIS);
+	if (IS_ERR(priv->data_gpio))
+		return PTR_ERR(priv->data_gpio);
+
 	/* KEYBOARD */
 	kb_serio = kzalloc(sizeof(struct serio), GFP_KERNEL);
 	if (!kb_serio)
-- 
2.17.1


^ permalink raw reply related	[flat|nested] 13+ messages in thread

* Re: [PATCH 3/8] dt-bindings: marvell,mmp2: Add clock id for the SP clock
  2018-09-10 11:26 ` [PATCH 3/8] dt-bindings: marvell,mmp2: Add clock id for the SP clock Lubomir Rintel
@ 2018-10-02  7:18   ` Stephen Boyd
  0 siblings, 0 replies; 13+ messages in thread
From: Stephen Boyd @ 2018-10-02  7:18 UTC (permalink / raw)
  To: Lubomir Rintel, linux-kernel
  Cc: linux-clk, devicetree, linux-input, Rob Herring, Mark Rutland,
	Dmitry Torokhov, Michael Turquette, Lubomir Rintel

Quoting Lubomir Rintel (2018-09-10 04:26:49)
> This is the clock for the "security processor" core.
> 
> Signed-off-by: Lubomir Rintel <lkundrak@v3.sk>
> ---

Acked-by: Stephen Boyd <sboyd@kernel.org>


^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [PATCH 4/8] clk: mmp2: add SP clock
  2018-09-10 11:26 ` [PATCH 4/8] clk: mmp2: add " Lubomir Rintel
@ 2018-10-02  7:18   ` Stephen Boyd
  0 siblings, 0 replies; 13+ messages in thread
From: Stephen Boyd @ 2018-10-02  7:18 UTC (permalink / raw)
  To: Lubomir Rintel, linux-kernel
  Cc: linux-clk, devicetree, linux-input, Rob Herring, Mark Rutland,
	Dmitry Torokhov, Michael Turquette, Lubomir Rintel

Quoting Lubomir Rintel (2018-09-10 04:26:50)
> The "security processor", sometimes referred to as "wireless trusted
> module" or "generic encrypt unit" is a low-power core present on MMP2,
> that has nothing to do with security, wireless, trust or encryption.
> 
> On an OLPC machine it runs CForth and serves as a keyboard controller:
> http://dev.laptop.org/git/users/wmb/cforth/tree/src/app/arm-xo-1.75/ps2.fth
> 
> The register address was obtained from the OLPC kernel, since the
> datasheet seems to be the Marvell's most important business secret.
> 
> Signed-off-by: Lubomir Rintel <lkundrak@v3.sk>
> ---

Acked-by: Stephen Boyd <sboyd@kernel.org>


^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [PATCH 0/8] OLPC 1.75 Keyboard/Touchpad fixes
  2018-09-10 11:26 [PATCH 0/8] OLPC 1.75 Keyboard/Touchpad fixes Lubomir Rintel
                   ` (7 preceding siblings ...)
  2018-09-10 11:26 ` [PATCH 8/8] Input: olpc_apsp: allocate the GPIOs used Lubomir Rintel
@ 2018-11-01 21:56 ` Pavel Machek
  8 siblings, 0 replies; 13+ messages in thread
From: Pavel Machek @ 2018-11-01 21:56 UTC (permalink / raw)
  To: Lubomir Rintel
  Cc: linux-kernel, linux-clk, devicetree, linux-input, Rob Herring,
	Mark Rutland, Dmitry Torokhov, Michael Turquette, Stephen Boyd

[-- Attachment #1: Type: text/plain, Size: 308 bytes --]

Hi!

> This makes keyboard/touchpad work on a DT MMP2 platform.

For the series:

Acked-by: Pavel Machek <pavel@ucw.cz>
Tested-by: Pavel Machek <pavel@ucw.cz>

-- 
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 181 bytes --]

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [PATCH 6/8] Input: olpc_apsp: check FIFO status on open(), not probe()
  2018-09-10 11:26 ` [PATCH 6/8] Input: olpc_apsp: check FIFO status on open(), not probe() Lubomir Rintel
@ 2018-11-02 22:16   ` Pavel Machek
  0 siblings, 0 replies; 13+ messages in thread
From: Pavel Machek @ 2018-11-02 22:16 UTC (permalink / raw)
  To: Lubomir Rintel
  Cc: linux-kernel, linux-clk, devicetree, linux-input, Rob Herring,
	Mark Rutland, Dmitry Torokhov, Michael Turquette, Stephen Boyd

[-- Attachment #1: Type: text/plain, Size: 460 bytes --]

On Mon 2018-09-10 13:26:52, Lubomir Rintel wrote:
> Let's defer the FIFO status checking until open().
> 
> When we'll get a clk handle, this will allow us to defer clock enablement
> until the device is actually used.
> 
> Signed-off-by: Lubomir Rintel <lkundrak@v3.sk>

Acked-by: Pavel Machek <pavel@ucw.cz>

-- 
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 181 bytes --]

^ permalink raw reply	[flat|nested] 13+ messages in thread

end of thread, other threads:[~2018-11-02 22:16 UTC | newest]

Thread overview: 13+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-09-10 11:26 [PATCH 0/8] OLPC 1.75 Keyboard/Touchpad fixes Lubomir Rintel
2018-09-10 11:26 ` [PATCH 1/8] dt-bindings: olpc,ap-sp: add clock Lubomir Rintel
2018-09-10 11:26 ` [PATCH 2/8] dt-bindings: olpc,ap-sp: add GPIO lines Lubomir Rintel
2018-09-10 11:26 ` [PATCH 3/8] dt-bindings: marvell,mmp2: Add clock id for the SP clock Lubomir Rintel
2018-10-02  7:18   ` Stephen Boyd
2018-09-10 11:26 ` [PATCH 4/8] clk: mmp2: add " Lubomir Rintel
2018-10-02  7:18   ` Stephen Boyd
2018-09-10 11:26 ` [PATCH 5/8] Input: olpc_apsp: depend on CONFIG_OF Lubomir Rintel
2018-09-10 11:26 ` [PATCH 6/8] Input: olpc_apsp: check FIFO status on open(), not probe() Lubomir Rintel
2018-11-02 22:16   ` Pavel Machek
2018-09-10 11:26 ` [PATCH 7/8] Input: olpc_apsp: enable the SP clock Lubomir Rintel
2018-09-10 11:26 ` [PATCH 8/8] Input: olpc_apsp: allocate the GPIOs used Lubomir Rintel
2018-11-01 21:56 ` [PATCH 0/8] OLPC 1.75 Keyboard/Touchpad fixes Pavel Machek

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).