diff options
| author | Felipe Balbi <balbi@ti.com> | 2011-09-30 03:58:49 -0400 |
|---|---|---|
| committer | Greg Kroah-Hartman <gregkh@suse.de> | 2011-10-04 13:25:55 -0400 |
| commit | 26ceca9750260997ab82bb84dac122de1e441658 (patch) | |
| tree | c76713b8ba06a9f24a7ca3124200eaad54d44d0b | |
| parent | a32994998c2ffa161159b79bb68e683e2746c330 (diff) | |
usb: dwc3: core: cache GHWPARAMS* registers
cache the contents of GHWPARAMS* registers in
our device structure for easy access.
Signed-off-by: Felipe Balbi <balbi@ti.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
| -rw-r--r-- | drivers/usb/dwc3/core.c | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/drivers/usb/dwc3/core.c b/drivers/usb/dwc3/core.c index cfb074548124..d35f90527c38 100644 --- a/drivers/usb/dwc3/core.c +++ b/drivers/usb/dwc3/core.c | |||
| @@ -229,6 +229,21 @@ static void dwc3_event_buffers_cleanup(struct dwc3 *dwc) | |||
| 229 | } | 229 | } |
| 230 | } | 230 | } |
| 231 | 231 | ||
| 232 | static void __devinit dwc3_cache_hwparams(struct dwc3 *dwc) | ||
| 233 | { | ||
| 234 | struct dwc3_hwparams *parms = &dwc->hwparams; | ||
| 235 | |||
| 236 | parms->hwparams0 = dwc3_readl(dwc->regs, DWC3_GHWPARAMS0); | ||
| 237 | parms->hwparams1 = dwc3_readl(dwc->regs, DWC3_GHWPARAMS1); | ||
| 238 | parms->hwparams2 = dwc3_readl(dwc->regs, DWC3_GHWPARAMS2); | ||
| 239 | parms->hwparams3 = dwc3_readl(dwc->regs, DWC3_GHWPARAMS3); | ||
| 240 | parms->hwparams4 = dwc3_readl(dwc->regs, DWC3_GHWPARAMS4); | ||
| 241 | parms->hwparams5 = dwc3_readl(dwc->regs, DWC3_GHWPARAMS5); | ||
| 242 | parms->hwparams6 = dwc3_readl(dwc->regs, DWC3_GHWPARAMS6); | ||
| 243 | parms->hwparams7 = dwc3_readl(dwc->regs, DWC3_GHWPARAMS7); | ||
| 244 | parms->hwparams8 = dwc3_readl(dwc->regs, DWC3_GHWPARAMS8); | ||
| 245 | } | ||
| 246 | |||
| 232 | /** | 247 | /** |
| 233 | * dwc3_core_init - Low-level initialization of DWC3 Core | 248 | * dwc3_core_init - Low-level initialization of DWC3 Core |
| 234 | * @dwc: Pointer to our controller context structure | 249 | * @dwc: Pointer to our controller context structure |
| @@ -283,6 +298,8 @@ static int __devinit dwc3_core_init(struct dwc3 *dwc) | |||
| 283 | goto err1; | 298 | goto err1; |
| 284 | } | 299 | } |
| 285 | 300 | ||
| 301 | dwc3_cache_hwparams(dwc); | ||
| 302 | |||
| 286 | return 0; | 303 | return 0; |
| 287 | 304 | ||
| 288 | err1: | 305 | err1: |
