pwm: samsung: Set pdev field of driver data structure

The pdev field is used by pwm_dbg macro, when DEBUG is enabled, leading
to NULL pointer dereferences when the field is not initialized.

Signed-off-by: Tomasz Figa <tomasz.figa@gmail.com>
pwm: samsung: Do not use clock API for PWM configuration

PWM prescalers and dividers are part of the PWM block and used only
inside this block, so their configuration code should be placed in the
driver.

Signed-off-by: Tomasz Figa <tomasz.figa@gmail.com>
clocksource: samsung-time: Remove unused register definitions

Signed-off-by: Tomasz Figa <tomasz.figa@gmail.com>
clocksource: samsung-time: Fix meaning of divisor field in variant data

Signed-off-by: Tomasz Figa <tomasz.figa@gmail.com>
clocksource: samsung-time: Protect shared PWM registers with local_irq_save

On uniprocessor Samsung SoCs the PWM block can be used by two drivers at
the same time - samsung-time (providing a clocksource) and pwm-samsung
(controlling PWM outputs), which makes some control registers shared by
them.

This patch protects accesses to such registers with local_irq_save,
which is sufficient on uniprocessor systems.

Signed-off-by: Tomasz Figa <tomasz.figa@gmail.com>
clocksource: samsung-time: Do not use clock API for PWM configuration

PWM prescalers and dividers are part of the PWM block and used only
inside this block, so their configuration code should be placed in the
driver.

Signed-off-by: Tomasz Figa <tomasz.figa@gmail.com>
pwm: samsung: Copy PWM configuration helper functions to the driver

This patch copies two PWM configuration helper functions from
plat/pwm-clock.h header to the pwm-samsung driver, as a part of removing
the pwm-clock infrastructure.

Signed-off-by: Tomasz Figa <tomasz.figa@gmail.com>
ARM: SAMSUNG: Remove pwm-clock infrastructure

Since all the used PWM prescalers and dividers configuration has been
moved to appropriate drivers, the pwm-clock infrastructure is now
unused and so this patch removes it.

Signed-off-by: Tomasz Figa <tomasz.figa@gmail.com>