mirror of
https://github.com/brain-hackers/u-boot-brain
synced 2024-08-19 08:28:51 +09:00
![Tom Rini](/assets/img/avatar_default.png)
When U-Boot started using SPDX tags we were among the early adopters and there weren't a lot of other examples to borrow from. So we picked the area of the file that usually had a full license text and replaced it with an appropriate SPDX-License-Identifier: entry. Since then, the Linux Kernel has adopted SPDX tags and they place it as the very first line in a file (except where shebangs are used, then it's second line) and with slightly different comment styles than us. In part due to community overlap, in part due to better tag visibility and in part for other minor reasons, switch over to that style. This commit changes all instances where we have a single declared license in the tag as both the before and after are identical in tag contents. There's also a few places where I found we did not have a tag and have introduced one. Signed-off-by: Tom Rini <trini@konsulko.com>
192 lines
4.6 KiB
C
192 lines
4.6 KiB
C
/* SPDX-License-Identifier: GPL-2.0+ */
|
|
/*
|
|
* Copyright (C) 2011 Renesas Solutions Corp.
|
|
*/
|
|
|
|
#ifndef _ASM_CPU_SH7757_H_
|
|
#define _ASM_CPU_SH7757_H_
|
|
|
|
#define CCR 0xFF00001C
|
|
#define WTCNT 0xFFCC0000
|
|
#define CCR_CACHE_INIT 0x0000090b
|
|
#define CACHE_OC_NUM_WAYS 1
|
|
|
|
#ifndef __ASSEMBLY__ /* put C only stuff in this section */
|
|
/* MMU */
|
|
struct mmu_regs {
|
|
unsigned int reserved[4];
|
|
unsigned int mmucr;
|
|
};
|
|
#define MMU_BASE ((struct mmu_regs *)0xff000000)
|
|
|
|
/* Watchdog */
|
|
#define WTCSR0 0xffcc0002
|
|
#define WRSTCSR_R 0xffcc0003
|
|
#define WRSTCSR_W 0xffcc0002
|
|
#define WTCSR_PREFIX 0xa500
|
|
#define WRSTCSR_PREFIX 0x6900
|
|
#define WRSTCSR_WOVF_PREFIX 0x9600
|
|
|
|
/* SCIF */
|
|
#define SCIF0_BASE 0xfe4b0000 /* The real name is SCIF2 */
|
|
#define SCIF1_BASE 0xfe4c0000 /* The real name is SCIF3 */
|
|
#define SCIF2_BASE 0xfe4d0000 /* The real name is SCIF4 */
|
|
|
|
/* SerMux */
|
|
#define SMR0 0xfe470000
|
|
|
|
/* TMU0 */
|
|
#define TMU_BASE 0xFE430000
|
|
|
|
/* ETHER, GETHER MAC address */
|
|
struct ether_mac_regs {
|
|
unsigned int reserved[114];
|
|
unsigned int mahr;
|
|
unsigned int reserved2;
|
|
unsigned int malr;
|
|
};
|
|
#define GETHER0_MAC_BASE ((struct ether_mac_regs *)0xfee0400)
|
|
#define GETHER1_MAC_BASE ((struct ether_mac_regs *)0xfee0c00)
|
|
#define ETHER0_MAC_BASE ((struct ether_mac_regs *)0xfef0000)
|
|
#define ETHER1_MAC_BASE ((struct ether_mac_regs *)0xfef0800)
|
|
|
|
/* GETHER */
|
|
struct gether_control_regs {
|
|
unsigned int gbecont;
|
|
};
|
|
#define GETHER_CONTROL_BASE ((struct gether_control_regs *)0xffc10100)
|
|
#define GBECONT_RMII1 0x00020000
|
|
#define GBECONT_RMII0 0x00010000
|
|
|
|
/* USB0/1 */
|
|
struct usb_common_regs {
|
|
unsigned short reserved[129];
|
|
unsigned short suspmode;
|
|
};
|
|
#define USB0_COMMON_BASE ((struct usb_common_regs *)0xfe450000)
|
|
#define USB1_COMMON_BASE ((struct usb_common_regs *)0xfe4f0000)
|
|
|
|
struct usb0_phy_regs {
|
|
unsigned short reset;
|
|
unsigned short reserved[4];
|
|
unsigned short portsel;
|
|
};
|
|
#define USB0_PHY_BASE ((struct usb0_phy_regs *)0xfe5f0000)
|
|
|
|
struct usb1_port_regs {
|
|
unsigned int port1sel;
|
|
unsigned int reserved;
|
|
unsigned int usb1intsts;
|
|
};
|
|
#define USB1_PORT_BASE ((struct usb1_port_regs *)0xfe4f2000)
|
|
|
|
struct usb1_alignment_regs {
|
|
unsigned int ehcidatac; /* 0xfe4fe018 */
|
|
unsigned int reserved[63];
|
|
unsigned int ohcidatac;
|
|
};
|
|
#define USB1_ALIGNMENT_BASE ((struct usb1_alignment_regs *)0xfe4fe018)
|
|
|
|
/* GCTRL, GRA */
|
|
struct gctrl_regs {
|
|
unsigned int wprotect;
|
|
unsigned int gplldiv;
|
|
unsigned int gracr2; /* GRA */
|
|
unsigned int gracr3; /* GRA */
|
|
unsigned int reserved[4];
|
|
unsigned int fcntcr1;
|
|
unsigned int fcntcr2;
|
|
unsigned int reserved2[2];
|
|
unsigned int gpll1div;
|
|
unsigned int vcompsel;
|
|
unsigned int reserved3[62];
|
|
unsigned int fdlmon;
|
|
unsigned int reserved4[2];
|
|
unsigned int flcrmon;
|
|
unsigned int reserved5[944];
|
|
unsigned int spibootcan;
|
|
};
|
|
#define GCTRL_BASE ((struct gctrl_regs *)0xffc10000)
|
|
|
|
/* PCIe setup */
|
|
struct pcie_setup_regs {
|
|
unsigned int pbictl0;
|
|
unsigned int gradevctl;
|
|
unsigned int reserved[2];
|
|
unsigned int bmcinf[6];
|
|
unsigned int reserved2[118];
|
|
unsigned int idset[2];
|
|
unsigned int subidset;
|
|
unsigned int reserved3[2];
|
|
unsigned int linkconfset[4];
|
|
unsigned int trsid;
|
|
unsigned int reserved4[6];
|
|
unsigned int toutset;
|
|
unsigned int reserved5[7];
|
|
unsigned int lad0;
|
|
unsigned int ladmsk0;
|
|
unsigned int lad1;
|
|
unsigned int ladmsk1;
|
|
unsigned int lad2;
|
|
unsigned int ladmsk2;
|
|
unsigned int lad3;
|
|
unsigned int ladmsk3;
|
|
unsigned int lad4;
|
|
unsigned int ladmsk4;
|
|
unsigned int lad5;
|
|
unsigned int ladmsk5;
|
|
unsigned int reserved6[94];
|
|
unsigned int vdmrxvid[2];
|
|
unsigned int reserved7;
|
|
unsigned int pbiintfr;
|
|
unsigned int pbiinten;
|
|
unsigned int msimap;
|
|
unsigned int barmap;
|
|
unsigned int baracsize;
|
|
unsigned int advserest;
|
|
unsigned int pbictl3;
|
|
unsigned int reserved8[8];
|
|
unsigned int pbictl1;
|
|
unsigned int scratch0;
|
|
unsigned int reserved9[6];
|
|
unsigned int pbictl2;
|
|
unsigned int reserved10;
|
|
unsigned int pbirev;
|
|
};
|
|
#define PCIE_SETUP_BASE ((struct pcie_setup_regs *)0xffca1000)
|
|
|
|
struct pcie_system_bus_regs {
|
|
unsigned int reserved[3];
|
|
unsigned int endictl0;
|
|
unsigned int endictl1;
|
|
};
|
|
#define PCIE_SYSTEM_BUS_BASE ((struct pcie_system_bus_regs *)0xffca1600)
|
|
|
|
|
|
/* PCIe-Bridge */
|
|
struct pciebrg_regs {
|
|
unsigned short ctrl_h8s;
|
|
unsigned short reserved[7];
|
|
unsigned short cp_addr;
|
|
unsigned short reserved2;
|
|
unsigned short cp_data;
|
|
unsigned short reserved3;
|
|
unsigned short cp_ctrl;
|
|
};
|
|
#define PCIEBRG_BASE ((struct pciebrg_regs *)0xffd60000)
|
|
|
|
/* CPU version */
|
|
#define CCN_PRR 0xff000044
|
|
#define prr_mask(_val) ((_val >> 4) & 0xff)
|
|
#define PRR_SH7757_B0 0x10
|
|
#define PRR_SH7757_C0 0x11
|
|
|
|
#define is_sh7757_b0(_val) \
|
|
({ \
|
|
int __ret = prr_mask(__raw_readl(CCN_PRR)) == PRR_SH7757_B0; \
|
|
__ret; \
|
|
})
|
|
#endif /* ifndef __ASSEMBLY__ */
|
|
|
|
#endif /* _ASM_CPU_SH7757_H_ */
|