From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751105AbdEaJSY (ORCPT ); Wed, 31 May 2017 05:18:24 -0400 Received: from mx08-00252a01.pphosted.com ([91.207.212.211]:60532 "EHLO mx08-00252a01.pphosted.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750966AbdEaJSW (ORCPT ); Wed, 31 May 2017 05:18:22 -0400 Subject: [PATCH v2 0/2] clk: bcm2835: PCM clock improvements From: Phil Elwell To: Michael Turquette , Stephen Boyd , Eric Anholt , Stefan Wahren , Florian Fainelli , linux-clk@vger.kernel.org, linux-rpi-kernel@lists.infradead.org, linux-kernel@vger.kernel.org References: <4c11ad43-ef4e-3fbd-500a-02b2b46e0fbd@raspberrypi.org> Message-ID: Date: Wed, 31 May 2017 10:18:19 +0100 User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:52.0) Gecko/20100101 Thunderbird/52.1.1 MIME-Version: 1.0 In-Reply-To: <4c11ad43-ef4e-3fbd-500a-02b2b46e0fbd@raspberrypi.org> Content-Type: text/plain; charset=utf-8 Content-Language: en-GB Content-Transfer-Encoding: 7bit X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10432:,, definitions=2017-05-31_03:,, signatures=0 X-Proofpoint-Spam-Details: rule=outbound_spam_notspam policy=outbound_spam score=0 priorityscore=1501 malwarescore=0 suspectscore=0 phishscore=0 bulkscore=0 spamscore=0 clxscore=1015 lowpriorityscore=0 impostorscore=0 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.0.1-1703280000 definitions=main-1705310174 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org The switch to using the upstream bcm2835_cprman clock driver caused a few problems for users of PCM (I2S) peripherals. Audio applications require accurate, stable clocks, and the cprman driver wasn't conservative enough in its choice of clock sources. These patches restrict the clock sources for the PCM peripheral in two ways: the first causes all possible sources except OSC and PLLD_PER to be ignored, while the second allows clocks to be specified as "low_jitter", causing the effects of fractional divisors to be taken into account when comparing potential clocks for accuracy. In practice, the combined effect of the two patches is to choose OSC as a source if an integer divisor can be used, otherwise PLLD_PER is chosen. Changes in v2: * Extended bcm2835_pcm_per_parents to cover the pllh_aux slot, and gave it a comment in patch 1. * Added a REGISTER_PCM_CLK analagous to REGISTER_PER_CLK in patch 1. * Renamed temporary variable idiv to int_div in patch 2. Phil Elwell (2): clk: bcm2835: Limit PCM clock to OSC and PLLD_PER clk: bcm2835: Minimise clock jitter for PCM clock drivers/clk/bcm/clk-bcm2835.c | 50 ++++++++++++++++++++++++++++++++++++++----- 1 file changed, 45 insertions(+), 5 deletions(-) -- 1.9.1