On Thu, Nov 29, 2007 at 06:35:55PM +0300, Andrei Dolnikov wrote: Hi Andrei. I have a few comments below.
> This patch adds new functionality to MV64x60 boot code. The changes are > required > to access DevCS windows registers and set PCI bus and devfn numbers for > MV644x60 > PCI/PCI-X interfaces. > > Signed-off-by: Andrei Dolnikov <[EMAIL PROTECTED]> > > --- > mv64x60.c | 74 > ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ > mv64x60.h | 10 ++++++++ > 2 files changed, 84 insertions(+) > > diff --git a/arch/powerpc/boot/mv64x60.c b/arch/powerpc/boot/mv64x60.c > index d207a0b..787a124 100644 > --- a/arch/powerpc/boot/mv64x60.c > +++ b/arch/powerpc/boot/mv64x60.c > @@ -32,6 +32,16 @@ > #define MV64x60_CPU2MEM_3_BASE 0x0218 > #define MV64x60_CPU2MEM_3_SIZE 0x0220 > > +#define MV64x60_DEV2MEM_WINDOWS 4 > +#define MV64x60_DEV2MEM_0_BASE 0x0028 > +#define MV64x60_DEV2MEM_0_SIZE 0x0030 > +#define MV64x60_DEV2MEM_1_BASE 0x0228 > +#define MV64x60_DEV2MEM_1_SIZE 0x0230 > +#define MV64x60_DEV2MEM_2_BASE 0x0248 > +#define MV64x60_DEV2MEM_2_SIZE 0x0250 > +#define MV64x60_DEV2MEM_3_BASE 0x0038 > +#define MV64x60_DEV2MEM_3_SIZE 0x0040 > + These aren't device->memory windows, they're CPU->device windows so they should be named MV64x60_CPU2DEV_xxx to be consistent with the previously established naming convention. > #define MV64x60_ENET2MEM_BAR_ENABLE 0x2290 > #define MV64x60_ENET2MEM_0_BASE 0x2200 > #define MV64x60_ENET2MEM_0_SIZE 0x2204 > @@ -219,6 +229,25 @@ static struct mv64x60_mem_win > mv64x60_cpu2mem[MV64x60_CPU2MEM_WINDOWS] = { > }, > }; > > +static struct mv64x60_mem_win mv64x60_devcs[MV64x60_DEV2MEM_WINDOWS] = { Why not call this mv64x60_cpu2dev[]? <snip> > @@ -586,6 +645,21 @@ u32 mv64x60_get_mem_size(u8 *bridge_base) > return mem; > } > > +/* Read a size of DEV_CS window */ > +u32 mv64x60_get_devcs_size(u8 *bridge_base, u32 devcs) u32 mv64x60_get_cpu2dev_size(...) <snip> > diff --git a/arch/powerpc/boot/mv64x60.h b/arch/powerpc/boot/mv64x60.h > index d0b29a7..a633d2e 100644 > --- a/arch/powerpc/boot/mv64x60.h > +++ b/arch/powerpc/boot/mv64x60.h > @@ -12,6 +12,14 @@ > > #define MV64x60_CPU_BAR_ENABLE 0x0278 > > +#define MV64x60_PCI0_MODE 0x0d00 > +#define MV64x60_PCI1_MODE 0x0d80 > +#define MV64x60_PCI0_P2P_CONF 0x1d14 > +#define MV64x60_PCI1_P2P_CONF 0x1d94 > + > +#define MV64x60_PCI_MODE_MASK 0x00000030 > +#define MV64x60_PCI_CONVENTIONAL_MODE 0x00000000 > + AFAICS these macros are only used in mv64x60.c so just put them there. They only need to go in mv64x60.h if they're used in more than one .c file. Mark _______________________________________________ Linuxppc-dev mailing list Linuxppc-dev@ozlabs.org https://ozlabs.org/mailman/listinfo/linuxppc-dev