Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1603970 > unrolled thread
| Started by | Arushi Singhal <arushisinghal19971997@gmail.com> |
|---|---|
| First post | 2017-03-19 14:10 +0100 |
| Last post | 2017-03-19 17:10 +0100 |
| Articles | 4 — 3 participants |
Back to article view | Back to linux.kernel
[PATCH v3] staging: sm750fb: Code readability is improved Arushi Singhal <arushisinghal19971997@gmail.com> - 2017-03-19 14:10 +0100
Re: [Outreachy kernel] [PATCH v3] staging: sm750fb: Code readability is improved Julia Lawall <julia.lawall@lip6.fr> - 2017-03-19 14:20 +0100
Re: [Outreachy kernel] [PATCH v3] staging: sm750fb: Code readability is improved Geert Uytterhoeven <geert@linux-m68k.org> - 2017-03-19 15:10 +0100
Re: [Outreachy kernel] [PATCH v3] staging: sm750fb: Code readability is improved Geert Uytterhoeven <geert@linux-m68k.org> - 2017-03-19 17:10 +0100
| From | Arushi Singhal <arushisinghal19971997@gmail.com> |
|---|---|
| Date | 2017-03-19 14:10 +0100 |
| Subject | [PATCH v3] staging: sm750fb: Code readability is improved |
| Message-ID | <tmIKS-638-11@gated-at.bofh.it> |
New variables are added to make the code more readable.
Signed-off-by: Arushi Singhal <arushisinghal19971997@gmail.com>
---
changes in v3
-try to make the code much more readable.
drivers/staging/sm750fb/ddk750_mode.c | 61 ++++++++++++++++++++---------------
1 file changed, 35 insertions(+), 26 deletions(-)
diff --git a/drivers/staging/sm750fb/ddk750_mode.c b/drivers/staging/sm750fb/ddk750_mode.c
index eea5aef2956f..5f18ce4d10de 100644
--- a/drivers/staging/sm750fb/ddk750_mode.c
+++ b/drivers/staging/sm750fb/ddk750_mode.c
@@ -81,33 +81,42 @@ static int programModeRegisters(mode_parameter_t *pModeParam, struct pll_value *
if (pll->clockType == SECONDARY_PLL) {
/* programe secondary pixel clock */
poke32(CRT_PLL_CTRL, sm750_format_pll_reg(pll));
- poke32(CRT_HORIZONTAL_TOTAL,
- (((pModeParam->horizontal_total - 1) <<
- CRT_HORIZONTAL_TOTAL_TOTAL_SHIFT) &
- CRT_HORIZONTAL_TOTAL_TOTAL_MASK) |
- ((pModeParam->horizontal_display_end - 1) &
- CRT_HORIZONTAL_TOTAL_DISPLAY_END_MASK));
-
- poke32(CRT_HORIZONTAL_SYNC,
- ((pModeParam->horizontal_sync_width <<
- CRT_HORIZONTAL_SYNC_WIDTH_SHIFT) &
- CRT_HORIZONTAL_SYNC_WIDTH_MASK) |
- ((pModeParam->horizontal_sync_start - 1) &
- CRT_HORIZONTAL_SYNC_START_MASK));
- poke32(CRT_VERTICAL_TOTAL,
- (((pModeParam->vertical_total - 1) <<
- CRT_VERTICAL_TOTAL_TOTAL_SHIFT) &
- CRT_VERTICAL_TOTAL_TOTAL_MASK) |
- ((pModeParam->vertical_display_end - 1) &
- CRT_VERTICAL_TOTAL_DISPLAY_END_MASK));
-
- poke32(CRT_VERTICAL_SYNC,
- ((pModeParam->vertical_sync_height <<
- CRT_VERTICAL_SYNC_HEIGHT_SHIFT) &
- CRT_VERTICAL_SYNC_HEIGHT_MASK) |
- ((pModeParam->vertical_sync_start - 1) &
- CRT_VERTICAL_SYNC_START_MASK));
+ unsigned int a = (pModeParam->horizontal_total - 1) <<
+ CRT_HORIZONTAL_TOTAL_TOTAL_SHIFT;
+ unsigned int b = a & CRT_HORIZONTAL_TOTAL_TOTAL_MASK;
+ unsigned int c = (pModeParam->horizontal_display_end - 1) &
+ CRT_HORIZONTAL_TOTAL_DISPLAY_END_MASK;
+ unsigned int temp = b | c;
+
+ poke32(CRT_HORIZONTAL_TOTAL, temp);
+
+ unsigned int a = (pModeParam->horizontal_sync_width <<
+ CRT_HORIZONTAL_SYNC_WIDTH_SHIFT);
+ unsigned int b = a & CRT_HORIZONTAL_SYNC_WIDTH_MASK;
+ unsigned int c = (pModeParam->horizontal_sync_start - 1) &
+ CRT_HORIZONTAL_SYNC_START_MASK;
+ unsigned int temp = b | c;
+
+ poke32(CRT_HORIZONTAL_SYNC, temp);
+
+ unsigned int a = (pModeParam->vertical_total - 1) <<
+ CRT_VERTICAL_TOTAL_TOTAL_SHIFT;
+ unsigned int b = a & CRT_VERTICAL_TOTAL_TOTAL_MASK;
+ unsigned int c = (pModeParam->vertical_display_end - 1) &
+ CRT_VERTICAL_TOTAL_DISPLAY_END_MASK;
+ unsigned int temp = b | c;
+
+ poke32(CRT_VERTICAL_TOTAL, temp);
+
+ unsigned int a = pModeParam->vertical_sync_height <<
+ CRT_VERTICAL_SYNC_HEIGHT_SHIFT;
+ unsigned int b = a & CRT_VERTICAL_SYNC_HEIGHT_MASK;
+ unsigned int c = (pModeParam->vertical_sync_start - 1) &
+ CRT_VERTICAL_SYNC_START_MASK;
+ unsigned int temp = b | c;
+
+ poke32(CRT_VERTICAL_SYNC, temp);
tmp = DISPLAY_CTRL_TIMING | DISPLAY_CTRL_PLANE;
if (pModeParam->vertical_sync_polarity)
--
2.11.0
[toc] | [next] | [standalone]
| From | Julia Lawall <julia.lawall@lip6.fr> |
|---|---|
| Date | 2017-03-19 14:20 +0100 |
| Subject | Re: [Outreachy kernel] [PATCH v3] staging: sm750fb: Code readability is improved |
| Message-ID | <tmIUy-68o-15@gated-at.bofh.it> |
| In reply to | #1603970 |
On Sun, 19 Mar 2017, Arushi Singhal wrote:
> New variables are added to make the code more readable.
>
> Signed-off-by: Arushi Singhal <arushisinghal19971997@gmail.com>
> ---
> changes in v3
> -try to make the code much more readable.
>
> drivers/staging/sm750fb/ddk750_mode.c | 61 ++++++++++++++++++++---------------
> 1 file changed, 35 insertions(+), 26 deletions(-)
>
> diff --git a/drivers/staging/sm750fb/ddk750_mode.c b/drivers/staging/sm750fb/ddk750_mode.c
> index eea5aef2956f..5f18ce4d10de 100644
> --- a/drivers/staging/sm750fb/ddk750_mode.c
> +++ b/drivers/staging/sm750fb/ddk750_mode.c
> @@ -81,33 +81,42 @@ static int programModeRegisters(mode_parameter_t *pModeParam, struct pll_value *
> if (pll->clockType == SECONDARY_PLL) {
> /* programe secondary pixel clock */
> poke32(CRT_PLL_CTRL, sm750_format_pll_reg(pll));
> - poke32(CRT_HORIZONTAL_TOTAL,
> - (((pModeParam->horizontal_total - 1) <<
> - CRT_HORIZONTAL_TOTAL_TOTAL_SHIFT) &
> - CRT_HORIZONTAL_TOTAL_TOTAL_MASK) |
> - ((pModeParam->horizontal_display_end - 1) &
> - CRT_HORIZONTAL_TOTAL_DISPLAY_END_MASK));
> -
> - poke32(CRT_HORIZONTAL_SYNC,
> - ((pModeParam->horizontal_sync_width <<
> - CRT_HORIZONTAL_SYNC_WIDTH_SHIFT) &
> - CRT_HORIZONTAL_SYNC_WIDTH_MASK) |
> - ((pModeParam->horizontal_sync_start - 1) &
> - CRT_HORIZONTAL_SYNC_START_MASK));
>
> - poke32(CRT_VERTICAL_TOTAL,
> - (((pModeParam->vertical_total - 1) <<
> - CRT_VERTICAL_TOTAL_TOTAL_SHIFT) &
> - CRT_VERTICAL_TOTAL_TOTAL_MASK) |
> - ((pModeParam->vertical_display_end - 1) &
> - CRT_VERTICAL_TOTAL_DISPLAY_END_MASK));
> -
> - poke32(CRT_VERTICAL_SYNC,
> - ((pModeParam->vertical_sync_height <<
> - CRT_VERTICAL_SYNC_HEIGHT_SHIFT) &
> - CRT_VERTICAL_SYNC_HEIGHT_MASK) |
> - ((pModeParam->vertical_sync_start - 1) &
> - CRT_VERTICAL_SYNC_START_MASK));
> + unsigned int a = (pModeParam->horizontal_total - 1) <<
> + CRT_HORIZONTAL_TOTAL_TOTAL_SHIFT;
> + unsigned int b = a & CRT_HORIZONTAL_TOTAL_TOTAL_MASK;
> + unsigned int c = (pModeParam->horizontal_display_end - 1) &
> + CRT_HORIZONTAL_TOTAL_DISPLAY_END_MASK;
> + unsigned int temp = b | c;
> +
> + poke32(CRT_HORIZONTAL_TOTAL, temp);
> +
> + unsigned int a = (pModeParam->horizontal_sync_width <<
> + CRT_HORIZONTAL_SYNC_WIDTH_SHIFT);
> + unsigned int b = a & CRT_HORIZONTAL_SYNC_WIDTH_MASK;
> + unsigned int c = (pModeParam->horizontal_sync_start - 1) &
> + CRT_HORIZONTAL_SYNC_START_MASK;
> + unsigned int temp = b | c;
This is back to the original incorrect solution. You can't declare
variables on the fly in Linux code. Variables have to be declared at the
top of a block.
But you can reuse the same variables over and over, if no one cares about
their previous values.
julia
> +
> + poke32(CRT_HORIZONTAL_SYNC, temp);
> +
> + unsigned int a = (pModeParam->vertical_total - 1) <<
> + CRT_VERTICAL_TOTAL_TOTAL_SHIFT;
> + unsigned int b = a & CRT_VERTICAL_TOTAL_TOTAL_MASK;
> + unsigned int c = (pModeParam->vertical_display_end - 1) &
> + CRT_VERTICAL_TOTAL_DISPLAY_END_MASK;
> + unsigned int temp = b | c;
> +
> + poke32(CRT_VERTICAL_TOTAL, temp);
> +
> + unsigned int a = pModeParam->vertical_sync_height <<
> + CRT_VERTICAL_SYNC_HEIGHT_SHIFT;
> + unsigned int b = a & CRT_VERTICAL_SYNC_HEIGHT_MASK;
> + unsigned int c = (pModeParam->vertical_sync_start - 1) &
> + CRT_VERTICAL_SYNC_START_MASK;
> + unsigned int temp = b | c;
> +
> + poke32(CRT_VERTICAL_SYNC, temp);
>
> tmp = DISPLAY_CTRL_TIMING | DISPLAY_CTRL_PLANE;
> if (pModeParam->vertical_sync_polarity)
> --
> 2.11.0
>
> --
> You received this message because you are subscribed to the Google Groups "outreachy-kernel" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to outreachy-kernel+unsubscribe@googlegroups.com.
> To post to this group, send email to outreachy-kernel@googlegroups.com.
> To view this discussion on the web visit https://groups.google.com/d/msgid/outreachy-kernel/20170319130744.GA24605%40arushi-HP-Pavilion-Notebook.
> For more options, visit https://groups.google.com/d/optout.
>
[toc] | [prev] | [next] | [standalone]
| From | Geert Uytterhoeven <geert@linux-m68k.org> |
|---|---|
| Date | 2017-03-19 15:10 +0100 |
| Subject | Re: [Outreachy kernel] [PATCH v3] staging: sm750fb: Code readability is improved |
| Message-ID | <tmJGV-6Oi-1@gated-at.bofh.it> |
| In reply to | #1603973 |
On Sun, Mar 19, 2017 at 2:11 PM, Julia Lawall <julia.lawall@lip6.fr> wrote:
> On Sun, 19 Mar 2017, Arushi Singhal wrote:
>> New variables are added to make the code more readable.
>>
>> Signed-off-by: Arushi Singhal <arushisinghal19971997@gmail.com>
>> ---
>> changes in v3
>> -try to make the code much more readable.
>>
>> drivers/staging/sm750fb/ddk750_mode.c | 61 ++++++++++++++++++++---------------
>> 1 file changed, 35 insertions(+), 26 deletions(-)
>>
>> diff --git a/drivers/staging/sm750fb/ddk750_mode.c b/drivers/staging/sm750fb/ddk750_mode.c
>> index eea5aef2956f..5f18ce4d10de 100644
>> --- a/drivers/staging/sm750fb/ddk750_mode.c
>> +++ b/drivers/staging/sm750fb/ddk750_mode.c
>> @@ -81,33 +81,42 @@ static int programModeRegisters(mode_parameter_t *pModeParam, struct pll_value *
>> if (pll->clockType == SECONDARY_PLL) {
>> /* programe secondary pixel clock */
>> poke32(CRT_PLL_CTRL, sm750_format_pll_reg(pll));
>> - poke32(CRT_HORIZONTAL_TOTAL,
>> - (((pModeParam->horizontal_total - 1) <<
>> - CRT_HORIZONTAL_TOTAL_TOTAL_SHIFT) &
>> - CRT_HORIZONTAL_TOTAL_TOTAL_MASK) |
>> - ((pModeParam->horizontal_display_end - 1) &
>> - CRT_HORIZONTAL_TOTAL_DISPLAY_END_MASK));
>> -
>> - poke32(CRT_HORIZONTAL_SYNC,
>> - ((pModeParam->horizontal_sync_width <<
>> - CRT_HORIZONTAL_SYNC_WIDTH_SHIFT) &
>> - CRT_HORIZONTAL_SYNC_WIDTH_MASK) |
>> - ((pModeParam->horizontal_sync_start - 1) &
>> - CRT_HORIZONTAL_SYNC_START_MASK));
>>
>> - poke32(CRT_VERTICAL_TOTAL,
>> - (((pModeParam->vertical_total - 1) <<
>> - CRT_VERTICAL_TOTAL_TOTAL_SHIFT) &
>> - CRT_VERTICAL_TOTAL_TOTAL_MASK) |
>> - ((pModeParam->vertical_display_end - 1) &
>> - CRT_VERTICAL_TOTAL_DISPLAY_END_MASK));
>> -
>> - poke32(CRT_VERTICAL_SYNC,
>> - ((pModeParam->vertical_sync_height <<
>> - CRT_VERTICAL_SYNC_HEIGHT_SHIFT) &
>> - CRT_VERTICAL_SYNC_HEIGHT_MASK) |
>> - ((pModeParam->vertical_sync_start - 1) &
>> - CRT_VERTICAL_SYNC_START_MASK));
>> + unsigned int a = (pModeParam->horizontal_total - 1) <<
>> + CRT_HORIZONTAL_TOTAL_TOTAL_SHIFT;
>> + unsigned int b = a & CRT_HORIZONTAL_TOTAL_TOTAL_MASK;
>> + unsigned int c = (pModeParam->horizontal_display_end - 1) &
>> + CRT_HORIZONTAL_TOTAL_DISPLAY_END_MASK;
>> + unsigned int temp = b | c;
>> +
>> + poke32(CRT_HORIZONTAL_TOTAL, temp);
>> +
>> + unsigned int a = (pModeParam->horizontal_sync_width <<
>> + CRT_HORIZONTAL_SYNC_WIDTH_SHIFT);
>> + unsigned int b = a & CRT_HORIZONTAL_SYNC_WIDTH_MASK;
>> + unsigned int c = (pModeParam->horizontal_sync_start - 1) &
>> + CRT_HORIZONTAL_SYNC_START_MASK;
>> + unsigned int temp = b | c;
>
> This is back to the original incorrect solution. You can't declare
> variables on the fly in Linux code. Variables have to be declared at the
> top of a block.
Arushi: have you tried to compile this?
Gr{oetje,eeting}s,
Geert
--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org
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
[toc] | [prev] | [next] | [standalone]
| From | Geert Uytterhoeven <geert@linux-m68k.org> |
|---|---|
| Date | 2017-03-19 17:10 +0100 |
| Subject | Re: [Outreachy kernel] [PATCH v3] staging: sm750fb: Code readability is improved |
| Message-ID | <tmLz4-89I-21@gated-at.bofh.it> |
| In reply to | #1603983 |
On Sun, Mar 19, 2017 at 4:52 PM, Arushi Singhal
<arushisinghal19971997@gmail.com> wrote:
> On Sun, Mar 19, 2017 at 7:34 PM, Geert Uytterhoeven <geert@linux-m68k.org>
> wrote:
>>
>> On Sun, Mar 19, 2017 at 2:11 PM, Julia Lawall <julia.lawall@lip6.fr>
>> wrote:
>> > On Sun, 19 Mar 2017, Arushi Singhal wrote:
>> >> New variables are added to make the code more readable.
>> >>
>> >> Signed-off-by: Arushi Singhal <arushisinghal19971997@gmail.com>
>> >> ---
>> >> changes in v3
>> >> -try to make the code much more readable.
>> >>
>> >> drivers/staging/sm750fb/ddk750_mode.c | 61
>> >> ++++++++++++++++++++---------------
>> >> 1 file changed, 35 insertions(+), 26 deletions(-)
>> >>
>> >> diff --git a/drivers/staging/sm750fb/ddk750_mode.c
>> >> b/drivers/staging/sm750fb/ddk750_mode.c
>> >> index eea5aef2956f..5f18ce4d10de 100644
>> >> --- a/drivers/staging/sm750fb/ddk750_mode.c
>> >> +++ b/drivers/staging/sm750fb/ddk750_mode.c
>> >> @@ -81,33 +81,42 @@ static int programModeRegisters(mode_parameter_t
>> >> *pModeParam, struct pll_value *
>> >> if (pll->clockType == SECONDARY_PLL) {
>> >> /* programe secondary pixel clock */
>> >> poke32(CRT_PLL_CTRL, sm750_format_pll_reg(pll));
>> >> - poke32(CRT_HORIZONTAL_TOTAL,
>> >> - (((pModeParam->horizontal_total - 1) <<
>> >> - CRT_HORIZONTAL_TOTAL_TOTAL_SHIFT) &
>> >> - CRT_HORIZONTAL_TOTAL_TOTAL_MASK) |
>> >> - ((pModeParam->horizontal_display_end - 1) &
>> >> - CRT_HORIZONTAL_TOTAL_DISPLAY_END_MASK));
>> >> -
>> >> - poke32(CRT_HORIZONTAL_SYNC,
>> >> - ((pModeParam->horizontal_sync_width <<
>> >> - CRT_HORIZONTAL_SYNC_WIDTH_SHIFT) &
>> >> - CRT_HORIZONTAL_SYNC_WIDTH_MASK) |
>> >> - ((pModeParam->horizontal_sync_start - 1) &
>> >> - CRT_HORIZONTAL_SYNC_START_MASK));
>> >>
>> >> - poke32(CRT_VERTICAL_TOTAL,
>> >> - (((pModeParam->vertical_total - 1) <<
>> >> - CRT_VERTICAL_TOTAL_TOTAL_SHIFT) &
>> >> - CRT_VERTICAL_TOTAL_TOTAL_MASK) |
>> >> - ((pModeParam->vertical_display_end - 1) &
>> >> - CRT_VERTICAL_TOTAL_DISPLAY_END_MASK));
>> >> -
>> >> - poke32(CRT_VERTICAL_SYNC,
>> >> - ((pModeParam->vertical_sync_height <<
>> >> - CRT_VERTICAL_SYNC_HEIGHT_SHIFT) &
>> >> - CRT_VERTICAL_SYNC_HEIGHT_MASK) |
>> >> - ((pModeParam->vertical_sync_start - 1) &
>> >> - CRT_VERTICAL_SYNC_START_MASK));
>> >> + unsigned int a = (pModeParam->horizontal_total - 1) <<
>> >> + CRT_HORIZONTAL_TOTAL_TOTAL_SHIFT;
>> >> + unsigned int b = a & CRT_HORIZONTAL_TOTAL_TOTAL_MASK;
>> >> + unsigned int c = (pModeParam->horizontal_display_end - 1)
>> >> &
>> >> + CRT_HORIZONTAL_TOTAL_DISPLAY_END_MASK;
>> >> + unsigned int temp = b | c;
>> >> +
>> >> + poke32(CRT_HORIZONTAL_TOTAL, temp);
>> >> +
>> >> + unsigned int a = (pModeParam->horizontal_sync_width <<
>> >> + CRT_HORIZONTAL_SYNC_WIDTH_SHIFT);
>> >> + unsigned int b = a & CRT_HORIZONTAL_SYNC_WIDTH_MASK;
>> >> + unsigned int c = (pModeParam->horizontal_sync_start - 1)
>> >> &
>> >> + CRT_HORIZONTAL_SYNC_START_MASK;
>> >> + unsigned int temp = b | c;
>> >
>> > This is back to the original incorrect solution. You can't declare
>> > variables on the fly in Linux code. Variables have to be declared at
>> > the
>> > top of a block.
>>
>> Arushi: have you tried to compile this?
>
> Yes.
> It's not showing any error.
No, not an error.
> Is it not fine when you compiled :( ?
But you did introduce warnings, like:
drivers/staging/sm750fb/ddk750_mode.c: In function 'programModeRegisters':
drivers/staging/sm750fb/ddk750_mode.c:87:3: warning: ISO C90 forbids
mixed declarations and code [-Wdeclaration-after-statement]
Gr{oetje,eeting}s,
Geert
--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org
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
[toc] | [prev] | [standalone]
Back to top | Article view | linux.kernel
csiph-web