Re: [PATCH V4 1/8] sxgbe: Add device-tree binding support document

2014-03-21 Thread Mark Rutland
On Wed, Mar 19, 2014 at 10:32:48PM +, Byungho An wrote:
 Mark Rutland mark.rutl...@arm.com :
  On Tue, Mar 18, 2014 at 04:27:46PM +, Byungho An wrote:
   Mark Rutland mark.rutl...@arm.com :
Hi,
   
As a general note it's helpful for devicetree to be Cc'd on the
entire
   series
(though the binding document should be a separate patch) as it
provides
   useful
context for reviewing the binding.
   OK.
  
   
On Tue, Mar 18, 2014 at 06:47:13AM +, Byungho An wrote:
 From: Siva Reddy siva.kal...@samsung.com

 This patch adds binding document for SXGBE ethernet driver via
   device-tree.

 Signed-off-by: Siva Reddy Kallam siva.kal...@samsung.com
 Signed-off-by: Byungho An bh74...@samsung.com
 ---
  .../devicetree/bindings/net/samsung-sxgbe.txt  |   53
 
  1 file changed, 53 insertions(+)
  create mode 100644
 Documentation/devicetree/bindings/net/samsung-sxgbe.txt

 diff --git
 a/Documentation/devicetree/bindings/net/samsung-sxgbe.txt
 b/Documentation/devicetree/bindings/net/samsung-sxgbe.txt
 new file mode 100644
 index 000..ca27947
 --- /dev/null
 +++ b/Documentation/devicetree/bindings/net/samsung-sxgbe.txt
 @@ -0,0 +1,53 @@
 +* Samsung 10G Ethernet driver (SXGBE)
 +
 +Required properties:
 +- compatible: Should be samsung,sxgbe-v2.0a
 +- reg: Address and length of the register set for the device
 +- interrupt-parent: Should be the phandle for the interrupt
 +controller
 +  that services interrupts for this device
 +- interrupts: Should contain the SXGBE interrupts
 +  These interrupts are ordered by fixed and follows variable
 +  trasmit DMA interrupts, receive DMA interrupts and lpi interrupt.
 +  index 0 - this is fixed common interrupt of SXGBE and it is
 +always
 +  available.
 +  index 1 to 25 - 8 variable trasmit interrupts, variable 16
 +receive
 interrupts
 +  and 1 optional lpi interrupt.
 +- phy-mode: String, operation mode of the PHY interface.
 +  Supported values are: xaui, gmii.
 +- samsung,pbl: Integer, Programmable Burst Length.
 +  Supported values are 1, 2, 4, 8, 16, or 32.
   
There's no need to abbreviate to pbl.
   
Is this a property of the hardware, or configuration that the kernel
will
   program
in? If the latter, why can the kernel not choose?
   Yes, this is hardware property
  
  Ok.
  
  
   
 +- samsung,fixed-burst: Boolean, Program the DMA to use the fixed
 +burst mode
 +- samsung,burst-map: Integer, Program the possible bursts
 +supported by sxgbe
 +  This is an interger and represents allowable DMA bursts when
 +fixed
   burst.
 +  Allowable range is 0x00-0x3F. This field is valid only when
 +fixed burst is
 +  enabled, otherwise ignored.
   
If that's the case, why not have just this property and have it
imply the
   use of
fixed burst mode?
   OK. It will be implemented in next patch set.
  
   
When is it necessary to use fixed burst mode?
   This is the configurable mode of DMA an used internally by hardware to
   fetch data from platform bus
  
  Sure, but that doesn't describe when it is necessary. Is this the way the
 DMA
  was configured at integration time, or the way the kernel should configure
 it?
 It is needed when fixed length of burst is needed. 
 if it is not configured, the length of burst will be variable(not fixed).
 Anyway, I'll add description more for it.

And when is it necessary to have a fixed length of burst?

Is this a property of the system, or the conenction of the system to
another?

 
  
  If the latter, is it absolutely necessary for correctness to use fixed-burst
 mode?
  Or is it just always sensible to use it if available? 
 It is not absolutely necessary, as I mentioned above.

The description above does not make this clear.

 
  
  What does the driver do if fixed burst mode is not available? Would this
 work in
  the presence of fixed-burt mode?
 Fixed burst mode is always available so driver doesn't need to care about it.
 
  
  I'm not arguing to remove these properties. I'd just like to understand if
 all
  you're describing is the presence of a feature or that the use of the
 feature is
  absolutely necessary for correctness.
 OK
 
  
  I'm perfectly happy for Linux to always decide to use these features if
 available.
  
  
   
 +- samsung,adv-addr-mode: Boolean, Program the DMA to use Enhanced
 +address
 mode.
   
When would this be selected, and why can the kernel not choose?
   Kernel doesn't have the provision to find out a way to select this.
   So, need to pass from DT
  
  Likewise, it is always absolutely necessary, or just always sensible to use
  enhanced address mode if present?
 Not always necessary. When extended address mode is needed, it can be set in
 the DT.

When is this needed?

Cheers,
Mark.
--

RE: [PATCH V4 1/8] sxgbe: Add device-tree binding support document

2014-03-21 Thread Byungho An

Mark Rutland mark.rutl...@arm.com wrote :
 On Wed, Mar 19, 2014 at 10:32:48PM +, Byungho An wrote:
  Mark Rutland mark.rutl...@arm.com :
   On Tue, Mar 18, 2014 at 04:27:46PM +, Byungho An wrote:
Mark Rutland mark.rutl...@arm.com :
 Hi,

 As a general note it's helpful for devicetree to be Cc'd on the
 entire
series
 (though the binding document should be a separate patch) as it
 provides
useful
 context for reviewing the binding.
OK.
   

 On Tue, Mar 18, 2014 at 06:47:13AM +, Byungho An wrote:
  From: Siva Reddy siva.kal...@samsung.com
 
  This patch adds binding document for SXGBE ethernet driver via
device-tree.
 
  Signed-off-by: Siva Reddy Kallam siva.kal...@samsung.com
  Signed-off-by: Byungho An bh74...@samsung.com
  ---
   .../devicetree/bindings/net/samsung-sxgbe.txt  |   53
  
   1 file changed, 53 insertions(+)  create mode 100644
  Documentation/devicetree/bindings/net/samsung-sxgbe.txt
 
  diff --git
  a/Documentation/devicetree/bindings/net/samsung-sxgbe.txt
  b/Documentation/devicetree/bindings/net/samsung-sxgbe.txt
  new file mode 100644
  index 000..ca27947
  --- /dev/null
  +++ b/Documentation/devicetree/bindings/net/samsung-sxgbe.txt
  @@ -0,0 +1,53 @@
  +* Samsung 10G Ethernet driver (SXGBE)
  +
  +Required properties:
  +- compatible: Should be samsung,sxgbe-v2.0a
  +- reg: Address and length of the register set for the device
  +- interrupt-parent: Should be the phandle for the interrupt
  +controller
  +  that services interrupts for this device
  +- interrupts: Should contain the SXGBE interrupts
  +  These interrupts are ordered by fixed and follows variable
  +  trasmit DMA interrupts, receive DMA interrupts and lpi
interrupt.
  +  index 0 - this is fixed common interrupt of SXGBE and it is
  +always
  +  available.
  +  index 1 to 25 - 8 variable trasmit interrupts, variable 16
  +receive
  interrupts
  +  and 1 optional lpi interrupt.
  +- phy-mode: String, operation mode of the PHY interface.
  +  Supported values are: xaui, gmii.
  +- samsung,pbl: Integer, Programmable Burst Length.
  +  Supported values are 1, 2, 4, 8, 16, or 32.

 There's no need to abbreviate to pbl.

 Is this a property of the hardware, or configuration that the
 kernel will
program
 in? If the latter, why can the kernel not choose?
Yes, this is hardware property
  
   Ok.
  
   

  +- samsung,fixed-burst: Boolean, Program the DMA to use the
  +fixed burst mode
  +- samsung,burst-map: Integer, Program the possible bursts
  +supported by sxgbe
  +  This is an interger and represents allowable DMA bursts
  +when fixed
burst.
  +  Allowable range is 0x00-0x3F. This field is valid only when
  +fixed burst is
  +  enabled, otherwise ignored.

 If that's the case, why not have just this property and have it
 imply the
use of
 fixed burst mode?
OK. It will be implemented in next patch set.
   

 When is it necessary to use fixed burst mode?
This is the configurable mode of DMA an used internally by
hardware to fetch data from platform bus
  
   Sure, but that doesn't describe when it is necessary. Is this the
   way the
  DMA
   was configured at integration time, or the way the kernel should
   configure
  it?
  It is needed when fixed length of burst is needed.
  if it is not configured, the length of burst will be variable(not fixed).
  Anyway, I'll add description more for it.
 
 And when is it necessary to have a fixed length of burst?
It's up to situation. If most of data size have similar in size,  fixed burst
is better.

 
 Is this a property of the system, or the conenction of the system to
another?
This is a choice given by SXGBE to configure it's burst mode. It can work in
Fixed and Undefined burst mode. 
SXGBE can't select the burst mode on it's own. so, to configure the burst , we
need configurable parameter from DT. 
if DT doesn't provide fixed burst, it means SXGBE driver will configure as
Undefined burst

Do you think it should be moved to optional properties?

 
 
  
   If the latter, is it absolutely necessary for correctness to use
   fixed-burst
  mode?
   Or is it just always sensible to use it if available?
  It is not absolutely necessary, as I mentioned above.
 
 The description above does not make this clear.
 
 
  
   What does the driver do if fixed burst mode is not available? Would
   this
  work in
   the presence of fixed-burt mode?
  Fixed burst mode is always available so driver doesn't need to care about
it.
 
  
   I'm not arguing to remove these properties. I'd just like to
   understand if
  all
   you're describing is the presence of a feature or that the use of
   the
  feature is
   absolutely 

Re: [PATCH V4 1/8] sxgbe: Add device-tree binding support document

2014-03-19 Thread Mark Rutland
On Tue, Mar 18, 2014 at 04:27:46PM +, Byungho An wrote:
 Mark Rutland mark.rutl...@arm.com :
  Hi,
  
  As a general note it's helpful for devicetree to be Cc'd on the entire
 series
  (though the binding document should be a separate patch) as it provides
 useful
  context for reviewing the binding.
 OK.
 
  
  On Tue, Mar 18, 2014 at 06:47:13AM +, Byungho An wrote:
   From: Siva Reddy siva.kal...@samsung.com
  
   This patch adds binding document for SXGBE ethernet driver via
 device-tree.
  
   Signed-off-by: Siva Reddy Kallam siva.kal...@samsung.com
   Signed-off-by: Byungho An bh74...@samsung.com
   ---
.../devicetree/bindings/net/samsung-sxgbe.txt  |   53
   
1 file changed, 53 insertions(+)
create mode 100644
   Documentation/devicetree/bindings/net/samsung-sxgbe.txt
  
   diff --git a/Documentation/devicetree/bindings/net/samsung-sxgbe.txt
   b/Documentation/devicetree/bindings/net/samsung-sxgbe.txt
   new file mode 100644
   index 000..ca27947
   --- /dev/null
   +++ b/Documentation/devicetree/bindings/net/samsung-sxgbe.txt
   @@ -0,0 +1,53 @@
   +* Samsung 10G Ethernet driver (SXGBE)
   +
   +Required properties:
   +- compatible: Should be samsung,sxgbe-v2.0a
   +- reg: Address and length of the register set for the device
   +- interrupt-parent: Should be the phandle for the interrupt
   +controller
   +  that services interrupts for this device
   +- interrupts: Should contain the SXGBE interrupts
   +  These interrupts are ordered by fixed and follows variable
   +  trasmit DMA interrupts, receive DMA interrupts and lpi interrupt.
   +  index 0 - this is fixed common interrupt of SXGBE and it is always
   +  available.
   +  index 1 to 25 - 8 variable trasmit interrupts, variable 16 receive
   interrupts
   +  and 1 optional lpi interrupt.
   +- phy-mode: String, operation mode of the PHY interface.
   +  Supported values are: xaui, gmii.
   +- samsung,pbl: Integer, Programmable Burst Length.
   +  Supported values are 1, 2, 4, 8, 16, or 32.
  
  There's no need to abbreviate to pbl.
  
  Is this a property of the hardware, or configuration that the kernel will
 program
  in? If the latter, why can the kernel not choose?
 Yes, this is hardware property

Ok.

 
  
   +- samsung,fixed-burst: Boolean, Program the DMA to use the fixed
   +burst mode
   +- samsung,burst-map: Integer, Program the possible bursts supported
   +by sxgbe
   +  This is an interger and represents allowable DMA bursts when fixed
 burst.
   +  Allowable range is 0x00-0x3F. This field is valid only when fixed
   +burst is
   +  enabled, otherwise ignored.
  
  If that's the case, why not have just this property and have it imply the
 use of
  fixed burst mode?
 OK. It will be implemented in next patch set.
 
  
  When is it necessary to use fixed burst mode?
 This is the configurable mode of DMA an used internally by hardware to fetch
 data from platform bus

Sure, but that doesn't describe when it is necessary. Is this the way
the DMA was configured at integration time, or the way the kernel should
configure it?

If the latter, is it absolutely necessary for correctness to use
fixed-burst mode? Or is it just always sensible to use it if available?

What does the driver do if fixed burst mode is not available? Would this
work in the presence of fixed-burt mode?

I'm not arguing to remove these properties. I'd just like to understand
if all you're describing is the presence of a feature or that the use of
the feature is absolutely necessary for correctness.

I'm perfectly happy for Linux to always decide to use these features if
available.

 
  
   +- samsung,adv-addr-mode: Boolean, Program the DMA to use Enhanced
   +address
   mode.
  
  When would this be selected, and why can the kernel not choose?
 Kernel doesn't have the provision to find out a way to select this. So, need
 to pass from DT

Likewise, it is always absolutely necessary, or just always sensible to
use enhanced address mode if present?

 
  
   +- samsung,force_thresh_dma_mode: Boolean, Force DMA to use the
   +threshold mode
   +  for both tx and rx
  
  s/_/-/ in property names.
 OK.
 
  
  Likewise, why can the kernel not choose.
 SXGBE h/w registers can't provide information to select this. So, need to pass
 from DT depend on Platform

Similarly.

 
  
   +- samsung,force_sf_dma_mode: Boolean, Force DMA to use the Store and
   +Forward
   +  mode for both tx and rx. This flag is ignored if
   +force_thresh_dma_mode is
   set.
  
  Likewise for both points.
 Same above.

And again.

Cheers,
Mark.
--
To unsubscribe from this list: send the line unsubscribe linux-samsung-soc in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


RE: [PATCH V4 1/8] sxgbe: Add device-tree binding support document

2014-03-19 Thread Byungho An
Mark Rutland mark.rutl...@arm.com :
 On Tue, Mar 18, 2014 at 04:27:46PM +, Byungho An wrote:
  Mark Rutland mark.rutl...@arm.com :
   Hi,
  
   As a general note it's helpful for devicetree to be Cc'd on the
   entire
  series
   (though the binding document should be a separate patch) as it
   provides
  useful
   context for reviewing the binding.
  OK.
 
  
   On Tue, Mar 18, 2014 at 06:47:13AM +, Byungho An wrote:
From: Siva Reddy siva.kal...@samsung.com
   
This patch adds binding document for SXGBE ethernet driver via
  device-tree.
   
Signed-off-by: Siva Reddy Kallam siva.kal...@samsung.com
Signed-off-by: Byungho An bh74...@samsung.com
---
 .../devicetree/bindings/net/samsung-sxgbe.txt  |   53

 1 file changed, 53 insertions(+)
 create mode 100644
Documentation/devicetree/bindings/net/samsung-sxgbe.txt
   
diff --git
a/Documentation/devicetree/bindings/net/samsung-sxgbe.txt
b/Documentation/devicetree/bindings/net/samsung-sxgbe.txt
new file mode 100644
index 000..ca27947
--- /dev/null
+++ b/Documentation/devicetree/bindings/net/samsung-sxgbe.txt
@@ -0,0 +1,53 @@
+* Samsung 10G Ethernet driver (SXGBE)
+
+Required properties:
+- compatible: Should be samsung,sxgbe-v2.0a
+- reg: Address and length of the register set for the device
+- interrupt-parent: Should be the phandle for the interrupt
+controller
+  that services interrupts for this device
+- interrupts: Should contain the SXGBE interrupts
+  These interrupts are ordered by fixed and follows variable
+  trasmit DMA interrupts, receive DMA interrupts and lpi interrupt.
+  index 0 - this is fixed common interrupt of SXGBE and it is
+always
+  available.
+  index 1 to 25 - 8 variable trasmit interrupts, variable 16
+receive
interrupts
+  and 1 optional lpi interrupt.
+- phy-mode: String, operation mode of the PHY interface.
+  Supported values are: xaui, gmii.
+- samsung,pbl: Integer, Programmable Burst Length.
+  Supported values are 1, 2, 4, 8, 16, or 32.
  
   There's no need to abbreviate to pbl.
  
   Is this a property of the hardware, or configuration that the kernel
   will
  program
   in? If the latter, why can the kernel not choose?
  Yes, this is hardware property
 
 Ok.
 
 
  
+- samsung,fixed-burst: Boolean, Program the DMA to use the fixed
+burst mode
+- samsung,burst-map: Integer, Program the possible bursts
+supported by sxgbe
+  This is an interger and represents allowable DMA bursts when
+fixed
  burst.
+  Allowable range is 0x00-0x3F. This field is valid only when
+fixed burst is
+  enabled, otherwise ignored.
  
   If that's the case, why not have just this property and have it
   imply the
  use of
   fixed burst mode?
  OK. It will be implemented in next patch set.
 
  
   When is it necessary to use fixed burst mode?
  This is the configurable mode of DMA an used internally by hardware to
  fetch data from platform bus
 
 Sure, but that doesn't describe when it is necessary. Is this the way the
DMA
 was configured at integration time, or the way the kernel should configure
it?
It is needed when fixed length of burst is needed. 
if it is not configured, the length of burst will be variable(not fixed).
Anyway, I'll add description more for it.

 
 If the latter, is it absolutely necessary for correctness to use fixed-burst
mode?
 Or is it just always sensible to use it if available? 
It is not absolutely necessary, as I mentioned above.

 
 What does the driver do if fixed burst mode is not available? Would this
work in
 the presence of fixed-burt mode?
Fixed burst mode is always available so driver doesn't need to care about it.

 
 I'm not arguing to remove these properties. I'd just like to understand if
all
 you're describing is the presence of a feature or that the use of the
feature is
 absolutely necessary for correctness.
OK

 
 I'm perfectly happy for Linux to always decide to use these features if
available.
 
 
  
+- samsung,adv-addr-mode: Boolean, Program the DMA to use Enhanced
+address
mode.
  
   When would this be selected, and why can the kernel not choose?
  Kernel doesn't have the provision to find out a way to select this.
  So, need to pass from DT
 
 Likewise, it is always absolutely necessary, or just always sensible to use
 enhanced address mode if present?
Not always necessary. When extended address mode is needed, it can be set in
the DT.

 
 
  
+- samsung,force_thresh_dma_mode: Boolean, Force DMA to use the
+threshold mode
+  for both tx and rx
  
   s/_/-/ in property names.
  OK.
 
  
   Likewise, why can the kernel not choose.
  SXGBE h/w registers can't provide information to select this. So, need
  to pass from DT depend on Platform
 
 Similarly.
Not always necessary. When threshold base DMA mode is needed it can be set.

 
 
  
+- 

Re: [PATCH V4 1/8] sxgbe: Add device-tree binding support document

2014-03-18 Thread Mark Rutland
Hi,

As a general note it's helpful for devicetree to be Cc'd on the entire
series (though the binding document should be a separate patch) as it
provides useful context for reviewing the binding.

On Tue, Mar 18, 2014 at 06:47:13AM +, Byungho An wrote:
 From: Siva Reddy siva.kal...@samsung.com
 
 This patch adds binding document for SXGBE ethernet driver via device-tree.
 
 Signed-off-by: Siva Reddy Kallam siva.kal...@samsung.com
 Signed-off-by: Byungho An bh74...@samsung.com
 ---
  .../devicetree/bindings/net/samsung-sxgbe.txt  |   53
 
  1 file changed, 53 insertions(+)
  create mode 100644 Documentation/devicetree/bindings/net/samsung-sxgbe.txt
 
 diff --git a/Documentation/devicetree/bindings/net/samsung-sxgbe.txt
 b/Documentation/devicetree/bindings/net/samsung-sxgbe.txt
 new file mode 100644
 index 000..ca27947
 --- /dev/null
 +++ b/Documentation/devicetree/bindings/net/samsung-sxgbe.txt
 @@ -0,0 +1,53 @@
 +* Samsung 10G Ethernet driver (SXGBE)
 +
 +Required properties:
 +- compatible: Should be samsung,sxgbe-v2.0a
 +- reg: Address and length of the register set for the device
 +- interrupt-parent: Should be the phandle for the interrupt controller
 +  that services interrupts for this device
 +- interrupts: Should contain the SXGBE interrupts
 +  These interrupts are ordered by fixed and follows variable
 +  trasmit DMA interrupts, receive DMA interrupts and lpi interrupt.
 +  index 0 - this is fixed common interrupt of SXGBE and it is always
 +  available.
 +  index 1 to 25 - 8 variable trasmit interrupts, variable 16 receive
 interrupts
 +  and 1 optional lpi interrupt.
 +- phy-mode: String, operation mode of the PHY interface.
 +  Supported values are: xaui, gmii.
 +- samsung,pbl: Integer, Programmable Burst Length.
 +  Supported values are 1, 2, 4, 8, 16, or 32.

There's no need to abbreviate to pbl.

Is this a property of the hardware, or configuration that the kernel
will program in? If the latter, why can the kernel not choose?

 +- samsung,fixed-burst: Boolean, Program the DMA to use the fixed burst mode
 +- samsung,burst-map: Integer, Program the possible bursts supported by sxgbe
 +  This is an interger and represents allowable DMA bursts when fixed burst.
 +  Allowable range is 0x00-0x3F. This field is valid only when fixed burst is
 +  enabled, otherwise ignored.

If that's the case, why not have just this property and have it imply
the use of fixed burst mode?

When is it necessary to use fixed burst mode?

 +- samsung,adv-addr-mode: Boolean, Program the DMA to use Enhanced address
 mode.

When would this be selected, and why can the kernel not choose?

 +- samsung,force_thresh_dma_mode: Boolean, Force DMA to use the threshold mode
 +  for both tx and rx

s/_/-/ in property names.

Likewise, why can the kernel not choose.

 +- samsung,force_sf_dma_mode: Boolean, Force DMA to use the Store and Forward
 +  mode for both tx and rx. This flag is ignored if force_thresh_dma_mode is
 set.

Likewise for both points.

 +- samsung,phy-addr: Integer, Address of the PHY attached with SXGBE.

Some of these properties appear to be missing from the example. Are they
required or optional?

Thanks,
Mark.

 +
 +Optional properties:
 +- mac-address: 6 bytes, mac address
 +
 +Example:
 +
 + aliases {
 + ethernet0 = sxgbe0;
 + };
 +
 + sxgbe0: ethernet@1a04 {
 + compatible = samsung,sxgbe-v2.0a;
 + reg = 0 0x1a04 0 0x1;
 + interrupt-parent = gic;
 + interrupts = 0 209 4, 0 185 4, 0 186 4, 0 187 4,
 +  0 188 4, 0 189 4, 0 190 4, 0 191 4,
 +  0 192 4, 0 193 4, 0 194 4, 0 195 4,
 +  0 196 4, 0 197 4, 0 198 4, 0 199 4,
 +  0 200 4, 0 201 4, 0 202 4, 0 203 4,
 +  0 204 4, 0 205 4, 0 206 4, 0 207 4,
 +  0 208 4, 0 210 4;
 + mac-address = []; /* Filled in by U-Boot */
 + phy-mode = xaui;
 + };
 -- 
 1.7.10.4
 
 
 --
 To unsubscribe from this list: send the line unsubscribe devicetree in
 the body of a message to majord...@vger.kernel.org
 More majordomo info at  http://vger.kernel.org/majordomo-info.html
 
--
To unsubscribe from this list: send the line unsubscribe linux-samsung-soc in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


RE: [PATCH V4 1/8] sxgbe: Add device-tree binding support document

2014-03-18 Thread Byungho An
Mark Rutland mark.rutl...@arm.com :
 Hi,
 
 As a general note it's helpful for devicetree to be Cc'd on the entire
series
 (though the binding document should be a separate patch) as it provides
useful
 context for reviewing the binding.
OK.

 
 On Tue, Mar 18, 2014 at 06:47:13AM +, Byungho An wrote:
  From: Siva Reddy siva.kal...@samsung.com
 
  This patch adds binding document for SXGBE ethernet driver via
device-tree.
 
  Signed-off-by: Siva Reddy Kallam siva.kal...@samsung.com
  Signed-off-by: Byungho An bh74...@samsung.com
  ---
   .../devicetree/bindings/net/samsung-sxgbe.txt  |   53
  
   1 file changed, 53 insertions(+)
   create mode 100644
  Documentation/devicetree/bindings/net/samsung-sxgbe.txt
 
  diff --git a/Documentation/devicetree/bindings/net/samsung-sxgbe.txt
  b/Documentation/devicetree/bindings/net/samsung-sxgbe.txt
  new file mode 100644
  index 000..ca27947
  --- /dev/null
  +++ b/Documentation/devicetree/bindings/net/samsung-sxgbe.txt
  @@ -0,0 +1,53 @@
  +* Samsung 10G Ethernet driver (SXGBE)
  +
  +Required properties:
  +- compatible: Should be samsung,sxgbe-v2.0a
  +- reg: Address and length of the register set for the device
  +- interrupt-parent: Should be the phandle for the interrupt
  +controller
  +  that services interrupts for this device
  +- interrupts: Should contain the SXGBE interrupts
  +  These interrupts are ordered by fixed and follows variable
  +  trasmit DMA interrupts, receive DMA interrupts and lpi interrupt.
  +  index 0 - this is fixed common interrupt of SXGBE and it is always
  +  available.
  +  index 1 to 25 - 8 variable trasmit interrupts, variable 16 receive
  interrupts
  +  and 1 optional lpi interrupt.
  +- phy-mode: String, operation mode of the PHY interface.
  +  Supported values are: xaui, gmii.
  +- samsung,pbl: Integer, Programmable Burst Length.
  +  Supported values are 1, 2, 4, 8, 16, or 32.
 
 There's no need to abbreviate to pbl.
 
 Is this a property of the hardware, or configuration that the kernel will
program
 in? If the latter, why can the kernel not choose?
Yes, this is hardware property

 
  +- samsung,fixed-burst: Boolean, Program the DMA to use the fixed
  +burst mode
  +- samsung,burst-map: Integer, Program the possible bursts supported
  +by sxgbe
  +  This is an interger and represents allowable DMA bursts when fixed
burst.
  +  Allowable range is 0x00-0x3F. This field is valid only when fixed
  +burst is
  +  enabled, otherwise ignored.
 
 If that's the case, why not have just this property and have it imply the
use of
 fixed burst mode?
OK. It will be implemented in next patch set.

 
 When is it necessary to use fixed burst mode?
This is the configurable mode of DMA an used internally by hardware to fetch
data from platform bus

 
  +- samsung,adv-addr-mode: Boolean, Program the DMA to use Enhanced
  +address
  mode.
 
 When would this be selected, and why can the kernel not choose?
Kernel doesn't have the provision to find out a way to select this. So, need
to pass from DT

 
  +- samsung,force_thresh_dma_mode: Boolean, Force DMA to use the
  +threshold mode
  +  for both tx and rx
 
 s/_/-/ in property names.
OK.

 
 Likewise, why can the kernel not choose.
SXGBE h/w registers can't provide information to select this. So, need to pass
from DT depend on Platform

 
  +- samsung,force_sf_dma_mode: Boolean, Force DMA to use the Store and
  +Forward
  +  mode for both tx and rx. This flag is ignored if
  +force_thresh_dma_mode is
  set.
 
 Likewise for both points.
Same above.

 
  +- samsung,phy-addr: Integer, Address of the PHY attached with SXGBE.
 
 Some of these properties appear to be missing from the example. Are they
 required or optional?
Those are optional depend on platform configuration.

 
 Thanks,
 Mark.
 
  +
  +Optional properties:
  +- mac-address: 6 bytes, mac address
  +
  +Example:
  +
  +   aliases {
  +   ethernet0 = sxgbe0;
  +   };
  +
  +   sxgbe0: ethernet@1a04 {
  +   compatible = samsung,sxgbe-v2.0a;
  +   reg = 0 0x1a04 0 0x1;
  +   interrupt-parent = gic;
  +   interrupts = 0 209 4, 0 185 4, 0 186 4, 0 187 4,
  +0 188 4, 0 189 4, 0 190 4, 0 191 4,
  +0 192 4, 0 193 4, 0 194 4, 0 195 4,
  +0 196 4, 0 197 4, 0 198 4, 0 199 4,
  +0 200 4, 0 201 4, 0 202 4, 0 203 4,
  +0 204 4, 0 205 4, 0 206 4, 0 207 4,
  +0 208 4, 0 210 4;
  +   mac-address = []; /* Filled in by U-Boot */
  +   phy-mode = xaui;
  +   };
  --
  1.7.10.4
 
 
  --
  To unsubscribe from this list: send the line unsubscribe devicetree
  in the body of a message to majord...@vger.kernel.org More majordomo
  info at  http://vger.kernel.org/majordomo-info.html
 

--
To unsubscribe from this list: send the line unsubscribe linux-samsung-soc in
the body of a message to