Commit 423caa52 authored by Sergei Shtylyov's avatar Sergei Shtylyov Committed by Geert Uytterhoeven

pinctrl: sh-pfc: r8a779[01]: Move 'union vin_data' to shared header file

R8A7790/1 PFC  drivers use almost identical  'union vin_data' and completely
identical VIN_DATA_PIN_GROUP() macro; we thus can  move them into the shared
header file...
Suggested-by: default avatarGeert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: default avatarSergei Shtylyov <sergei.shtylyov@cogentembedded.com>
Acked-by: default avatarLaurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: default avatarGeert Uytterhoeven <geert+renesas@glider.be>
parent 819fd4bf
...@@ -3624,25 +3624,6 @@ static const unsigned int usb2_pins[] = { ...@@ -3624,25 +3624,6 @@ static const unsigned int usb2_pins[] = {
static const unsigned int usb2_mux[] = { static const unsigned int usb2_mux[] = {
USB2_PWEN_MARK, USB2_OVC_MARK, USB2_PWEN_MARK, USB2_OVC_MARK,
}; };
union vin_data {
unsigned int data24[24];
unsigned int data20[20];
unsigned int data16[16];
unsigned int data12[12];
unsigned int data10[10];
unsigned int data8[8];
unsigned int data4[4];
};
#define VIN_DATA_PIN_GROUP(n, s) \
{ \
.name = #n#s, \
.pins = n##_pins.data##s, \
.mux = n##_mux.data##s, \
.nr_pins = ARRAY_SIZE(n##_pins.data##s), \
}
/* - VIN0 ------------------------------------------------------------------- */ /* - VIN0 ------------------------------------------------------------------- */
static const union vin_data vin0_data_pins = { static const union vin_data vin0_data_pins = {
.data24 = { .data24 = {
......
...@@ -3986,24 +3986,6 @@ static const unsigned int usb1_mux[] = { ...@@ -3986,24 +3986,6 @@ static const unsigned int usb1_mux[] = {
USB1_PWEN_MARK, USB1_PWEN_MARK,
USB1_OVC_MARK, USB1_OVC_MARK,
}; };
union vin_data {
unsigned int data24[24];
unsigned int data20[20];
unsigned int data16[16];
unsigned int data12[12];
unsigned int data10[10];
unsigned int data8[8];
};
#define VIN_DATA_PIN_GROUP(n, s) \
{ \
.name = #n#s, \
.pins = n##_pins.data##s, \
.mux = n##_mux.data##s, \
.nr_pins = ARRAY_SIZE(n##_pins.data##s), \
}
/* - VIN0 ------------------------------------------------------------------- */ /* - VIN0 ------------------------------------------------------------------- */
static const union vin_data vin0_data_pins = { static const union vin_data vin0_data_pins = {
.data24 = { .data24 = {
......
...@@ -52,6 +52,29 @@ struct sh_pfc_pin_group { ...@@ -52,6 +52,29 @@ struct sh_pfc_pin_group {
unsigned int nr_pins; unsigned int nr_pins;
}; };
/*
* Using union vin_data saves memory occupied by the VIN data pins.
* VIN_DATA_PIN_GROUP() is a macro used to describe the VIN pin groups
* in this case.
*/
#define VIN_DATA_PIN_GROUP(n, s) \
{ \
.name = #n#s, \
.pins = n##_pins.data##s, \
.mux = n##_mux.data##s, \
.nr_pins = ARRAY_SIZE(n##_pins.data##s), \
}
union vin_data {
unsigned int data24[24];
unsigned int data20[20];
unsigned int data16[16];
unsigned int data12[12];
unsigned int data10[10];
unsigned int data8[8];
unsigned int data4[4];
};
#define SH_PFC_FUNCTION(n) \ #define SH_PFC_FUNCTION(n) \
{ \ { \
.name = #n, \ .name = #n, \
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment