[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <fce8d698-2ae2-460c-a288-3d70d61dbf9e@lunn.ch>
Date: Thu, 9 Jan 2025 17:24:59 +0100
From: Andrew Lunn <andrew@...n.ch>
To: Basharath Hussain Khaja <basharath@...thit.com>
Cc: danishanwar@...com, rogerq@...nel.org, andrew+netdev@...n.ch,
davem@...emloft.net, edumazet@...gle.com, kuba@...nel.org,
pabeni@...hat.com, robh@...nel.org, krzk+dt@...nel.org,
conor+dt@...nel.org, nm@...com, ssantosh@...nel.org,
tony@...mide.com, richardcochran@...il.com, parvathi@...thit.com,
schnelle@...ux.ibm.com, rdunlap@...radead.org,
diogo.ivo@...mens.com, m-karicheri2@...com, horms@...nel.org,
jacob.e.keller@...el.com, m-malladi@...com,
javier.carrasco.cruz@...il.com, afd@...com, s-anna@...com,
linux-arm-kernel@...ts.infradead.org, netdev@...r.kernel.org,
devicetree@...r.kernel.org, linux-kernel@...r.kernel.org,
linux-omap@...r.kernel.org, pratheesh@...com, prajith@...com,
vigneshr@...com, praneeth@...com, srk@...com, rogerq@...com,
krishna@...thit.com, pmohan@...thit.com, mohan@...thit.com
Subject: Re: [RFC PATCH 04/10] net: ti: prueth: Adds link detection, RX and
TX support.
> +/* update phy/port status information for firmware */
> +static void icssm_emac_update_phystatus(struct prueth_emac *emac)
> +{
> + struct prueth *prueth = emac->prueth;
> + u32 phy_speed, port_status = 0;
> + enum prueth_mem region;
> + u32 delay;
> +
> + region = emac->dram;
> + phy_speed = emac->speed;
> + icssm_prueth_write_reg(prueth, region, PHY_SPEED_OFFSET, phy_speed);
> +
> + if (phy_speed == SPEED_10)
> + delay = TX_CLK_DELAY_10M;
How can speed to 10? You removed those link modes?
> +/**
> + * icssm_emac_ndo_start_xmit - EMAC Transmit function
> + * @skb: SKB pointer
> + * @ndev: EMAC network adapter
> + *
> + * Called by the system to transmit a packet - we queue the packet in
> + * EMAC hardware transmit queue
> + *
> + * Return: success(NETDEV_TX_OK) or error code (typically out of desc's)
> + */
> +static int icssm_emac_ndo_start_xmit(struct sk_buff *skb,
> + struct net_device *ndev)
> +{
> + struct prueth_emac *emac = netdev_priv(ndev);
> + int ret = 0;
> + u16 qid;
> +
> + if (unlikely(!emac->link)) {
> + if (netif_msg_tx_err(emac) && net_ratelimit())
> + netdev_err(ndev, "No link to transmit");
> + goto fail_tx;
> + }
Do many other MAC drivers have this test?
> --- a/drivers/net/ethernet/ti/icssm/icssm_prueth.h
> +++ b/drivers/net/ethernet/ti/icssm/icssm_prueth.h
> @@ -17,6 +17,11 @@
>
> /* PRUSS local memory map */
> #define ICSS_LOCAL_SHARED_RAM 0x00010000
> +#define EMAC_MAX_PKTLEN (ETH_HLEN + VLAN_HLEN + ETH_DATA_LEN)
> +/* Below macro is for 1528 Byte Frame support, to Allow even with
> + * Redundancy tag
> + */
> +#define EMAC_MAX_FRM_SUPPORT (ETH_HLEN + VLAN_HLEN + ETH_DATA_LEN + 6)
This looks familiar....
Andrew
Powered by blists - more mailing lists