Letux Kernel

Issue 560: Add rfkill driver for UMTS modem

Reported by Nikolaus Schaller, Jan 26, 2014

can be quite generic between OPTION GTM and Cinterion.

Both have an "ON_KEY"/"IGNITE" trigger from the 
APU to the modem that needs some 0-1-0 impulse to start the modem.

And they have an (optional) 
"RESET_OUT"/"PWR_IND" output from the module to 
the APU indicating that the Modem is active. This is only available 
in GTA04A5 and Neo900.

So we need to configure (through platform data or device tree):
* gpio_ignite
* polarity (?)
* gpio_power
* polarity (?)
* delay for pulse length
* delay for waiting until feedback is polled

The driver should try to check if the impulse was successful (if the 
gpio has been provided) and report errors.

And/or should report the real state.

Then, we can simply

rfkill unlock wwan
rfkill lock wwan

Comment 1 by Nikolaus Schaller, Jan 26, 2014

Labels: Milestone:3.14 3.14

Comment 2 by Nikolaus Schaller, Feb 7, 2014

It should even be defined as a regulator so that we can simply use 
it like

	wwan-rfkill {
		compatible = "rfkill-regulator";
		label = "WWAN";
		type = <RFKILL_TYPE_WWAN>;
		vrfkill-supply = <&this-new-regulator>;

Comment 3 by Nikolaus Schaller, Apr 10, 2014

a device tree entry has already been prepared.
Labels: Priority:Medium Milestone:3.15 Priority:Critical Milestone:3.14

Comment 4 by Nikolaus Schaller, Jun 1, 2014

Preliminary driver has been added. Has no real function yet.

Comment 5 by Nikolaus Schaller, Aug 17, 2014

Status: Accepted
Owner: hns

Comment 6 by Nikolaus Schaller, Sep 6, 2014

The driver should now have minimal functionality for the GTA04A4:
It reacts to
  rfkill unblock wwan
and tells on dmesg about sending impulses.

But I don't see the modem on the internal USB.
This might as well be a problem of the UAB2-PHY and not related to 
this driver.

Comment 7 by Nikolaus Schaller, Nov 5, 2014

The problem was that the gpio was not initialized correctly.

So we only need the USB-PHY state feedback.

And a new feature: a "poweroff" command should turn off 
the modem before halting the CPU. So we should register and handle 
that event as well. And the modem should stay on only if the CPU is 
in suspend.

Created: 10 years 4 months ago by Nikolaus Schaller

Updated: 9 years 6 months ago

Status: Accepted

Owner: Nikolaus Schaller