diff mbox series

[3/5] sh_eth: call sh_eth_tsu_get_offset() from TSU register accessors

Message ID 6a15eddc-a30d-a4e8-aa0d-05ee2091e32a@cogentembedded.com
State Accepted, archived
Delegated to: David Miller
Headers show
Series sh_eth: clean up the TSU register accessors | expand

Commit Message

Sergei Shtylyov July 23, 2018, 6:12 p.m. UTC
With sh_eth_tsu_get_offset() now actually returning TSU register's offset,
we  can at last use it in sh_eth_tsu_{read|write}(). Somehow this saves 248
bytes of object code with AArch64 gcc 4.8.5... :-)

Signed-off-by: Sergei Shtylyov <sergei.shtylyov@cogentembedded.com>

---
 drivers/net/ethernet/renesas/sh_eth.c |    4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

Comments

Geert Uytterhoeven July 24, 2018, 6:49 a.m. UTC | #1
Hi Sergei,

On Mon, Jul 23, 2018 at 8:13 PM Sergei Shtylyov
<sergei.shtylyov@cogentembedded.com> wrote:
> With sh_eth_tsu_get_offset() now actually returning TSU register's offset,
> we  can at last use it in sh_eth_tsu_{read|write}(). Somehow this saves 248
> bytes of object code with AArch64 gcc 4.8.5... :-)

Adding two more users may be the trigger for gcc not to inline the
function anymore?

> Signed-off-by: Sergei Shtylyov <sergei.shtylyov@cogentembedded.com>

Reviewed-by: Geert Uytterhoeven <geert+renesas@glider.be>

Gr{oetje,eeting}s,

                        Geert
diff mbox series

Patch

Index: net-next/drivers/net/ethernet/renesas/sh_eth.c
===================================================================
--- net-next.orig/drivers/net/ethernet/renesas/sh_eth.c
+++ net-next/drivers/net/ethernet/renesas/sh_eth.c
@@ -447,7 +447,7 @@  static u16 sh_eth_tsu_get_offset(struct
 static void sh_eth_tsu_write(struct sh_eth_private *mdp, u32 data,
 			     int enum_index)
 {
-	u16 offset = mdp->reg_offset[enum_index];
+	u16 offset = sh_eth_tsu_get_offset(mdp, enum_index);
 
 	if (WARN_ON(offset == SH_ETH_OFFSET_INVALID))
 		return;
@@ -457,7 +457,7 @@  static void sh_eth_tsu_write(struct sh_e
 
 static u32 sh_eth_tsu_read(struct sh_eth_private *mdp, int enum_index)
 {
-	u16 offset = mdp->reg_offset[enum_index];
+	u16 offset = sh_eth_tsu_get_offset(mdp, enum_index);
 
 	if (WARN_ON(offset == SH_ETH_OFFSET_INVALID))
 		return ~0U;