[U-Boot] [PATCH 3/5] net: sandbox: Convert sandbox mock eth driver to livetree
Joe Hershberger
joe.hershberger at ni.com
Tue Jun 26 23:25:53 UTC 2018
Hi Simon,
On Tue, Jun 26, 2018 at 6:18 PM, Simon Glass <sjg at chromium.org> wrote:
> Hi Joe,
>
> On 26 June 2018 at 14:19, Joe Hershberger <joe.hershberger at ni.com> wrote:
>> Use the dev_ functions to access DT properties.
>>
>> Also correct the reading of the fake MAC address. The format from the DT
>> is u32s, so to accurately read the MAC from the DT, we need to cast each
>> value to a u8.
>>
>> Signed-off-by: Joe Hershberger <joe.hershberger at ni.com>
>> ---
>>
>> drivers/net/sandbox.c | 15 +++++++++++----
>> 1 file changed, 11 insertions(+), 4 deletions(-)
>>
>> diff --git a/drivers/net/sandbox.c b/drivers/net/sandbox.c
>> index b34712bd06..d5a30c05b8 100644
>> --- a/drivers/net/sandbox.c
>> +++ b/drivers/net/sandbox.c
>> @@ -56,13 +56,20 @@ void sandbox_eth_skip_timeout(void)
>> static int sb_eth_start(struct udevice *dev)
>> {
>> struct eth_sandbox_priv *priv = dev_get_priv(dev);
>> + /* The DT integers are 32-bits */
>> + const u32 mac[ARP_HLEN];
>>
>> debug("eth_sandbox: Start\n");
>>
>> - fdtdec_get_byte_array(gd->fdt_blob, dev_of_offset(dev),
>> - "fake-host-hwaddr", priv->fake_host_hwaddr,
>> - ARP_HLEN);
>> + if (dev_read_u32_array(dev, "fake-host-hwaddr", mac, ARP_HLEN)) {
>> + printf("'fake-host-hwaddr' is missing from the DT\n");
>> + return -EINVAL;
>> + }
>
> This is not equivalent - I think you need a dev_read_u8_array() or similar.
Yes, I know it's not equivalent... I noted that in the commit log.
This is fixing a bug too.
>
>> + for (int i = 0; i < ARP_HLEN; i++)
>> + priv->fake_host_hwaddr[i] = (uint8_t)mac[i];
>> +
>> priv->recv_packet_buffer = net_rx_packets[0];
>> +
>> return 0;
>> }
>>
>> @@ -204,7 +211,7 @@ static int sb_eth_ofdata_to_platdata(struct udevice *dev)
>> {
>> struct eth_pdata *pdata = dev_get_platdata(dev);
>>
>> - pdata->iobase = devfdt_get_addr(dev);
>> + pdata->iobase = dev_read_addr(dev);
>> return 0;
>> }
>>
>> --
>> 2.11.0
>>
>
> Regards,
> Simon
> _______________________________________________
> U-Boot mailing list
> U-Boot at lists.denx.de
> https://lists.denx.de/listinfo/u-boot
More information about the U-Boot
mailing list