Re: [PATCH v3 2/3] net: ftmac100: simplify priv->iobase casting

2023-02-10 Thread Tom Rini
On Fri, Feb 03, 2023 at 10:09:03PM +0300, Sergei Antonov wrote:

> Replace 'phys_addr_t iobase' with 'struct ftmac100 *ftmac100' in
> struct ftmac100_data. It allows to remove casting in a number of places.
> 
> Since priv->iobase is phys_addr_t, use phys_to_virt() to make
> a pointer from it.
> 
> Signed-off-by: Sergei Antonov 
> Reviewed-by: Rick Chen 

Applied to u-boot/master, thanks!

-- 
Tom


signature.asc
Description: PGP signature


Re: [PATCH v3 2/3] net: ftmac100: simplify priv->iobase casting

2023-02-08 Thread Rick Chen
> From: U-Boot  On Behalf Of Sergei Antonov
> Sent: Saturday, February 04, 2023 3:09 AM
> To: u-boot@lists.denx.de; rfried@gmail.com; joe.hershber...@ni.com
> Cc: Sergei Antonov 
> Subject: [PATCH v3 2/3] net: ftmac100: simplify priv->iobase casting
>
> Replace 'phys_addr_t iobase' with 'struct ftmac100 *ftmac100' in struct 
> ftmac100_data. It allows to remove casting in a number of places.
>
> Since priv->iobase is phys_addr_t, use phys_to_virt() to make a pointer from 
> it.
>
> Signed-off-by: Sergei Antonov 

Reviewed-by: Rick Chen 


[PATCH v3 2/3] net: ftmac100: simplify priv->iobase casting

2023-02-03 Thread Sergei Antonov
Replace 'phys_addr_t iobase' with 'struct ftmac100 *ftmac100' in
struct ftmac100_data. It allows to remove casting in a number of places.

Since priv->iobase is phys_addr_t, use phys_to_virt() to make
a pointer from it.

Signed-off-by: Sergei Antonov 
---

v2 -> v3:
Fix the following warning by using phys_to_virt() to get a pointer from 
phys_addr_t.
(ae350_rv32) drivers/net/ftmac100.c:317:26: error: cast to pointer from integer 
of different size [-Werror=int-to-pointer-cast]
(ae350_rv32)   317 | priv->ftmac100 = (struct ftmac100 *)pdata->iobase;

v1 -> v2:
no change

 drivers/net/ftmac100.c | 14 +++---
 1 file changed, 7 insertions(+), 7 deletions(-)

diff --git a/drivers/net/ftmac100.c b/drivers/net/ftmac100.c
index 7c89d7f67b8d..e7b9d88ea9cd 100644
--- a/drivers/net/ftmac100.c
+++ b/drivers/net/ftmac100.c
@@ -28,7 +28,7 @@ struct ftmac100_data {
struct ftmac100_rxdes rxdes[PKTBUFSRX];
int rx_index;
const char *name;
-   phys_addr_t iobase;
+   struct ftmac100 *ftmac100;
 };
 
 /*
@@ -36,7 +36,7 @@ struct ftmac100_data {
  */
 static void ftmac100_reset(struct ftmac100_data *priv)
 {
-   struct ftmac100 *ftmac100 = (struct ftmac100 *)(uintptr_t)priv->iobase;
+   struct ftmac100 *ftmac100 = priv->ftmac100;
 
debug ("%s()\n", __func__);
 
@@ -57,7 +57,7 @@ static void ftmac100_reset(struct ftmac100_data *priv)
 static void ftmac100_set_mac(struct ftmac100_data *priv ,
const unsigned char *mac)
 {
-   struct ftmac100 *ftmac100 = (struct ftmac100 *)(uintptr_t)priv->iobase;
+   struct ftmac100 *ftmac100 = priv->ftmac100;
unsigned int maddr = mac[0] << 8 | mac[1];
unsigned int laddr = mac[2] << 24 | mac[3] << 16 | mac[4] << 8 | mac[5];
 
@@ -72,7 +72,7 @@ static void ftmac100_set_mac(struct ftmac100_data *priv ,
  */
 static void _ftmac100_halt(struct ftmac100_data *priv)
 {
-   struct ftmac100 *ftmac100 = (struct ftmac100 *)(uintptr_t)priv->iobase;
+   struct ftmac100 *ftmac100 = priv->ftmac100;
debug ("%s()\n", __func__);
writel (0, >maccr);
 }
@@ -82,7 +82,7 @@ static void _ftmac100_halt(struct ftmac100_data *priv)
  */
 static int _ftmac100_init(struct ftmac100_data *priv, unsigned char 
enetaddr[6])
 {
-   struct ftmac100 *ftmac100 = (struct ftmac100 *)(uintptr_t)priv->iobase;
+   struct ftmac100 *ftmac100 = priv->ftmac100;
struct ftmac100_txdes *txdes = priv->txdes;
struct ftmac100_rxdes *rxdes = priv->rxdes;
unsigned int maccr;
@@ -187,7 +187,7 @@ static int __ftmac100_recv(struct ftmac100_data *priv)
  */
 static int _ftmac100_send(struct ftmac100_data *priv, void *packet, int length)
 {
-   struct ftmac100 *ftmac100 = (struct ftmac100 *)(uintptr_t)priv->iobase;
+   struct ftmac100 *ftmac100 = priv->ftmac100;
struct ftmac100_txdes *curr_des = priv->txdes;
ulong start;
 
@@ -314,7 +314,7 @@ static int ftmac100_of_to_plat(struct udevice *dev)
struct eth_pdata *pdata = dev_get_plat(dev);
const char *mac;
pdata->iobase = dev_read_addr(dev);
-   priv->iobase = pdata->iobase;
+   priv->ftmac100 = phys_to_virt(pdata->iobase);
mac = dtbmacaddr(0);
if (mac)
memcpy(pdata->enetaddr , mac , 6);
-- 
2.34.1