blob: 696e4793760ba6d83cd1639654a4404496992e8c [file] [log] [blame]
Amol Jadi42d7b5a2012-05-04 14:50:32 -07001/*
2 * Copyright (c) 2012, Code Aurora Forum. All rights reserved.
3 *
4 * Redistribution and use in source and binary forms, with or without
5 * modification, are permitted provided that the following conditions are
6 * met:
7 * * Redistributions of source code must retain the above copyright
8 * notice, this list of conditions and the following disclaimer.
9 * * Redistributions in binary form must reproduce the above
10 * copyright notice, this list of conditions and the following
11 * disclaimer in the documentation and/or other materials provided
12 * with the distribution.
13 * * Neither the name of Code Aurora Forum, Inc. nor the names of its
14 * contributors may be used to endorse or promote products derived
15 * from this software without specific prior written permission.
16 *
17 * THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED
18 * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
19 * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT
20 * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS
21 * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
22 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
23 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
24 * BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
25 * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
26 * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
27 * IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
28 */
29#include <debug.h>
30#include <board.h>
31#include <platform.h>
32#include <target.h>
33#include <smem.h>
34#include <baseband.h>
35
36/* init */
37void target_init(void)
38{
39 dprintf(INFO, "target_init()\n");
40}
41
42/* reboot */
43void reboot_device(unsigned reboot_reason)
44{
45 dprintf(CRITICAL, "Rebooting failed\n");
46 return;
47}
48
49/* Check if we need to trigger fastboot */
50int fastboot_trigger(void)
51{
52 return 0;
53}
54
55/* Create ATAGs for this target */
56unsigned* target_atag_mem(unsigned* ptr)
57{
58 return ptr;
59}
60
61/* mach type */
62unsigned board_machtype(void)
63{
64 return board_target_id();
65}
66
67/* Identify the current target */
68void target_detect(struct board_data *board)
69{
70 switch(board->platform_hw)
71 {
72 case HW_PLATFORM_SURF:
73 board->target = LINUX_MACHTYPE_9625_CDP;
74 break;
75
76 case HW_PLATFORM_MTP:
77 board->target = LINUX_MACHTYPE_9625_MTP;
78 break;
79
80 default:
81 board->target = LINUX_MACHTYPE_9625_CDP;
82 }
83}
84
85/* Identify the baseband being used */
86void target_baseband_detect(struct board_data *board)
87{
88 if (board->platform_subtype == HW_PLATFORM_SUBTYPE_MDM)
89 {
90 board->baseband = BASEBAND_MDM;
91 }
92 else
93 {
94 /* This target will always have MDM. If not, assert. */
95 ASSERT(0);
96 }
97}