tree blob.
Fixes: 847b8bf62eb4 ("rtc: sun6i: Expose the 32kHz oscillator")
Signed-off-by: Chen-Yu Tsai
---
drivers/rtc/rtc-sun6i.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/drivers/rtc/rtc-sun6i.c b/drivers/rtc/rtc-sun6i.c
index 613f42ade533..08510ca58996 1006
Hi,
On Fri, Jan 20, 2017 at 11:56 PM, Maxime Ripard
wrote:
> The internal oscillator is way too inaccurate to do something useful with
> it. Switch to the external oscillator if it is available.
>
> Signed-off-by: Maxime Ripard
> ---
> drivers/rtc/rtc-sun6i.c | 12
> 1 file changed
possible breakage
by that one.
Regards
ChenYu
> .driver = {
> .name = "sun6i-rtc",
> .of_match_table = sun6i_rtc_dt_ids,
> },
> };
> -
> -module_platform_driver(sun6i_rtc_driver);
> -
> -MODULE_DESCRIPTION("sun6i RTC driver");
&
On Fri, Jan 20, 2017 at 11:56 PM, Maxime Ripard
wrote:
> Some registers have a read-modify-write access pattern that are not atomic.
>
> Add some locking to prevent from concurrent accesses.
>
> Signed-off-by: Maxime Ripard
Acked-by: Chen-Yu Tsai
Though I think it would b
On Fri, Jan 20, 2017 at 11:56 PM, Maxime Ripard
wrote:
> The RTC controls the input source of the main 32kHz oscillator in the
> system, feeding it to the clock unit too.
>
> By default, this is using an internal, very inaccurate (+/- 30%)
> oscillator with a divider to make it roughly around 32kH
The 32.768 kHz clock inside the A80 SoC is fed from an external source,
typically the AC100 RTC module.
Make the osc32k placeholder a fixed-factor clock so board dts files can
specify its source.
Signed-off-by: Chen-Yu Tsai
---
Changes since v5:
- Added "clk-div" and "clk-mul
output to this clk in the board dts files.
Regards
ChenYu
Chen-Yu Tsai (4):
rtc: ac100: support clock-output-names in device tree binding
ARM: dts: sun9i: a80-optimus: Add device node for AC100
ARM: dts: sun9i: cubieboard4: Add device node for AC100
ARM: dts: sun9i: Switch to the AC100 R
Signed-off-by: Chen-Yu Tsai
---
Changes since v5: none
Changes since v4: none
Changes since v3:
- Moved 4M ADDA clk to codec side
Changes since v2: none
Changes since v1: none
---
arch/arm/boot/dts/sun9i-a80-cubieboard4.dts | 24
1 file
Signed-off-by: Chen-Yu Tsai
---
Changes since v5: none
Changes since v4: none
Changes since v3:
- Moved 4M ADDA clk to codec side
Changes since v2: none
Changes since v1: none
---
arch/arm/boot/dts/sun9i-a80-optimus.dts | 24
1 file changed, 24 insertions(+)
diff
pport for this.
Signed-off-by: Chen-Yu Tsai
---
Changes since v5:
- New patch, based on mfd-rtc immutable branch given in
http://www.spinics.net/lists/devicetree/msg137991.html
---
drivers/rtc/rtc-ac100.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/drivers/rtc/rtc-ac100.c b/dr
On Tue, Jul 12, 2016 at 10:02 AM, Chen-Yu Tsai wrote:
> On Mon, Jul 11, 2016 at 2:50 PM, Maxime Ripard
> wrote:
>> Hi,
>>
>> On Fri, Jul 08, 2016 at 10:33:42PM +0800, Chen-Yu Tsai wrote:
>>> The 32.768 kHz clock inside the A80 SoC is fed from an external so
On Fri, Jul 22, 2016 at 8:24 AM, Michael Turquette
wrote:
> Quoting Chen-Yu Tsai (2016-07-13 20:34:34)
>> On Sat, Jul 9, 2016 at 2:36 AM, Michael Turquette
>> wrote:
>> > Quoting Chen-Yu Tsai (2016-06-30 08:58:48)
>> >> +static long ac100_clkout_round_r
On Sat, Jul 9, 2016 at 2:36 AM, Michael Turquette
wrote:
> Quoting Chen-Yu Tsai (2016-06-30 08:58:48)
>> +static long ac100_clkout_round_rate(struct clk_hw *hw, unsigned long rate,
>> + unsigned long prate)
>> +{
>> + unsigned l
On Mon, Jul 11, 2016 at 2:50 PM, Maxime Ripard
wrote:
> Hi,
>
> On Fri, Jul 08, 2016 at 10:33:42PM +0800, Chen-Yu Tsai wrote:
>> The 32.768 kHz clock inside the A80 SoC is fed from an external source,
>> typically the AC100 RTC module.
>>
>> Make the osc32k pl
The AC100 is a multifunction device with an audio codec subsystem and
an RTC subsystem. These two subsystems share a common register space
and host interface.
Signed-off-by: Chen-Yu Tsai
Acked-by: Rob Herring
---
Changes since v4:
- Style changes suggested by Lee.
- Added commit message
X-Powers AC100 is a codec / RTC combo chip. This driver supports
the RTC sub-device.
The RTC block also has clock outputs and non-volatile storage.
Non-volatile storage wthin the RTC hardware is not supported.
Clock output support is added in the next patch.
Signed-off-by: Chen-Yu Tsai
Signed-off-by: Chen-Yu Tsai
---
Changes since v4: none
Changes since v3:
- Moved 4M ADDA clk to codec side
Changes since v2: none
Changes since v1: none
---
arch/arm/boot/dts/sun9i-a80-optimus.dts | 24
1 file changed, 24 insertions(+)
diff --git a/arch/arm/boot
The 32.768 kHz clock inside the A80 SoC is fed from an external source,
typically the AC100 RTC module.
Make the osc32k placeholder a fixed-factor clock so board dts files can
specify its source.
Signed-off-by: Chen-Yu Tsai
---
Changes since v4: none
Changes since v3: none
Changes since v2
Signed-off-by: Chen-Yu Tsai
---
Changes since v4: none
Changes since v3:
- Moved 4M ADDA clk to codec side
Changes since v2: none
Changes since v1: none
---
arch/arm/boot/dts/sun9i-a80-cubieboard4.dts | 24
1 file changed, 24 insertions
ee, with acks from the rtc maintainers for patches 3 and 4.
Regards
ChenYu
Chen-Yu Tsai (7):
mfd: ac100: Add device tree bindings for X-Powers AC100 codec/RTC
combo IC
mfd: ac100: Add driver for X-Powers AC100 audio codec / RTC combo IC
rtc: ac100: Add RTC driver for X-Powers AC100
rt
The AC100's RTC side has 3 clock outputs on external pins, which can
provide a clock signal to the SoC or other modules, such as WiFi or
GSM modules.
Support this with a custom clk driver integrated with the rtc driver.
Signed-off-by: Chen-Yu Tsai
---
Changes since v4: none
Changes sin
The AC100 is a multifunction device with an audio codec subsystem and
an RTC subsystem. These two subsystems share a common register space
and host interface.
Signed-off-by: Chen-Yu Tsai
Acked-by: Lee Jones
---
Changes since v4:
- None.
Changes since v3:
- Changed register name prefix to
On Thu, Jul 7, 2016 at 12:50 PM, Stephan Roslen wrote:
> On 06.07.2016 22:20, Maxime Ripard wrote:
>> On Wed, Jul 06, 2016 at 10:43:00AM +0200, Stephan Roslen wrote:
>>> +writel(loscctrl, chip->base + SUNXI_LOSC_CTRL);
>>> +udelay(100);
>>
>> Why is that udelay needed?
>
> I found that stu
acks from the rtc and clk maintainers for patches
3 and 4.
Regards
ChenYu
Chen-Yu Tsai (7):
mfd: ac100: Add device tree bindings for X-Powers AC100 codec/RTC
combo IC
mfd: ac100: Add driver for X-Powers AC100 audio codec / RTC combo IC
rtc: ac100: Add RTC driver for X-Powers AC100
r
Signed-off-by: Chen-Yu Tsai
---
Changes since v3:
- Fixed device node names and added labels.
- Added clock output from codec and input to rtc.
Changes since v2:
- Fix interrupt line for ac100_codec in provided example.
---
Documentation/devicetree/bindings/mfd/ac100.txt | 49
The 32.768 kHz clock inside the A80 SoC is fed from an external source,
typically the AC100 RTC module.
Make the osc32k placeholder a fixed-factor clock so board dts files can
specify its source.
Signed-off-by: Chen-Yu Tsai
---
Changes since v3: none
Changes since v2: none
Changes since v1
The AC100 is a multifunction device with an audio codec subsystem and
an RTC subsystem. These two subsystems share a common register space
and host interface.
Signed-off-by: Chen-Yu Tsai
Acked-by: Lee Jones
---
Changes since v3:
- Changed register name prefix to CLKOUT_ for clock output
The AC100's RTC side has 3 clock outputs on external pins, which can
provide a clock signal to the SoC or other modules, such as WiFi or
GSM modules.
Support this with a custom clk driver integrated with the rtc driver.
Signed-off-by: Chen-Yu Tsai
---
Changes since v3:
- Renamed c
Signed-off-by: Chen-Yu Tsai
---
Changes since v3:
- Moved 4M ADDA clk to codec side
Changes since v2: none
Changes since v1: none
---
arch/arm/boot/dts/sun9i-a80-cubieboard4.dts | 24
1 file changed, 24 insertions(+)
diff --git a/arch/arm
X-Powers AC100 is a codec / RTC combo chip. This driver supports
the RTC sub-device.
The RTC block also has clock outputs and non-volatile storage.
Non-volatile storage wthin the RTC hardware is not supported.
Clock output support is added in the next patch.
Signed-off-by: Chen-Yu Tsai
Signed-off-by: Chen-Yu Tsai
---
Changes since v3:
- Moved 4M ADDA clk to codec side
Changes since v2: none
Changes since v1: none
---
arch/arm/boot/dts/sun9i-a80-optimus.dts | 24
1 file changed, 24 insertions(+)
diff --git a/arch/arm/boot/dts/sun9i-a80-optimus.dts
On Tue, Jun 28, 2016 at 3:23 AM, Maxime Ripard
wrote:
> On Wed, Jun 22, 2016 at 06:11:55PM +0800, Chen-Yu Tsai wrote:
>> On Wed, Jun 22, 2016 at 6:02 PM, Maxime Ripard
>> wrote:
>> > Hi,
>> >
>> > On Mon, Jun 20, 2016 at 10:52:15AM +0800, Chen-Yu Tsa
On Sun, Jun 26, 2016 at 8:45 AM, Alexandre Belloni
wrote:
> On 20/06/2016 at 10:52:15 +0800, Chen-Yu Tsai wrote :
>> +struct ac100_clk32k {
>> + struct clk_hw hw;
>> + struct regmap *regmap;
>> + u8 offset;
>> +};
>> +
>> +#define
On Sun, Jun 26, 2016 at 8:30 AM, Alexandre Belloni
wrote:
> Hi,
>
> A few comments, mostly about style.
>
> On 20/06/2016 at 10:52:14 +0800, Chen-Yu Tsai wrote :
>> +struct ac100_rtc_dev {
>> + struct rtc_device *rtc;
>> + struct device *de
On Wed, Jun 22, 2016 at 6:02 PM, Maxime Ripard
wrote:
> Hi,
>
> On Mon, Jun 20, 2016 at 10:52:15AM +0800, Chen-Yu Tsai wrote:
>> + /*
>> + * The ADDA 4 MHz clock is from the codec side of the AC100,
>> + * which is likely a different power domain. However
On Tue, Jun 21, 2016 at 9:14 PM, Rob Herring wrote:
> On Mon, Jun 20, 2016 at 10:52:12AM +0800, Chen-Yu Tsai wrote:
>> Signed-off-by: Chen-Yu Tsai
>> ---
>> Changes since v2:
>>
>> - Fix interrupt line for ac100_codec in provided example.
>>
>>
Signed-off-by: Chen-Yu Tsai
---
Changes since v2:
- Fix interrupt line for ac100_codec in provided example.
---
Documentation/devicetree/bindings/mfd/ac100.txt | 42 +
1 file changed, 42 insertions(+)
create mode 100644 Documentation/devicetree/bindings/mfd/ac100.txt
o this clk in the board dts files.
I'm hoping we can merge the driver bits (patches 2~5) through the
mfd tree, with acks from the rtc and clk maintainers for patches
4 and 5.
Regards
ChenYu
Chen-Yu Tsai (8):
regmap: Support bulk writes for devices without raw formatting
mfd: ac100:
Signed-off-by: Chen-Yu Tsai
---
Changes since v2: none
Changes since v1: none
---
arch/arm/boot/dts/sun9i-a80-cubieboard4.dts | 21 +
1 file changed, 21 insertions(+)
diff --git a/arch/arm/boot/dts/sun9i-a80-cubieboard4.dts
b/arch/arm/boot/dts/sun9i-a80-cubieboard4.dts
X-Powers AC100 is a codec / RTC combo chip. This driver supports
the RTC sub-device.
The RTC block also has clock outputs and non-volatile storage.
Non-volatile storage wthin the RTC hardware is not supported.
Clock output support is added in the next patch.
Signed-off-by: Chen-Yu Tsai
thout raw formatting").
Signed-off-by: Chen-Yu Tsai
---
Changes since v2: none
Changes since v1: none
---
drivers/base/regmap/regmap.c | 31 ---
1 file changed, 28 insertions(+), 3 deletions(-)
diff --git a/drivers/base/regmap/regmap.c b/drivers/base/regmap/regm
The AC100's RTC side has 3 clock outputs on external pins, which can
provide a clock signal to the SoC or other modules, such as WiFi or
GSM modules.
Support this with a custom clk driver integrated with the rtc driver.
Signed-off-by: Chen-Yu Tsai
---
Changes since v2: none
Changes sin
The 32.768 kHz clock inside the A80 SoC is fed from an external source,
typically the AC100 RTC module.
Make the osc32k placeholder a fixed-factor clock so board dts files can
specify its source.
Signed-off-by: Chen-Yu Tsai
---
Changes since v2: none
Changes since v1: none
---
arch/arm/boot
Signed-off-by: Chen-Yu Tsai
---
Changes since v2: none
Changes since v1: none
---
arch/arm/boot/dts/sun9i-a80-optimus.dts | 21 +
1 file changed, 21 insertions(+)
diff --git a/arch/arm/boot/dts/sun9i-a80-optimus.dts
b/arch/arm/boot/dts/sun9i-a80-optimus.dts
index
The AC100 is a multifunction device with an audio codec subsystem and
an RTC subsystem. These two subsystems share a common register space
and host interface.
Signed-off-by: Chen-Yu Tsai
Acked-by: Lee Jones
---
Changes since v2:
- Dropped file name
- Added copyright line.
- Changed
On Wed, Jun 15, 2016 at 8:49 PM, Lee Jones wrote:
> On Wed, 15 Jun 2016, Chen-Yu Tsai wrote:
>
>> Signed-off-by: Chen-Yu Tsai
>> ---
>> Documentation/devicetree/bindings/mfd/ac100.txt | 42
>> +
>> 1 file changed, 42 insertions(+)
On Wed, Jun 15, 2016 at 8:36 PM, Lee Jones wrote:
> On Wed, 15 Jun 2016, Chen-Yu Tsai wrote:
>
>> The AC100 is a multifunction device with an audio codec subsystem and
>> an RTC subsystem. These two subsystems share a common register space
>> and host interface.
>>
Move the mmc nodes above the ohci nodes for proper ordering by name.
Signed-off-by: Chen-Yu Tsai
---
arch/arm/boot/dts/sun9i-a80-optimus.dts | 50 -
1 file changed, 25 insertions(+), 25 deletions(-)
diff --git a/arch/arm/boot/dts/sun9i-a80-optimus.dts
b/arch
Signed-off-by: Chen-Yu Tsai
---
arch/arm/boot/dts/sun9i-a80-optimus.dts | 21 +
1 file changed, 21 insertions(+)
diff --git a/arch/arm/boot/dts/sun9i-a80-optimus.dts
b/arch/arm/boot/dts/sun9i-a80-optimus.dts
index 78fddd9152a5..24ef8e65a975 100644
--- a/arch/arm/boot/dts
Signed-off-by: Chen-Yu Tsai
---
arch/arm/boot/dts/sun9i-a80-cubieboard4.dts | 21 +
1 file changed, 21 insertions(+)
diff --git a/arch/arm/boot/dts/sun9i-a80-cubieboard4.dts
b/arch/arm/boot/dts/sun9i-a80-cubieboard4.dts
index db770d06c31e..a92eeea1b222 100644
--- a/arch/arm
The AC100 is a multifunction device with an audio codec subsystem and
an RTC subsystem. These two subsystems share a common register space
and host interface.
Signed-off-by: Chen-Yu Tsai
---
drivers/mfd/Kconfig | 10 +++
drivers/mfd/Makefile | 2 +
drivers/mfd/ac100.c | 135
Signed-off-by: Chen-Yu Tsai
---
Documentation/devicetree/bindings/mfd/ac100.txt | 42 +
1 file changed, 42 insertions(+)
create mode 100644 Documentation/devicetree/bindings/mfd/ac100.txt
diff --git a/Documentation/devicetree/bindings/mfd/ac100.txt
b/Documentation
The 32.768 kHz clock inside the A80 SoC is fed from an external source,
typically the AC100 RTC module.
Make the osc32k placeholder a fixed-factor clock so board dts files can
specify its source.
Signed-off-by: Chen-Yu Tsai
---
arch/arm/boot/dts/sun9i-a80-cubieboard4.dts | 5 +
arch/arm
Move the &pio node below the mmc nodes for proper ordering by name.
Signed-off-by: Chen-Yu Tsai
---
arch/arm/boot/dts/sun9i-a80-cubieboard4.dts | 32 ++---
1 file changed, 16 insertions(+), 16 deletions(-)
diff --git a/arch/arm/boot/dts/sun9i-a80-cubieboard4.dts
b/
e can merge the driver bits (patches 2~5) through the
mfd tree, with acks from the rtc and clk maintainers for patches
4 and 5.
Regards
ChenYu
Chen-Yu Tsai (10):
regmap: Support bulk writes for devices without raw formatting
mfd: ac100: Add device tree bindings for X-Powers AC100 codec/RTC
The AC100's RTC side has 3 clock outputs on external pins, which can
provide a clock signal to the SoC or other modules, such as WiFi or
GSM modules.
Support this with a custom clk driver integrated with the rtc driver.
Signed-off-by: Chen-Yu Tsai
---
drivers/rtc/rtc-ac100.c
thout raw formatting").
Signed-off-by: Chen-Yu Tsai
---
drivers/base/regmap/regmap.c | 31 ---
1 file changed, 28 insertions(+), 3 deletions(-)
diff --git a/drivers/base/regmap/regmap.c b/drivers/base/regmap/regmap.c
index df2d2ef5d6b3..51fa7d66a393 100644
--- a/dr
X-Powers AC100 is a codec / RTC combo chip. This driver supports
the RTC sub-device.
The RTC block also has clock outputs and non-volatile storage.
Non-volatile storage wthin the RTC hardware is not supported.
Clock output support is added in the next patch.
Signed-off-by: Chen-Yu Tsai
On Tue, Jun 14, 2016 at 10:17 AM, Chen-Yu Tsai wrote:
> The AC100 is a multifunction device with an audio codec subsystem and
> an RTC subsystem. These two subsystems share a common register space
> and host interface.
>
> Signed-off-by: Chen-Yu Tsai
Self-NACK. A last minute fix
The AC100's RTC side has 3 clock outputs on external pins, which can
provide a clock signal to the SoC or other modules, such as WiFi or
GSM modules.
Support this with a custom clk driver integrated with the rtc driver.
Signed-off-by: Chen-Yu Tsai
---
drivers/rtc/rtc-ac100.c
Move the mmc nodes above the ohci nodes for proper ordering by name.
Signed-off-by: Chen-Yu Tsai
---
arch/arm/boot/dts/sun9i-a80-optimus.dts | 50 -
1 file changed, 25 insertions(+), 25 deletions(-)
diff --git a/arch/arm/boot/dts/sun9i-a80-optimus.dts
b/arch
Signed-off-by: Chen-Yu Tsai
---
arch/arm/boot/dts/sun9i-a80-optimus.dts | 21 +
1 file changed, 21 insertions(+)
diff --git a/arch/arm/boot/dts/sun9i-a80-optimus.dts
b/arch/arm/boot/dts/sun9i-a80-optimus.dts
index 78fddd9152a5..24ef8e65a975 100644
--- a/arch/arm/boot/dts
thout raw formatting").
Signed-off-by: Chen-Yu Tsai
---
drivers/base/regmap/regmap.c | 31 ---
1 file changed, 28 insertions(+), 3 deletions(-)
diff --git a/drivers/base/regmap/regmap.c b/drivers/base/regmap/regmap.c
index df2d2ef5d6b3..51fa7d66a393 100644
--- a/dr
The 32.768 kHz clock inside the A80 SoC is fed from an external source,
typically the AC100 RTC module.
Make the osc32k placeholder a fixed-factor clock so board dts files can
specify its source.
Signed-off-by: Chen-Yu Tsai
---
arch/arm/boot/dts/sun9i-a80-cubieboard4.dts | 5 +
arch/arm
e 32k clk input pin on the SoC, and also hooks up the
ac100 rtc clk output to this clk in the board dts files.
I'm hoping we can merge the driver bits (patches 2~5) through the
mfd tree, with acks from the rtc and clk maintainers for patches
4 and 5.
Regards
ChenYu
Chen-Yu Tsai (10):
regma
Signed-off-by: Chen-Yu Tsai
---
arch/arm/boot/dts/sun9i-a80-cubieboard4.dts | 21 +
1 file changed, 21 insertions(+)
diff --git a/arch/arm/boot/dts/sun9i-a80-cubieboard4.dts
b/arch/arm/boot/dts/sun9i-a80-cubieboard4.dts
index db770d06c31e..a92eeea1b222 100644
--- a/arch/arm
The AC100 is a multifunction device with an audio codec subsystem and
an RTC subsystem. These two subsystems share a common register space
and host interface.
Signed-off-by: Chen-Yu Tsai
---
drivers/mfd/Kconfig | 10 +++
drivers/mfd/Makefile | 2 +
drivers/mfd/ac100.c | 135
Signed-off-by: Chen-Yu Tsai
---
Documentation/devicetree/bindings/mfd/ac100.txt | 42 +
1 file changed, 42 insertions(+)
create mode 100644 Documentation/devicetree/bindings/mfd/ac100.txt
diff --git a/Documentation/devicetree/bindings/mfd/ac100.txt
b/Documentation
X-Powers AC100 is a codec / RTC combo chip. This driver supports
the RTC sub-device.
The RTC block also has clock outputs and non-volatile storage.
Non-volatile storage wthin the RTC hardware is not supported.
Clock output support is added in the next patch.
Signed-off-by: Chen-Yu Tsai
The AC100 is a multifunction device with an audio codec subsystem and
an RTC subsystem. These two subsystems share a common register space
and host interface.
Signed-off-by: Chen-Yu Tsai
---
drivers/mfd/Kconfig | 10
drivers/mfd/Makefile | 2 +
drivers/mfd/ac100.c | 116
Move the &pio node below the mmc nodes for proper ordering by name.
Signed-off-by: Chen-Yu Tsai
---
arch/arm/boot/dts/sun9i-a80-cubieboard4.dts | 32 ++---
1 file changed, 16 insertions(+), 16 deletions(-)
diff --git a/arch/arm/boot/dts/sun9i-a80-cubieboard4.dts
b/
71 matches
Mail list logo