[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH v3 15/20] arm: add Faraday FTMAC110 10/100Mbps e
From: |
Kuo-Jung Su |
Subject: |
Re: [Qemu-devel] [PATCH v3 15/20] arm: add Faraday FTMAC110 10/100Mbps ethernet support |
Date: |
Tue, 19 Feb 2013 09:14:28 +0800 |
2013/2/18 Stefan Hajnoczi <address@hidden>:
> On Mon, Feb 18, 2013 at 05:44:38PM +0800, Kuo-Jung Su wrote:
>> 2013/2/18 Stefan Hajnoczi <address@hidden>:
>> > On Wed, Feb 06, 2013 at 05:45:19PM +0800, Kuo-Jung Su wrote:
>> >> From: Kuo-Jung Su <address@hidden>
>> >>
>> >> The FTMAC110 is an Ethernet controller that provides AHB master capability
>> >> and is in full compliance with the IEEE 802.3 10/100 Mbps specifications.
>> >> Its DMA controller handles all data transfers between system memory
>> >> and on-chip memories.
>> >> It supports half-word data transfer for Linux. However it has a weird DMA
>> >> alignment issue:
>> >>
>> >> (1) Tx DMA Buffer Address:
>> >> 1 bytes aligned: Invalid
>> >> 2 bytes aligned: O.K
>> >> 4 bytes aligned: O.K
>> >>
>> >> (2) Rx DMA Buffer Address:
>> >> 1 bytes aligned: Invalid
>> >> 2 bytes aligned: O.K
>> >> 4 bytes aligned: Invalid (It means 0x0, 0x4, 0x8, 0xC are invalid)
>> >>
>> >> Signed-off-by: Kuo-Jung Su <address@hidden>
>> >> ---
>> >> hw/arm/Makefile.objs | 1 +
>> >> hw/arm/faraday_a360.c | 10 +
>> >> hw/arm/ftmac110.c | 681
>> >> +++++++++++++++++++++++++++++++++++++++++++++++++
>> >> hw/arm/ftmac110.h | 131 ++++++++++
>> >> 4 files changed, 823 insertions(+)
>> >> create mode 100644 hw/arm/ftmac110.c
>> >> create mode 100644 hw/arm/ftmac110.h
>> >
>> > Hi Kuo-Jung,
>> > Is there a datasheet and/or driver programming guide for this Ethernet
>> > controller?
>> >
>>
>> The datasheet distribution is prohibited in Faraday, while it's absolutely
>> O.K
>> to deliver software codes along with register description.
>>
>> So, I can't share the datasheets with you, but I can add register description
>> to the source files. Is this what you need?
>
> I'm asking because I'd like to confirm that the device keeps checking
> for available receive descriptors via DMA reads (owner bit) and there is
> no hw register access to kick the Ethernet controller?
>
In a descriptor based ethernet MAC, there is usually a dedicated
register to kick-off DMA
engine, and of course, FTMAC110/FTGMAC100 has such register, too.
They are:
1. ftgmac100:
1-1. REG_TXPD (0x18): Kick-off Tx DMA engine
1-2. REG_RXPD (0x1c): Kick-off Rx DMA engine
1-3. REG_HPTXPD (0x28): Kick-off High Priority Tx DMA engine
2. ftmac110:
2-1. REG_TXPD (0x18): Kick-off Tx DMA engine
2-2. REG_RXPD (0x1c): Kick-off Rx DMA engine
Writing an arbitrary value to these registers would trigger the
corresponding DMA engine.
> You work at Faraday, so maybe you have the definitive answer to this :).
>
> Stefan
--
Best wishes,
Kuo-Jung Su
- [Qemu-devel] [PATCH v3 08/20] arm: add Faraday FTPWMTMR010 timer support, (continued)
- [Qemu-devel] [PATCH v3 08/20] arm: add Faraday FTPWMTMR010 timer support, Kuo-Jung Su, 2013/02/06
- [Qemu-devel] [PATCH v3 15/20] arm: add Faraday FTMAC110 10/100Mbps ethernet support, Kuo-Jung Su, 2013/02/06
- Re: [Qemu-devel] [PATCH v3 15/20] arm: add Faraday FTMAC110 10/100Mbps ethernet support, Stefan Hajnoczi, 2013/02/18
- Re: [Qemu-devel] [PATCH v3 15/20] arm: add Faraday FTMAC110 10/100Mbps ethernet support, Kuo-Jung Su, 2013/02/18
- Re: [Qemu-devel] [PATCH v3 15/20] arm: add Faraday FTMAC110 10/100Mbps ethernet support, Stefan Hajnoczi, 2013/02/18
- Re: [Qemu-devel] [PATCH v3 15/20] arm: add Faraday FTMAC110 10/100Mbps ethernet support,
Kuo-Jung Su <=
- Re: [Qemu-devel] [PATCH v3 15/20] arm: add Faraday FTMAC110 10/100Mbps ethernet support, Kuo-Jung Su, 2013/02/18
- Re: [Qemu-devel] [PATCH v3 15/20] arm: add Faraday FTMAC110 10/100Mbps ethernet support, Stefan Hajnoczi, 2013/02/19
- Re: [Qemu-devel] [PATCH v3 15/20] arm: add Faraday FTMAC110 10/100Mbps ethernet support, Kuo-Jung Su, 2013/02/19
[Qemu-devel] [PATCH v3 10/20] arm: add Faraday FTDMAC020 AHB DMA support, Kuo-Jung Su, 2013/02/06
[Qemu-devel] [PATCH v3 19/20] arm: add Faraday FTSDC010 MMC/SD controller support, Kuo-Jung Su, 2013/02/06
[Qemu-devel] [PATCH v3 20/20] arm: add Faraday FTSPI020 SPI flash controller support, Kuo-Jung Su, 2013/02/06