Re: [PATCH 1/2] drivers: pwm: pwm-atmel: add support for pwm on sama5d2

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




Hi,
Please ignore this patch also. I will resend it after
switching to atomic PWM.

Thank you,
Claudiu Beznea


On 23.02.2017 11:16, Alexandre Belloni wrote:
> On 23/02/2017 at 10:38:39 +0200, Claudiu Beznea wrote:
>> Enable PWM on sama5d2 by adding atmel_pwm_config_v3().
>> This, simply, sets the period and duty factor registers.
>>
>> Signed-off-by: Claudiu Beznea <claudiu.beznea@xxxxxxxxxxxxx>
> Acked-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>
>
>> ---
>>  Documentation/devicetree/bindings/pwm/atmel-pwm.txt |  1 +
>>  drivers/pwm/pwm-atmel.c                             | 16 ++++++++++++++++
>>  2 files changed, 17 insertions(+)
>>
>> diff --git a/Documentation/devicetree/bindings/pwm/atmel-pwm.txt b/Documentation/devicetree/bindings/pwm/atmel-pwm.txt
>> index 02331b9..c8c831d 100644
>> --- a/Documentation/devicetree/bindings/pwm/atmel-pwm.txt
>> +++ b/Documentation/devicetree/bindings/pwm/atmel-pwm.txt
>> @@ -4,6 +4,7 @@ Required properties:
>>    - compatible: should be one of:
>>      - "atmel,at91sam9rl-pwm"
>>      - "atmel,sama5d3-pwm"
>> +    - "atmel,sama5d2-pwm"
>>    - reg: physical base address and length of the controller's registers
>>    - #pwm-cells: Should be 3. See pwm.txt in this directory for a
>>      description of the cells format.
>> diff --git a/drivers/pwm/pwm-atmel.c b/drivers/pwm/pwm-atmel.c
>> index 0e4bd4e..4406639 100644
>> --- a/drivers/pwm/pwm-atmel.c
>> +++ b/drivers/pwm/pwm-atmel.c
>> @@ -207,6 +207,15 @@ static void atmel_pwm_config_v2(struct pwm_chip *chip, struct pwm_device *pwm,
>>  	}
>>  }
>>  
>> +static void atmel_pwm_config_v3(struct pwm_chip *chip, struct pwm_device *pwm,
>> +				unsigned long dty, unsigned long prd)
>> +{
>> +	struct atmel_pwm_chip *atmel_pwm = to_atmel_pwm_chip(chip);
>> +
>> +	atmel_pwm_ch_writel(atmel_pwm, pwm->hwpwm, PWMV2_CDTY, dty);
>> +	atmel_pwm_ch_writel(atmel_pwm, pwm->hwpwm, PWMV2_CPRD, prd);
>> +}
>> +
>>  static int atmel_pwm_set_polarity(struct pwm_chip *chip, struct pwm_device *pwm,
>>  				  enum pwm_polarity polarity)
>>  {
>> @@ -295,6 +304,10 @@ static const struct atmel_pwm_data atmel_pwm_data_v2 = {
>>  	.config = atmel_pwm_config_v2,
>>  };
>>  
>> +static const struct atmel_pwm_data atmel_pwm_data_v3 = {
>> +	.config = atmel_pwm_config_v3,
>> +};
>> +
>>  static const struct platform_device_id atmel_pwm_devtypes[] = {
>>  	{
>>  		.name = "at91sam9rl-pwm",
>> @@ -316,6 +329,9 @@ static const struct of_device_id atmel_pwm_dt_ids[] = {
>>  		.compatible = "atmel,sama5d3-pwm",
>>  		.data = &atmel_pwm_data_v2,
>>  	}, {
>> +		.compatible = "atmel,sama5d2-pwm",
>> +		.data = &atmel_pwm_data_v3,
>> +	}, {
>>  		/* sentinel */
>>  	},
>>  };
>> -- 
>> 2.7.4
>>

--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Device Tree Compilter]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux PCI Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Yosemite Backpacking]
  Powered by Linux