Hi Jacopo, On Mon, May 28, 2018 at 6:37 PM, Jacopo Mondi <jacopo+renesas@xxxxxxxxxx> wrote: > Use the new renesas-ceu camera driver in kfr2r09 board file instead of > the soc_camera based sh_mobile_ceu_camera driver. > > Get rid of soc_camera specific components, and move clk and gpio handling > away from board file, registering the clock source and the enable gpios > for driver consumption. > > Memory for the CEU video buffers is now reserved with membocks APIs, > and need to be declared as dma_coherent during machine initialization to > remove that architecture specific part from CEU driver. > > While at there update license to SPDX header and sort headers alphabetically. > > No need to udapte the clock source names, as > commit c2f9b05fd5c1 ("media: arch: sh: ecovec: Use new renesas-ceu camera driver") > already updated it to the new ceu driver name for all SH7724 boards (possibly > breaking kfr2r09 before this commit). > > Compile tested only. > > Signed-off-by: Jacopo Mondi <jacopo+renesas@xxxxxxxxxx> Thanks for your patch! > --- a/arch/sh/boards/mach-kfr2r09/setup.c > +++ b/arch/sh/boards/mach-kfr2r09/setup.c > @@ -1,41 +1,53 @@ > @@ -635,6 +580,36 @@ static int __init kfr2r09_devices_setup(void) > > i2c_register_board_info(0, &kfr2r09_backlight_board_info, 1); > > + /* Set camera clock frequency and register and alias for rj54n1. */ > + camera_clk = clk_get(NULL, "video_clk"); > + if (!IS_ERR(camera_clk)) { > + clk_set_rate(camera_clk, > + clk_round_rate(camera_clk, CEU_MCLK_FREQ)); > + clk_put(camera_clk); > + } > + clk_add_alias(NULL, "1-0050", "video_clk", NULL); > + > + /* set DRVCRB > + * > + * use 1.8 V for VccQ_VIO > + * use 2.85V for VccQ_SR > + */ > + __raw_writew((__raw_readw(DRVCRB) & ~0x0003) | 0x0001, DRVCRB); > + > + gpiod_add_lookup_table(&rj54n1_gpios); > + > + i2c_register_board_info(1, &kfr2r09_i2c_camera, 1); > + > + /* Initialize CEU platform device separately to map memory first */ > + device_initialize(&kfr2r09_ceu_device.dev); > + arch_setup_pdev_archdata(&kfr2r09_ceu_device); arch_setup_pdev_archdata() is a no-op on SH, so I think this can be dropped (also in patches 4/5 and 5/5). Gr{oetje,eeting}s, Geert -- Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@xxxxxxxxxxxxxx In personal conversations with technical people, I call myself a hacker. But when I'm talking to journalists I just say "programmer" or something like that. -- Linus Torvalds