[PATCH][RFC] 8250_dw: unregister dw8250_set_termios for rk3188 chip
Shuyu Wei
wsy at dogben.com
Thu Nov 23 06:56:22 PST 2017
On Tue, Nov 21, 2017 at 05:33:47PM +0000, Ed Blake wrote:
> On 21/11/17 17:17, Shuyu Wei wrote:
> >
> >> What baud rate is being set, and what rate does clk_round_rate() return
> >> in dw8250_set_termios()?
> > I'm using baud 115200, clk_round_rate() returns 1843200.
>
> So dw8250_set_termios() requests a rate of 1843200 (baud * 16) from
> clk_round_rate(), which returns the exact frequency requested. If it
> really is capable of being set to that frequency, I can't see why this
> wouldn't work. Or clk_round_rate() is incorrectly reporting that it's
> capable of that rate, in which case the clock driver needs fixing.
>
> Do you have any way of verifying the actual clock rate going into the UART?
Sorry, I know little about the clock system, and no equipment to do that,
maybe Heiko knows.
The /sys/kernel/debug/clk/clk_summary is attached below, might be helpful.
clock enable_cnt prepare_cnt rate accuracy phase
----------------------------------------------------------------------------------------
xin32k 0 0 32768 0 0
xin24m 12 12 24000000 0 0
timer6 1 1 24000000 0 0
timer5 0 0 24000000 0 0
timer4 0 0 24000000 0 0
timer3 1 1 24000000 0 0
timer2 0 0 24000000 0 0
pll_gpll 1 1 891000000 0 0
gpll 2 2 891000000 0 0
i2s_src 0 0 891000000 0 0
i2s0_pre 0 0 891000000 0 0
i2s0_frac 0 0 44550000 0 0
spdif_pre 0 0 891000000 0 0
aclk_cpu_pre 3 3 297000000 0 0
hclk_cpu_pre 2 2 148500000 0 0
hclk_ahb2apb 2 2 74250000 0 0
pclk_uart1 1 1 74250000 0 0
pclk_uart0 1 1 74250000 0 0
hclk_cpu 2 2 148500000 0 0
hclk_imem1 0 0 148500000 0 0
hclk_imem0 0 0 148500000 0 0
hclk_rga 0 0 148500000 0 0
hclk_ipp 0 0 148500000 0 0
hclk_cif0 0 0 148500000 0 0
hclk_lcdc1 0 0 148500000 0 0
hclk_lcdc0 0 0 148500000 0 0
hclk_vio_bus 0 0 148500000 0 0
hclk_cpubus 1 1 148500000 0 0
hclk_spdif 1 2 148500000 0 0
hclk_i2s0 0 0 148500000 0 0
hclk_rom 0 0 148500000 0 0
pclk_cpu_pre 1 1 37125000 0 0
atclk_cpu 0 0 37125000 0 0
trace 0 0 37125000 0 0
atclk 0 0 37125000 0 0
pclk_cpu 4 8 37125000 0 0
pclk_timer3 1 1 37125000 0 0
pclk_pmu 0 0 37125000 0 0
pclk_grf 0 0 37125000 0 0
pclk_dbg 0 0 37125000 0 0
pclk_ddrpubl 0 0 37125000 0 0
pclk_ddrupctl 0 0 37125000 0 0
pclk_tzpc 0 0 37125000 0 0
pclk_efuse 0 0 37125000 0 0
pclk_gpio2 0 1 37125000 0 0
pclk_gpio1 0 1 37125000 0 0
pclk_gpio0 2 1 37125000 0 0
pclk_i2c1 0 2 37125000 0 0
pclk_i2c0 0 0 37125000 0 0
pclk_timer0 1 1 37125000 0 0
pclk_pwm01 0 2 37125000 0 0
aclk_cpu 2 2 297000000 0 0
aclk_strc_sys 0 0 297000000 0 0
aclk_intmem 0 0 297000000 0 0
aclk_dma1 1 1 297000000 0 0
gpll_armclk 1 1 891000000 0 0
gpll_ddr 0 0 891000000 0 0
hsadc_src 0 0 89100000 0 0
sclk_hsadc_out 0 0 89100000 0 0
sclk_hsadc 0 0 89100000 0 0
hsadc_frac 0 0 4455000 0 0
uart_src 0 0 891000000 0 0
uart3_pre 0 0 891000000 0 0
uart3_frac 0 0 44550000 0 0
uart2_pre 0 0 891000000 0 0
uart2_frac 0 0 44550000 0 0
uart1_pre 0 0 891000000 0 0
uart1_frac 0 0 44550000 0 0
uart0_pre 0 0 891000000 0 0
uart0_frac 0 0 44550000 0 0
..............
more output is omitted.
More information about the Linux-rockchip
mailing list